sfdisk
是 Linux 系统中用于分区管理的命令。它主要用于创建、删除和修改磁盘分区表。sfdisk
是一个功能强大的命令行工具,可以对磁盘进行低级别的分区操作。
基本用法
基本语法:
sfdisk [选项] [设备名称]
常见选项
-l
:列出指定设备的分区表信息。-d
:将分区表信息以sfdisk
的脚本格式输出。-s
:显示每个分区的大小(以 KB 为单位)。-u
:指定显示或操作的单位,可以是c
(柱面)、s
(扇区)或M
(MB)。-q
:安静模式,减少输出信息。-f
:强制执行操作,不提示确认。-W
:警告选项,如果分区表不正确,提示警告并退出。--delete
:删除指定分区。-n
:模拟模式,不实际写入分区表,仅显示将要执行的操作。-v
:显示版本信息。-V
:验证分区表的正确性。
常见命令及示例
- 列出分区表信息
使用
-l
选项可以查看磁盘的分区表信息:
sudo sfdisk -l /dev/sda
- 创建新分区表
使用
-n
选项可以模拟创建新分区表:
sudo sfdisk -n /dev/sda << EOF
1M,512M,L,*
513M,,L
EOF
这将在 /dev/sda
上创建两个分区,第1个分区从1MB开始,大小为512MB,文件系统类型为Linux;第2个分区从513MB开始,占用剩余空间。
- 删除分区
使用
--delete
选项可以删除指定分区:
sudo sfdisk --delete /dev/sda 1
这将删除 /dev/sda1
分区。
- 备份分区表
使用
-d
选项可以把分区表信息输出为脚本格式,用于备份:
sudo sfdisk -d /dev/sda > sda_backup.txt
- 恢复分区表 将备份的分区表信息恢复到磁盘:
sudo sfdisk /dev/sda < sda_backup.txt
注意事项
- 危险性:
sfdisk
是一个危险的命令,它可以删除分区表和分区中的数据。使用时要非常小心,确保操作正确,以免误删重要数据。 - 权限:大部分操作需要
sudo
(超级用户权限)才能执行。 - 分区表类型:
sfdisk
默认操作 MBR 分区表。如果需要管理 GPT(GUID 分区表),可以使用parted
或gdisk
工具。
使用场景
- 新磁盘初始化:当你添加一块新磁盘时,可以使用
sfdisk
快速创建分区表。 - 批量分区:可以在脚本中使用
sfdisk
对多块磁盘进行批量分区操作。 - 恢复备份的分区表:在磁盘出现分区表损坏时,可以用备份的分区表信息进行恢复。
sfdisk
是一个功能强大但危险的工具,如果你不熟悉分区管理,建议先在虚拟机或不重要的磁盘上进行练习。