六、磁盘划分与磁盘配额
目录
- 1、磁盘划分
- 1.1、什么是磁盘
- 1.2、机械硬盘的结构与关键概念
- 1.3、思考:为什么新买一个1T硬盘,使用时发现可使用容量低于1T
- 1.4、Linux中inode和block
- 1.5、查看超级快信息
- 1.6、磁盘分区与挂载
- 1.6.1、分区工具fdisk与格式化
- 1.6.2、分区工具gdisk与格式化
- 1.7、查看磁盘使用情况
- 1.7.1、df命令
- 1.7.2du命令
- 2、磁盘配额
1、磁盘划分
1.1、什么是磁盘
磁盘是一种数据存储设备,用于保存和检索数字数据。它通过一个或多个旋转的圆盘(磁性或光学的)来存储数据,数据通过磁头(在磁性磁盘中)或光头(在光学磁盘中)进行读写。磁盘可以是可移动的或固定在计算机内部的,并且根据存储技术的不同,磁盘可以分为几种类型:
硬盘驱动器(HDD)
硬盘驱动器使用磁性存储来记录和存储数据。它们包含一个或多个旋转盘片,这些盘片被涂有磁性材料,并通过移动磁头来读写数据。硬盘驱动器以其较大的存储容量和较低的成本而闻名,但与固态驱动器(SSD)相比,它们的访问速度较慢。
固态驱动器(SSD)
固态驱动器不包含移动部件,而是使用闪存(一种非易失性存储芯片)来存储数据。SSD提供比HDD更快的数据访问速度,更高的可靠性和耐用性,但每GB的成本通常更高。
光盘驱动器(CD/DVD/Blu-ray)
光盘驱动器使用激光技术在光盘上读写数据。这些磁盘可以是只读的(CD-ROM、DVD-ROM)、一次性写入的(CD-R、DVD-R)或可擦写重写的(CD-RW、DVD-RW、BD-RE)。光盘主要用于分发媒体内容、软件安装以及备份和存储个人数据。
混合硬盘(SSHD)
混合硬盘结合了HDD和SSD技术,在一个单一的设备中提供大容量的磁盘存储和快速的固态缓存。这使得它们能够提供接近SSD的性能,同时保持HDD级别的存储容量和成本效益。
网络附加存储(NAS)
虽然严格来说不是一种“磁盘”,网络附加存储是一种设备,它连接到网络,允许存储空间在网络上的多台设备之间共享。NAS设备内部通常包含多个HDD或SSD,用于数据存储。
磁盘是现代计算机系统不可或缺的一部分,用于操作系统、应用程序、用户数据等的存储。根据性能、容量和成本需求的不同,可以选择不同类型的磁盘。
1.2、机械硬盘的结构与关键概念
机械硬盘(HDD)是一种基于磁性存储原理的数据存储设备,它使用旋转的磁性盘片和移动的读写磁头来存储和检索数据。
磁道 磁道是硬盘上存储数据的圆形路径。每个盘片表面被细分为数千个同心圆,每个同心圆就是一个磁道。数据以磁道为单位进行组织和存储。
磁头 磁头用于读取和写入硬盘上的数据。它在硬盘操作时悬浮在盘片表面的微小距离上,通过改变盘片表面磁性物质的磁化状态来写入数据,或者检测磁化状态的变化来读取数据。硬盘通常有多个磁头,每个盘面一个。
扇区(Sector) 扇区是硬盘上用于实际存储数据的最小单位。每个磁道被进一步细分为若干个扇区。传统的扇区大小为512字节,但现代硬盘通常使用更大的扇区,如4096字节(即4K扇区)。
块(Block) 块是文件系统层面上的概念,指的是数据的逻辑存储单元。文件系统管理数据时,通常会将连续的多个扇区组成一个块来处理。块的大小由文件系统决定,常见的大小有4KB、8KB等。
柱面(Cylinder) 柱面是由所有盘片上相同半径的磁道组成的一个圆柱体。在早期的硬盘设计中,柱面是定位数据位置的一个重要概念,但在现代硬盘技术中,由于采用了更加复杂的数据存储算法,柱面的概念已经不再那么重要。
机械硬盘的工作原理基于精密的机械移动部件,这也导致了它们相比固态硬盘(SSD)有更高的延迟和较低的抗震性,但在成本和容量方面,机械硬盘仍有其优势
1.3、思考:为什么新买一个1T硬盘,使用时发现可使用容量低于1T
1、两种计量单位:十进制(由硬盘制造商使用)和二进制(由大多数操作系统使用)
2、在文件系统格式化时,会预留一部分空间用于存储Inode表。这意味着硬盘的一部分空间被用于存储文件系统的结构信息而非用户数据。因此,实际可用于存储文件的空间会少于硬盘的标称容量。(Windows:MFT(Master File Table))
1.4、Linux中inode和block
inode节点是一个64字节长度的表,表中包含了文件的相关信息,如:字节数、属主UserID、属组GroupID、读写执行权限、时间戳等。在inode节点表中最重要的内容是:磁盘地址表。
文件命名存放在目录当中,但是Linux系统内部不使用文件名,而是使用inode号码识别文件。对于系统来说文件名只是inode号码便于识别的别称。即Linux文件系统通过把inode和文件名进行关联来查找文件。当需要读取该文件时,文件系统在当前目录中查找该文件名对应的项,由此得到该文件相对应的inode节点号,通过该idone节点的磁盘地址表把分散此南方的文件物理块连接成文件的逻辑结构。
文件是存储在磁盘上的,磁盘的最小存储单位叫做扇区sector,每个扇区存储512字节。操作系统读取磁盘的时候,不会一个个扇区的读取,二是一次性连续读取多个扇区,即一次性读取一个块block。这种由多个扇区组成的块,是文件存放的最小单位。块的大小,最常见的4kb,即连续8个扇区自称一个block
即512字节组成一个扇区(sector),多个扇区组成一个块(block),常见的块为4kb,即连续八个扇区组成一个block
注:一个文件必须占用一个inode,但至少占用一个block
1.5、查看超级快信息
centos6使用dumpe2fs /dev/sda1,centos7使用xfs_info /dev/sba1
meta-data=/dev/sda1 isize=512 agcount=4, agsize=65536 blks= sectsz=512 attr=2, projid32bit=1= crc=1 finobt=0 spinodes=0
data = bsize=4096 blocks=262144, imaxpct=25= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal bsize=4096 blocks=2560, version=2= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
注:
isize:inode占用空间
agcount:超级群组
agsize:超级群组占用块
sectsz:扇区大小
bsize:块大小
blocks:块的数量
1.6、磁盘分区与挂载
磁盘常识
磁盘从生产到使用的三个阶段:
低级格式化:低级格式化为磁盘的使用准备了物理介质,包括创建磁道和扇区、检测坏道(厂商完成)
分区:两种分区表MBR个GPT
MBR
将分区信息保存到磁盘的第一个扇区(MBR扇区)的64个字节中,每个分区占用16个字节,这16个字节中存有活动状态标志、文件系统标识、起止柱面号、磁头号、扇区号、隐含扇区数目(4个字节)、分区总扇区数目(4个字节)等内容。
特点:
MBR分区主分区数目不能超过4个,很多时候,4个主分区并不能满足需要。
MBR分区方案无法支持超过2TB容量的磁盘。因为这一方案用4个字节存储分区的总扇区数,最大能表示2的32次方的扇区个数,按每扇区512字节计算,每个分区最大不能超过2TB,磁盘容量超过2TB以后,分区的起止位置也就无法表示了,BIOS将无法识别分区。(这种分区表逐渐将被淘汰,当然现在很多系统还在用)
思考:如果磁盘超过2TB,怎么办?
GPT
GUID磁盘分割表(GUID Partition Table)的缩写,含义“全球唯一标识磁盘分区表”,是一个实体硬盘的分区表的结构布局的标准。
GPT的分区方案之所以比MBR更先进,是因为在GPT分区表头中可自定义分区数量的最大值,也就是说GPT分区表的大小不是固定的。在Windows中,微软设定GPT磁盘最大分区数量为128个。
特点:
支持2TB以上的大硬盘。
每个磁盘的分区个数几乎没有限制。操作系统存在允许的最多分区数的限制,比如win限制128个。
高级格式化:又称逻辑格式化,这一过程在操作系统层面上创建文件系统(如NTFS、FAT32、ext4等),使得硬盘可以被操作系统识别并存储文件。
1.6.1、分区工具fdisk与格式化
fdisk命令–MBR分区表
命令介绍
fdisk 是一个用于磁盘分区的命令行工具,它允许你创建、删除、调整、查看和复制磁盘分区表。
基本语法
fdisk [options] <device>
:你想要操作的磁盘,例如 /dev/sda。
常用选项
-l:列出指定磁盘的分区表信息
分区示例
交互模式中常用的指令
a toggle a bootable flagb edit bsd disklabelc