磁盘分区规则
一般的饿磁盘设备都是以/dev/sd开头。一台主机可能有多块磁盘,因此系统采用a~z来代表26块不同的磁盘,,默认从a开始分配。
磁盘分区编号
主分区或扩展分区的编号从1开始,到4结束
逻辑分区从编号5开始
磁盘设备介绍
磁盘是由大量的扇区组成,每个扇区容量为512字节。
主分区:
其中第一个扇区 最重要,保存着主引导记录与分区表信息 ,在该扇区中,主引导记录占用446字节,分区表占用64字节 ,结束符占用2字节;其中分区表中每记录一个分区信息就需要16字节,这样计算的话,最多只有4个分区信息可以写到第一个扇区中,这4个扇区就是4个主分区。
MBR 即主引导记录,位于磁盘前 512 字节,前 446 字节存放引导程序,64 字节存放分区表,最后 2 字节为标志位;最多 4 个主分区,仅支持小于 2TB 硬盘,配合 BIOS 启动,使用 fdisk 工具管理分区。
扩展分区:
为了解决每块磁盘最多只能创建四个分区,造成分区数量不够的问题,可以将第一个扇区的分区表中16字节(原本要写入主分区信息)的空间作为扩展分区,指向另一个分区。
在扩展分区中再划分逻辑分区
扩展分区实际上并不是一个真正的分区,而是一个指向其他分区的指针。扩展分区自身不能存储数据,用户需要在其指向的对应分区(逻辑分区)上操作
这样,通常可以使用3个主分区和1个扩展分区的方法,然后在扩展分区中创建多个逻辑分区,从而满足多分区的需求
在linux中只是把每个文件的权限与属性记录在inode中,,每个文件占用一个独立的inode表格,这个表格的大小默认为128字节。
文件的实际内容则保存在block中,大小一般为1kb,2kb或4kb。一个inode的默认大小仅为128字节,记录一个block则消耗4字节。当文件的inode被写满后,linux系统会自动分配出一个block,专门用于像inode那样记录其他block块的信息,这样把block的内容串联在一起,,,就能让用户读到完整的文件内容了
挂载硬件设备
挂载是为了使用硬件资源。一块新的硬盘需要先分区,然后格式化,最后才能挂载并使用。
mount
用于挂载文件系统
格式:mount 【文件系统】 【挂载目录】
参数:
-a:挂载所有在/etc/fstab中定义的文件系统,,,/etc/fstab:开机自动挂载配置文件。
-t:指定文件系统的类型
把设备/dev/sdb2挂载到/backup目录中:
mount /dev/sdb2 /backup
系统会自动判定要挂载的文件类型
挂载点的目录最好是空的,,否则挂载后目录的文件会被隐藏
UUID
通用唯一识别码。UUID是一串用于标识每块独立磁盘的字符串,具有唯一性及稳定性。在平时,如果要挂载一块网络存储设备,该设备的名字可能变来变去,这时就可以用UUID来进行挂载操作,
blkid
可以通过命令blkid来获得UUID
使用UUID挂载格式: mount UUID=实际字符串 需要挂载到的目录
通常,在系统重启后挂载就会失效,如果想让硬件设备和目录永久的关联,就必须把挂载信息按指定的填写格式写入到/etc/fstab中
/etc/fstab:开机自动挂载配置文件。
格式为: 设备文件 挂载目录 格式类型 权限选项 是否备份 受否自检
写入到/etc/fstab中的设备信息不会立即生效,,需使用mount -a 参数自动挂载
| 字段 | 含义说明 |
|---|---|
| 设备文件 | 一般为设备的路径,也可以写 UUID |
| 挂载目录 | 指定要挂载到的目录,需要提前创建好 |
| 文件系统类型 | 指定文件系统的格式:Ext3、Ext4、XFS、SWAP、iso9660(光驱)等 |
| 权限选项 | 设为 defaults,默认权限:rw、suid、dev、exec、auto、nouser、async |
| 是否备份(dump) | 取值 1:开机使用 dump 做磁盘备份;取值 0:不备份 |
| 是否自检 | 取值 1:开机自动磁盘自检;取值 0:不自检 |
df
查看已挂载的磁盘空间使用情况,全称:disk free 语法 格式为df -h

umount
用于卸载设备或文件系统
格式:umount 设备文件/挂载目录
lsblk
查看系统中磁盘、分区、逻辑卷等块信息

解释/dev/sda5
/dev目录中保存的是硬件设备文件;sd表示是存储设备;a表示系统中同类接口中第一个被识别到的设备;5表示这个设备是一个逻辑分区。
/dev/sda5表示的是:这是系统中第一块被识别到的硬件设备中分区编号为5的逻辑分区的设备文件
fdisk
用来创建,修改,删除磁盘分区表信息,format diskette,,format--格式化,diskette--磁盘
默认把磁盘划分为MBR格式的分区
格式:fdisk 磁盘名称
参数:
交互形式使用参数
n:添加新的分区
d:删除某个分区信息
l:列出所有可用的分区类型
t:改变某个分区的类型
p:查看分区信息表
w:保存并退出
q:不保存直接退出
管理/dev/sdb磁盘设备
输入参数n尝试添加分区,系统会要求用户选择继续输入参数p创建主分区,或者输入参数e创建扩展分区

确认创建一个主分区后,系统会要求用户先输入主分区的编号,范围是1~4,默认为1 ,
接下来是系统提示定义起始扇区的位置,可以直接回车键,系统会自动计算最靠前的空闲扇区的位置。
最后系统会要求定义分区的结束扇区位置,这里就是定义整个分区的大小是多少。只需输入想要的如+2G,即可创建出一个容量为2G的磁盘分区。
最后要输入参数w分区信息才会真正的写入成功
如果硬件设备没有进行格式化,则系统无法得知怎么在其上写入数据。因此在对存储设备进行分区后还需进行格式化操作
mkfs
- 当拿到一张大白纸,对其进行裁切相当于硬盘的分区,大于裁切后的白纸块进行方格的绘制相当于格式化
- 格式化是对分区建立文件系统的过程,使操作系统明确存储设备上的文件的组织架构和数据结构以便将来读写数据
**在linux中用于格式化操作的命令是mkfs,,输入mkfs连续两次tab键,**系统列出本机支持的文件系统版本:
-f 强制格式化

对不同文件系统的格式化操作:mkfs.文件类型名称

du
查看分区或目录所占用的磁盘容量大小
格式:du -sh 目录名称
添加交换分区


交换分区时一种通过在磁盘中预先划分一定的空间,把内存中暂时不常用的数据临时存到磁盘中,以便腾出物理内存的技术,用来解决真实物理内存不足的问题。
在生产环境中,通常建议交换分区的大小设置为真实物理内存的1.5~2倍

执行了 t 命令,作用:修改分区类型(修改 16 进制 Hex‑Code)
| Hex 代码 | 分区类型 |
|---|---|
83 |
Linux 普通分区(xfs、ext4) |
82 |
Linux swap 交换分区 |
8e |
LVM 物理卷 |
fd |
RAID 磁盘阵列 |
mkswap----进行交换分区格式化
用于对新设备进行交换分区格式化
格式:mkswap 设备名称
swapon
使用大文件时候,需先将大文件属性改为600
用于激活新的交换分区
格式:swapon 设备名

gdisk
针对GPT分区格式的命令,若在MBR分区中再次分区时会导致数据全部丢失,
GPT 分区表里专门划分出一块区域叫分区条目数组,一共固定分配128 个分区条目 ,每一条对应一个分区,因此最多可以创建 128 个分区;GPT 里面不分主分区、扩展分区、逻辑分区,全部都是普通分区。
分区类型编码:
- Linux 文件系统 (xfs/ext4):
8300 - swap 交换分区:
8200
挂载大文件
当只有一个分区,剩余空间还很大,硬盘中剩余的自由未分区的空间已消耗殆尽,在添加新分区时,可以在已存在的分区中制作一个大文件,格式化后挂载为分区使用,可以解决分区剩余空间不足问题。
格式:mount -o loop 镜像文件 挂载目录
loop 作用:把普通文件虚拟成块设备,当作磁盘分区来挂载,


- 创建一个空白大文件:
dd命令生成; mkfs.xfs 这个文件进行格式化;mount -o loop 文件名 /loop2dev挂载;/etc/fstab里面配置开机自动挂载同样需要加上loop参数: