加入收藏 | 设为首页 | 会员中心 | 我要投稿 拼字网 - 核心网 (https://www.hexinwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

Linux之磁盘管理及文件系统管理

发布时间:2022-10-26 13:32:11 所属栏目:Linux 来源:网络
导读: 存储设备----U盘、光盘、软盘、硬件、磁带、硬盘
目前硬盘比较普遍的有机械式硬盘(HDD)、固态硬盘(SSD)、混合硬盘(HHD)。按数据的接口类型,又分类IDE、STAT、SCSI、USB。
磁盘由众多盘片构

存储设备----U盘、光盘、软盘、硬件、磁带、硬盘

目前硬盘比较普遍的有机械式硬盘(HDD)、固态硬盘(SSD)、混合硬盘(HHD)。按数据的接口类型,又分类IDE、STAT、SCSI、USB。

磁盘由众多盘片构成,将磁粉溅镀到基板上就形成了盘片,基板要求极高,不可有任何瑕疵。磁粉通过N\S磁极来表示0和1,这个数据需要磁头来读取和写入。磁头在读取数据时不与盘片接触,但是又要越近越好,因为太远无法感应到磁粉的极性,这个距离现在已经可以做到人类头发丝的千分之一了,真是足够精密了!盘片有电机带动做高速旋转,通常听见的7200转/分,就是指盘片每分钟转过的圈数,这样磁头就相对盘片做圆周运动,也就能够按磁道来读取数据。除此之外,磁头的机械臂还由步进电机控制,沿盘片半径做直线运动,以读取不同磁道的数据。一块磁盘拥有多个盘片,每个盘片的上下面都可以读写数据,而且每个盘面都有对应的磁头读写。例如Linux 磁盘管理,如果一块磁盘有4个盘面,那么磁头就有8个,分别编号0-7。虽然有多个磁头在工作,但是同一时刻只能有一个磁头在读写数据。 在整个数据的读取过程中,机械臂的移动称为寻道,寻道的时间和盘片旋转的时间远大于半导体电路的数据传输时间,是阻碍磁盘读写性能的最大因素。

机械硬盘的物理结构:

Linux 磁盘管理_linux用户的磁盘配额_怎样查看linux系统数据库所在磁盘空间不足

MBR----我们将包含MBR引导代码的扇区称为主引导扇区。因这一扇区中,引导代码占有绝大部分的空间,故而将习惯将该扇区称为MBR扇区(简称MBR)。由于这一扇区承担有不同于磁盘上其他普通存储空间的特殊管理职能,作为管理整个磁盘空间的一个特殊空间,它不属于磁盘上的任何分区,因而分区空间内的格式化命令不能清除主引导记录的任何信息。主引导扇区由三个部分组成(共占用512个字节)

2bytes:Magic Number(标记MBR是否有效)

硬链接与软件链接

Linux 磁盘管理_linux用户的磁盘配额_怎样查看linux系统数据库所在磁盘空间不足

硬链接只能作用于文件,不能对目录进入硬链接,且不能跨文件系统,而软件软链接则可以。

创建链接的命令ln

[root@shitouji shell]# ln test.sh abc #创建硬链接

[root@shitouji shell]# ls -i

655375 abc 655386 log 1314251 test 655375 test.sh 658767 word 938509 xiti

ln -s 用于创建软件链接

设备文件分为字符设备和块设备

字符设备:以字符为单位,线性设备,是一个顺序流的设备,如终端、磁带机。

块设备:以块为单位,这里的块一般是逻辑块,随机存储

磁盘格式化----低级格式化和高级格式化。低级格式化一般由厂商出厂时进行格式化,低级格式化速度较慢,它会重新划分扇区,写入引导程序建立分区机制;高级格式化是用来建分区,创建文件系统。以ext2为例,

Linux 磁盘管理_linux用户的磁盘配额_怎样查看linux系统数据库所在磁盘空间不足

linux用户的磁盘配额_怎样查看linux系统数据库所在磁盘空间不足_Linux 磁盘管理

ext2最大支持16T的分区,2T的文件,

ext3最大支持16T的分区,2T的文件,但分区的时候,在数据区和元数据区上多了个日志功能区

ext4最大支持1EB的分区,16TB的文件,且做了很大的改变。为增加新的信息,大小由EXT3的128字节增加到默认的256字节,同时inode寻址索引不再使用EXT3的"12个直接寻址块+1个一级间接寻址块+1个二级间接寻址块+1个三级间接寻址块"的索引模式,而改为4个Extent片断流,每个片断流设定片断的起始block号及连续的block数量(有可能直接指向数据区,也有可能指向索引块区)。

xfs,单个磁盘支持128分区,最大支持8EB,最大分区128EB。XFS是一个64位文件系统,最大支持 8exbibytes 减1字节的单个文件系统,实际部署时取决于宿主操作系统的最大块限制。

分配组是XFS抽象程度最高的概念。XFS文件系统内部被分为多个“分配组”,它们是文件系统中的等长线性存储区。每个分配组各自管理自己的inode和剩余空间。文件和文件夹可以跨越分配组。这一机制为XFS提供了可伸缩性和并行特性——多个线程和进程可以同时在同一个文件系统上并行执行I/O操作。这种由分配组带来的内部分区机制在一个文件系统跨越多个物理设备时特别有用,使得优化对下级存储部件的吞吐量利用率成为可能。

在一个磁盘上创建XFS文件系统之后,磁盘会被格式化成如下格式:

怎样查看linux系统数据库所在磁盘空间不足_Linux 磁盘管理_linux用户的磁盘配额

在CentOS7上默认的是创建4个AG。每个AG都相当于是1个独立的文件系统,维护着自己的free space以及inode,其主要包括以下信息:

结构如下:

Linux 磁盘管理_怎样查看linux系统数据库所在磁盘空间不足_linux用户的磁盘配额

解析上面的图,发现一个AG可以分为5个部分:

1) 第一个区(共1个block):全局信息描述区,包括:superblock、free space描述(AGF)、inode信息描述(AGI)、预留free space信息描述(AGFL)。每一部分都对应一个结构,用于描述其整体信息。

2) 第二个区(共3个block):B+树根节点描述区,包括:inode对应的B+树的根节点(通过AGI中对应字段指向)、管理free space对应的两颗B+树的根节点(AGF中对应的字段指向),这两颗B+树的索引key不同,一个以block number为key,一个以block count为key。

3) 第三个区(共4个block):存放预留freespace节点数据的区域,由AGFL中对应的字段指向。

4) 第四个区:存放inode树型节点的区域。

5) 第五个区:存放文件系统具体数据和元数据的区域。

所以从整个结构来看,核心的结构为superblock、AGF以及AGF中指向的管理freespace的B+树、AGI以及AGI所包含的inode的B+树以及AGFL和其对应的B+树。

(编辑:拼字网 - 核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!