partprobe通知系统内核重新读取分区表
partprobe
是一个用于通知操作系统内核重新读取分区表的命令行工具。当你使用工具(如 fdisk
、parted
或 gdisk
)修改了磁盘的分区表后,内核可能不会立即识别这些更改。这时,你可以使用 partprobe
来强制内核重新读取分区表,而无需重启系统。
语法
1 | partprobe [选项] [设备] |
- 设备:指定要重新读取分区表的磁盘设备(如
/dev/sda
)。如果不指定设备,partprobe
会尝试重新读取所有磁盘的分区表。 - 选项:
-d
:不更新内核的分区表。-s
:显示分区表的摘要信息。-h
:显示帮助信息。
使用示例
1. 重新读取指定磁盘的分区表
假设你修改了 /dev/sda
的分区表,可以使用以下命令通知内核重新读取:
1 | sudo partprobe /dev/sda |
2. 重新读取所有磁盘的分区表
如果不指定设备,partprobe
会重新读取所有磁盘的分区表:
1 | sudo partprobe |
3. 显示分区表的摘要信息
使用 -s
选项可以显示分区表的摘要信息:
1 | sudo partprobe -s |
输出示例:
/dev/sda: gpt partitions 1 2 3
/dev/sdb: msdos partitions 1 2
4. 不更新内核的分区表(仅测试)
使用 -d
选项可以让 partprobe
不更新内核的分区表,仅测试操作:
1 | sudo partprobe -d /dev/sda |
注意事项
- 权限:
partprobe
需要 root 权限,因此通常需要使用sudo
。 - 适用范围:
partprobe
适用于大多数情况,但在某些情况下(如正在使用的分区),可能需要重启系统才能生效。 - 替代命令:在某些系统中,
partx
或kpartx
也可以用于类似的目的。
常见问题
1. 修改分区表后,为什么需要运行 partprobe
?
当你修改分区表后,内核可能不会立即识别这些更改。运行 partprobe
可以通知内核重新读取分区表,使更改生效。
2. partprobe
和 partx
有什么区别?
partprobe
是一个更通用的工具,适用于大多数情况。partx
是一个更底层的工具,可以更精细地控制分区表的更新。
3. 如果 partprobe
无效怎么办?
如果 partprobe
无法使更改生效,可以尝试以下方法:
- 卸载相关分区并重新挂载。
- 重启系统。