常用命令创建管理磁盘、格式化磁盘:fdisk & cfdisk & mkfs.***

fdisk磁盘管理

shell 界面的 fdisk 参数:
	fdisk [选项] 磁盘位置(/dev/***)
	-b, --sectors-size <大小>     显示扇区计数和大小
 	-B, --protect-boot            创建新标签时不要擦除 bootbits
 	-c, --compatibility[=<模式>]  模式,为“dos”或“nondos”(默认)
 	-L, --color[=<时机>]          彩色输出(auto, always 或 never)
 	-l, --list                    显示分区并退出
 	-x, --list-details            like --list but with more details
 	-n, --noauto-pt               don't create default partition table on empty devices
 	-o, --output <列表>           输出列
 	-t, --type <类型>             只识别指定的分区表类型
 	-u, --units[=<单位>]          显示单位,“cylinders”柱面或“sectors”扇区(默认)
 	-s, --getsz                   以 512-字节扇区显示设备大小[已废弃]
    -b, --bytes                   以字节为单位而非易读的格式来打印 SIZE
    --lock[=<模式>]           	  使用独占设备锁(yes、no 或 nonblock)
 	-w, --wipe <模式>             擦除签名(auto, always 或 never)
 	-W, --wipe-partitions <模式>  擦除新分区的签名(auto, always 或 never)
 	-C, --cylinders <数字>        指定柱面数
 	-H, --heads <数字>            指定磁头数
 	-S, --sectors <数字>          指定每条磁道的扇区数
 	-h, --help                    显示此帮助
 	-V, --version           	  显示版本

fdisk 命令模式参数(m表):

   M   进入 保护/混合 MBR

  常规:
   d   删除分区
   F   列出未分区的空闲区
   l   列出已知分区类型
   n   添加新分区
   p   打印分区表
   t   更改分区类型
   v   检查分区表
   i   打印某个分区的相关信息

  杂项:
   m   打印此菜单
   x   更多功能(仅限专业人员)

  脚本:
   I   从 sfdisk 脚本文件加载磁盘布局
   O   将磁盘布局转储为 sfdisk 脚本文件

  保存并退出:
   w   将分区表写入磁盘并退出
   q   退出而不保存更改

  新建空磁盘标签:
   g   新建一份 GPT 分区表
   G   新建一份空 GPT (IRIX) 分区表
   o   新建一份的空 DOS 分区表
   s   新建一份空 Sun 分区表

注意:
   - 在执行 xfs_quota 命令之前,确保你有足够的权限,通常需要 root 权限。

创建磁盘分区

#例如我的磁盘有20g 要创建三个分区,一块10G的linux文件系统分区和1G的swap分区和4G的linux文件系统分区

命令(输入 m 获取帮助):n #首先输入n添加分区
分区号 (1-128, 默认  1):
第一个扇区 (2048-41943006, 默认 2048):
最后一个扇区,+/-sectors 或 +size{K,M,G,T,P} (2048-41943006, 默认 41943006): +10G #选择添加10g

创建了一个新分区 1,类型为“Linux filesystem”,大小为 10 GiB。

///////////////////////////////////////////////////////防止眼睛看花了用斜杠分割一下

命令(输入 m 获取帮助):n #这里继续选择n创建第二块4g分区
分区号 (2-128, 默认  2):
第一个扇区 (20973568-41943006, 默认 20973568):
最后一个扇区,+/-sectors 或 +size{K,M,G,T,P} (20973568-41943006, 默认 41943006): +4G #选择添加4g

创建了一个新分区 2,类型为“Linux filesystem”,大小为 4 GiB。

///////////////////////////////////////////////////////防止眼睛看花了用斜杠分割一下

命令(输入 m 获取帮助):n #添加第三块1g swap分区
分区号 (3-128, 默认  3): 3 #按顺序即可
第一个扇区 (29362176-41943006, 默认 29362176):
最后一个扇区,+/-sectors 或 +size{K,M,G,T,P} (29362176-41943006, 默认 41943006): +1G #选择添加1g

创建了一个新分区 3,类型为“Linux filesystem”,大小为 1 GiB。

///////////////////////////////////////////////////////防止眼睛看花了用斜杠分割一下

命令(输入 m 获取帮助):t #输入t改分区格式
分区号 (1-3, 默认  3): 3 #选择方才创建的swap分区
分区类型或别名(输入 L 列出所有类型):19 #我这里的swap分区是19,你们可以用L打印格式表自行查看
已将分区“Linux filesystem”的类型更改为“Linux swap”。

///////////////////////////////////////////////////////防止眼睛看花了用斜杠分割一下

命令(输入 m 获取帮助):p #输入p打印分区表
Disk /dev/nvme0n2:20 GiB,21474836480 字节,41943040 个扇区
磁盘型号:VMware Virtual NVMe Disk
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:gpt
磁盘标识符:745D4A8E-FB8F-9E41-9D86-CD2717073B2B

设备               起点     末尾     扇区 大小 类型
/dev/nvme0n2p1     2048 20973567 20971520  10G Linux 文件系统
/dev/nvme0n2p2 20973568 29362175  8388608   4G Linux 文件系统
/dev/nvme0n2p3 29362176 31459327  2097152   1G Linux swap

# ok最后核对信息确保无误

命令(输入 m 获取帮助):w #输入w保存写入并退出
分区表已调整。
正在同步磁盘。

#至此大功告成!

cfdisk磁盘分区

cfdisk 参数:
	cfdisk [选项] [设备]
	-h:显示帮助信息。
	-V:显示版本信息。
	-z:使用零填充新建的分区。
	-P:显示磁盘的分区表信息,而不是交互式界面。
	-l:显示磁盘的分区表信息,并包括每个分区的详细信息

在cfdisk文本图形界面中:
	New:创建新分区。
	Delete:删除选中的分区。
	Name:给分区命名。
	Type:改变分区类型。
	Bootable:设置分区为可启动。
	Resize:调整选中分区的大小。
	Help:显示帮助信息。
	Write:保存更改并退出。
	Quit:不保存更改并退出。

cfdisk 示例:
#编辑磁盘 & 分区
cfdisk /dev/sda #编辑指定分区或磁盘,例如sda
cfdisk #直接列出磁盘或分区(默认/dev/sda)

#### 分界线 ###############################################################
# 完整的编辑磁盘流程,我以虚拟机的nvme0n2示例(总20G)
# 创建10G的系统分区,和5G的系统分区以及2G的swap分区
[root@NekohaMao ~]# cfdisk /dev/nvme0n2 #编辑命令打开磁盘nvme0n2

# 请看如下图

选择新建

修改分区为10G

回车后如图所示,高亮的一行末尾显示出了10G 的Linux文件系统以此完成,接下来我们继续分配5G文件系统和2G swap。

5G的文件系统分区我直接跳过了和上一个方法一致,接下来选择【剩余空间】然后点【新建】

输入 2G 后回车

这里我们选择刚刚新添的2G文件系统选择类型

选择Linux swap即可

选择写入

输入 yes 并回车,最后退出便可完成以上步骤,此方法对比命令行更为简单便捷,当然以上是根据我个人的示例做出的对磁盘的编辑和设置,具体需要你们自己对磁盘所需做出更变。

mkfs分区格式化

在此之前,如果不懂分区格式的看客,猫猫建议点击下面链接转跳到分区格式章节
分区格式 | 喵喵的小窝 (maojiu.site)

mkfs 的参数:
	 mkfs [选项] [-t <类型>] [文件系统选项] <设备> [<大小>]

创建一个Linux 文件系统。

选项:
 -t, --type=<类型>  文件系统类型;若不指定,将使用 ext2
     fs-options     实际文件系统构建程序的参数
     <设备>         要使用设备的路径
     <大小>         要使用设备上的块数
 -V, --verbose      解释正在进行的操作;
                    多次指定 -V 将导致空运行(dry-run)
 -h, --help         显示此帮助
 -V, --version      显示版本

mkfs 示例:
#将 nvme0n2p1 分区格式化为 ext4 格式
	mkfs -t ext4 /dev/nvme0n2p1
	#或者
	mkfs.ext4 /dev/nvme0n2p1
#创建一个带有 MyData 标签的 ext4 格式
	mkfs -t ext4 -L "MyData" /dev/nvme0n2p2
	#或者
	mkfs.ext4 -L "MyData" /dev/nvme0n2p2