除了ext2 / ext3 / ex4和xfs,您还可以更改以下文件系统或块设备的UUID。
交换
swaplabel -U $NEW_UUID
软件RAID(md raid)
对于MD RAID,必须首先停止RAID,然后在重新组装时更新UUID。因此,如果将RAID挂载到/
,则需要在脱机模式下更新UUID-使用实时CD来完成。
mdadm --stop $RAID_DEVICE
mdadm --assemble $RAID_DEVICE --update=uuid --uuid=$NEW_UUID $MEMBER_DEVICES...
例:
mdadm --stop /dev/md127
mdadm --assemble /dev/md127 --update=uuid --uuid=2A1D2A1D-2A1D-2A1D-2A1D-2A1D2A1D2A1D /dev/sda2 /dev/sdb2
更新了UUID之后,您可能需要更新grub.cfg
(rd.md.uuid=$NEW_UUID
在linux/linuxefi/linux16
命令行中)和/或fstab
和/或mdadm.conf
和/或update-initramfs
(Debian家族)和/或dracut --force
(Red Hat家族),以便下次可以成功启动。
卢克斯(cryptsetup)
cryptsetup luksUUID --uuid=$NEW_UUID $LUKS_DEVICE
例:
cryptsetup luksUUID --uuid=e0c0e0c0-e0c0-e0c0-e0c0-e0c0e0c0e0c0 ~/encrypted-LUKS.loop
FAT / NTFS / exFAT
这是另一个故事 当前没有实用程序来修改这些文件系统的文件系统UUID(请参阅reichhart的答案 -该mlabel
工具),但是我们可以修改磁盘上的原始数据来执行此操作。
警告,修改磁盘上的原始数据很危险,如果不小心操作可能会丢失数据。
以下是使用修改磁盘上原始数据的详细步骤hexedit
。
blkid
,将文件系统的UUID写下到纸上,或者记住它。FAT / exFAT的UUID字符串看起来像1122-3344
,NTFS的UUID字符串看起来像1122334455667788
。
使用hexedit打开分区设备
hexedit <partition device such as /dev/sda1>
- 按/,以相反的顺序输入UUID(如果已
blkid
报告1234-ABCD
,则搜索CDAB3412
)以搜索磁盘上的UUID数据。
- 找到UUID后,对其进行更改,请按F2保存并退出。
blkid
验证UUID。
- 修改UUID后,您可能需要更新
grub.cfg
和/或fstab
以便下次成功启动。
- 执行
fsck <partition device such as /dev/sda1>
并看到“引导扇区与其备份之间存在差异”消息。为了解决该问题,请选择“ 1)将原件复制到备份”,然后如果询问“是否执行更改?(y / n)”,请按y。