如何在 Mac OS X 10.6 上更改卷的 UUID?

如何在 Mac OS X 10.6 上更改卷的 UUID?

有人知道如何更改卷的 UUID 吗?这个问题的背景是我有一个重复的 UUID 问题:

我有/Volumes/OldMacHD一个 UUID 为 XYZ 的镜像。我有/Volumes/Mirror1一个 UUID 为 XYZ 的镜像(相同的 UUID!我敢打赌那是因为 OldMacHD 曾经是这个镜像的一部分)。我通过以下方式获取了这些 UUID:

diskutil info /dev/thatdisknumber | grep UUID 

我想更改 的 UUID Mirror1

我偶然发现了这个hfs.util实用程序,因为这些毕竟是 HFS 卷。手册页hfs.util表示如果您发出标志-s,这将更改 UUID。但是,如果您hfs.util只输入它,它-s根本不会显示选项,只会显示除此以外的所有选项!哎呀。我还是试了一下:

sudo /System/Library/Filesystems/hfs.fs/hfs.util -s /dev/disk4 (the raid volume).  

什么都没发生。没有错误消息,也没有成功消息。UUID 完全相同。我在卸载卷时尝试过。

有任何想法吗?

答案1

hfs.util 的语法似乎只是设备名称,而不是包括 /dev/ 的路径

IE

Server:~ admin$ mount
(...)
/dev/disk1s2 on /Volumes/Backup (hfs, local, journaled)
(...)
Server:~ admin$ sudo /System/Library/Filesystems/hfs.fs/hfs.util -s rdisk1s2

确保在 hfs.util -s 之前卸载驱动器,然后安装。

使用“原始”设备,即 rdisk1s2,而不是 disk1s2

直到您重新挂载,diskutil info 才会显示新的 uuid。

答案2

这应该是可行的。尝试使用 hfs.util 指定卷的实际设备 ID(如果它是 raid 卷,您需要 raid 上卷的设备 ID,而不是任何特定磁盘的设备 ID)。

或者使用 SuperDuper! 的小工具,这样您就可以指定已安装卷的路径。

关于如何处理卷 ID(实际上不是 UUID,UUID 仅用于显示,每次都会根据实际卷 ID 重新计算)的详细信息,我在以下回答中进行了解释:如何将 Mac OS X 上卷的 UUID 更改为指定值?

答案3

您可以通过分区格式化/擦除简单地更改 UUID。

1)使用内置的Disk Utility

2)如果您需要 Windows 分区,请在完成第一步后将磁盘格式化为 exFAT(由于某种原因,Windows 分区需要两个步骤)

您可以通过列出所有 UUID 号码来检查 UUID 是否发生变化:

find /Volumes -maxdepth 1 -mindepth 1 -exec diskutil info {} \;

答案4

我能找到的所有示例都只采用设备 BSD 名称,而不是设备文件的完整路径。你试过吗?

相关内容