我知道我们可以用它sfdisk
来保存和恢复分区表。
节省:
sfdisk -d /dev/sda > part_table
恢复:
sfdisk /dev/sda < part_table
但是还有其他命令行工具可以保存和恢复吗分割,适用于大磁盘或小磁盘,MBR 或 gpt?通过“分割“我的意思是,不仅要保存和恢复磁盘 ID(7、82、83 等),还要保存和恢复分区类型(如 ntfs、ext4、btrfs、swap 等),甚至标签。
parted
至少可以保存这样的分区类型:
parted -ms /dev/sda print > sda.parted
但是它能生成一些它自己能理解的东西来恢复保存的分区吗?如果没有,有什么命令行工具可以吗?谢谢
答案1
在数据结构上,分区表和分区内容:
- 分区表包括起点和终点、类型代码以及有关分区的一些附加元数据。
- 分区的内容通常是文件系统,但它们可以是 LVM、交换分区、引导加载程序代码等。
从软件的角度来看,将两者分开是合乎逻辑的,尽管可能会有一些渗透——例如,parted
探测分区的内容足以确定文件系统类型。许多分区工具(特别是 GUI 工具)将文件系统操作功能与分区操作功能结合在一起。这可以帮助执行诸如调整分区大小之类的操作,并且还可以让经验不足的用户更轻松地销毁他们的数据(呃,“对磁盘进行分区” ;-) )底层数据结构是完全但文件系统是完全独立的之内分区。类型代码仅仅是“提示”,它经常与现实不同步,因此会产生误导。
我读完你的文章后想问的是:你真的想要做什么?也就是说,你的最终目标是什么?例如,你想创建一个可以恢复的完整备份吗?如果是这样,那么克隆兹拉可能适合您的需求。如果您只是想备份分区表本身以防发生意外dd
或类似情况,则不需要文件系统信息,您指定的命令(对于 MBR)或使用选项(或)(对于 GPT)sfdisk
创建的备份都可以。如果您想要打印记录以供参考或手动复制或恢复,打印 (或类似内容)的输出应该可以很好地完成。gdisk
b
sgdisk -b
parted /dev/sda print