问题描述
在我可以做的非GPT分区表上
sfdisk -d /dev/sda | sfdisk /dev/sdb
。
但是sfdisk
不支持GPT分区表。我可以用什么来代替?
我正在寻找一个或两个命令解决方案,而不仅仅是使用GNU parted来输出分区大小,然后再次手动进行分区。
最佳解决办法
安装可在Ubuntu Universe存储库中使用的gdisk。
然后使用sgdisk
命令(man page here)复制分区表:
sgdisk /dev/sdX -G -R /dev/sdY
-R
设置目标设备。对于不混合(原创)的助记规则非常简单 – 想想”Receiver”。
通常,如果要同时使用GPT(即使在不同的机器上),随机化副本的UUID也是有意义的,这就是为什么-G
次佳解决办法
我试过了,但它对我没有用。我找到的解决方案是:
sgdisk --backup=table /dev/sda
sgdisk --load-backup=table /dev/sdb
sgdisk -G /dev/sdb
第三种解决办法
dd if=/dev/sda of=GPT_TABLE bs=1 count=A
dd if=GPT_TABLE of=/dev/sdb bs=1 count=A
partprobe /dev/sdb
其中A是:
A=(128*B)+1024
B=parted -ms /dev/sda print |tail -1|cut -b1
第四种办法
我只是尝试使用sgdisk进行复制,它工作得很好 – 你只需要遵循readline语法规则:
sgdisk --replicate=/dev/target /dev/source
要么
sgdisk -R/dev/target /dev/source
一切正常。