Как изменить UUID тома в Mac OS X 10.6?

11546
Emmel

Кто-нибудь знает, как изменить UUID тома? Подоплека этого вопроса заключается в том, что у меня возникла повторяющаяся проблема с UUID:

У меня /Volumes/OldMacHDс UUID XYZ. У меня /Volumes/Mirror1с UUID XYZ (тот же UUID! Бьюсь об заклад, это потому, что OldMacHD ИСПОЛЬЗУЕТСЯ быть частью этого зеркала). Я получил эти UUID через:

diskutil info /dev/thatdisknumber | grep UUID 

Я хотел бы изменить UUID Mirror1.

Я случайно обнаружил hfs.utilутилиту, так как это все-таки тома HFS. Страница man дляhfs.util говорит, что если вы выпустите -sфлаг, это изменит UUID. Тем не менее, если вы печатаете hfs.utilвсе самостоятельно, это не покажет вам -sопцию, просто каждый вариант, кроме этого! Grr. Я все равно попробовал:

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

Ничего не произошло. Нет сообщения об ошибке, нет сообщения об успехе. UUID точно такой же. Я попробовал, пока громкость была отключена.

Есть идеи?

7

6 ответов на вопрос

3
Daniel Zeller

синтаксис для hfs.util выглядит как имя устройства, а не путь, включающий / dev /

т.е.

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 не покажет новый uuid, пока вы не перемонтируете.

В El Capitan `hfs.util` находится в` / System / Library / Filesystems / hfs.fs / Contents / Resources`. skozin 8 лет назад 2
2
Analog File

Это должно быть выполнимо. попробуйте использовать hfs.util, указав фактический идентификатор устройства для тома (если это raid-том, вам нужен идентификатор устройства для тома в raid, а не для какого-либо конкретного диска).

В качестве альтернативы используйте маленький инструмент, который является частью SuperDuper! так что вы можете указать путь к подключенному тому.

Подробная информация о том, как обрабатывается идентификатор тома (который на самом деле не является UUID, UUID используется только для отображения и пересчитывается каждый раз из фактического идентификатора тома), объясняется в моем ответе на вопрос « Как изменить UUID?» тома в Mac OS X в УКАЗАННОЕ значение?

1
Spiff

/dev/disk4это не том HFS, это целый диск, включая таблицу разделов и любое количество отдельных томов (разделов) на диске. /dev/disk4s0будет примером объема. Найдите правильный идентификатор для фактического тома HFS, который вас интересует, и попробуйте сделать hfs.util -sэто.

1
Laimis Laimison

Вы можете просто изменить UUID по формату раздела / стереть.

1) Форматирование диска в Mac OS Extended с использованием встроенного Disk Utility

2) Если вам нужен раздел Windows, отформатируйте диск в exFAT после того, как вы сделали первый шаг (по некоторым причинам вам нужно два шага для раздела Windows)

Вы можете проверить, изменился ли UUID, перечислив все номера UUID:

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

Все примеры, которые я могу найти, берут только имя BSD устройства, а не полный путь к файлу устройства. Вы пробовали это?

Да, попробовал их обоих. Я закончил тем, что не разрушительно убил и восстановил зеркало рейда, чтобы изменить UUID, потому что больше ничего не работало. Было бы интересно узнать, как это сделать на будущее. Emmel 14 лет назад 0
Шансы хорошие, он никогда не тестировался на установке RAID. Попробуйте это на одном устройстве, и если оно все еще ничего не делает, подайте отчет об ошибке. Hasaan Chop 14 лет назад 0
0
linuxdev2013

Самый простой и совместимый способ, который я нашел, это с помощью Gparted (можно найти mac dmg на sourceforge ИЛИ http://gparted.org ) и вручную выбрать этот раздел / диск и отредактировать uuid таким образом.

НО с disk util (это работает как на Linux, так и на Mac:

  1. вставить диск

  2. выберите передачу и выключите автоматическое крепление

  3. во вновь редактируемых полях измените «Отображаемое имя», а затем выберите (из «монтировать как») монтирование как UUID = foo

    • если на этом диске не осталось ничего значимого, переформатируйте и объявите отображаемое имя и смонтируйте его как "$ (что будет uuid = foo)
  4. (опционально) при необходимости включите автоматическую установку

  5. повторное использование

  6. (необязательно) измените fstab, чтобы повторно ввести смесь дисков