Как я предотвращаю дисковое изменение нумерации на перезагрузке в OS X?

У меня есть 3 физических диска в моем Mac Pro с Mac OS X 10.6.4. Иногда после перезагрузки машины, дисковая нумерация изменяется таким образом, что/dev/disk# не ссылается на тот же диск, как это сделало перед перезагрузкой.

Пример

/dev/disk0 -> 64GB SSD drive
/dev/disk1 -> 640GB Hitachi
/dev/disk2 -> 160GB WD (BootCamp)

После перезагрузки отображения мог бы быть

/dev/disk0 -> 160GB WD (BootCamp)
/dev/disk1 -> 640GB Hitachi
/dev/disk2 -> 64GB SSD drive

Еще более сбивающий с толку то, что переотображение не последовательно. Для большей части материала это не важно. Однако у меня также есть Параллели, установленные для предоставления доступа к разделу BootCamp из OS X. Параллели используют/dev/disk# путь в, он - конфигурационный файл так после перезагрузки OS X, я запускаю Параллели, и это говорит мне, что диск больше не присутствует.

Существует ли способ сказать OS X всегда присваивать данный диск/dev/disk0?

12
задан 27.01.2014, 21:58

6 ответов

Попытайтесь добавить записи в Вас /etc/fstab.

An /etc/fstab example:

# Identifier, mount point, fs type, options1
UUID=DF000C7E-AE0C-3B15-B730-DFD2EF15CB91 /export ufs ro
UUID=FAB060E9-79F7-33FF-BE85-E1D3ABD3EDEA none hfs rw,noauto
LABEL=This40Is40The40Volume40Name none msdos ro

Идентификатор используется для идентификации объема; МАРКИРОВКА является именем тома, UUID является Универсальным Диском Уникального идентификатора. Можно использовать обоих, но UUID является лучшим выбором, потому что переименование объема не изменит этот идентификатор.

Из http://macosx.com/forums/mac-os-x-system-mac-software/314314-stop-disk-unmounting-automounting.html

0
ответ дан 07.12.2019, 12:06

Я услышал, что более умные парни Mac, чем я подразумевают, что дисковая нумерация несколько произвольна, и нельзя зависеть от того же устройства, получая то же число после перезагрузки. Это было упомянуто в отношении создания частей RAID через diskutil в Терминале.

Ни одна из низкоуровневых утилит, которые я нашел, такие как diskutil, pdisk или gpt, кажется, не может влиять на дисковую нумерацию. Я боюсь, что это не может быть управляемо.

1
ответ дан 07.12.2019, 12:06

Для наблюдения путей файлов устройства посимвольного ввода-вывода для объемов на внутреннем жестком диске откройте Терминальное приложение, расположенное в/Applications/Utilities. Введите следующее, сопровождаемый клавишей Return:

df

Вы видите полные пути для файлов устройства посимвольного ввода-вывода для текущих объемов путем открытия Terminal, затем вводя (нажмите Return после каждой строки):

cd /dev
ls -lias

Каждый раздел (отображается ли это в Средстве поиска или не) на каждом смонтированном объеме будет иметь два файла в списке для/dev каталога. Названия файлов определяют и устройство числом и раздел на устройстве его числом. Вам, вероятно, придется прокрутить немного в Окне терминала для нахождения файлов.

1
ответ дан 07.12.2019, 12:06

Число диска на основе того, когда физическое устройство перечисляется во время начальной загрузки. Это произошло со мной также в Windows. Я выглядел длинным и трудным для разрешения к этому, и я не нашел тот. Я смог получить диски в "корректном" порядке, когда я передвинул кабели SATA, но это было только временным приспособлением. В Вашем случае, начиная с Параллелей полагается на дисковую нумерацию для пути, может быть лучше создать сценарий для обновления того файла конфигурации на запуске.

0
ответ дан 07.12.2019, 12:06

Насколько я понимаю, что MacOS не имеет той возможности, хотя для выполнения параллелей это не могло бы быть строго необходимо.

использование macports и установка e2fsprogs с маленьким патчем:

diff -r e2fsprogs-1.41.12/misc/Makefile e2fsprogs-1.41.12.patched/misc/Makefile
399c399
>       $(LIBEXT2FS) $(LIBCOM_ERR)
---
<       $(LIBEXT2FS)
401,402c401

можно использовать blkid-s UUID/dev/rdisk*, чтобы перечислить разделы, диски и получить их соответствующий uuids (для любой поддерживаемой файловой системы, которая является довольно многими).

После этого добавление softlink с 'ln-s' или создание альтернативного узла устройства с mknod должно работать (и затем ссылка что psudo-/clone-device от Параллелей). Я сделал подобные приемы с Fusion, но у меня нет Paralells, установленного прямо сейчас (таким образом, я не могу протестировать),

статистика-f "%Sr %Z"/dev/rdisks дает Вам карту по устройству к главному, незначительному, которое будет использоваться, если параллели не принимают гибкую ссылку на устройство.

который может использоваться в качестве в следующем примере:

some@host:/e2fsprogs-1.41.12$ blkid -s UUID /dev/rdisk*s* 
/dev/rdisk0s1: UUID="76D6-1701" 
/dev/rdisk0s2: UUID="654F73AE51849687" 
/dev/rdisk1s1: UUID="51FC4E72-BFA9-4DBD-9A5C-0E5H731DB0ED" 
some@host:/e2fsprogs-1.41.12$ stat -f "%Sr %Z" /dev/rdisk*
rdisk0 14,0
rdisk0s1 14,1
rdisk0s2 14,2
rdisk1 14,3
rdisk1s1 14,4

# okay, UUID 51FC4E72-BFA9-4DBD-9A5C-0E5H731DB0ED is a partition
# on the disk we want to use. so we make a 'private' device node
# pointing to the device containing that partition.

some@host:/e2fsprogs-1.41.12$ sudo mknod /dev/pdisk1 b 14 3

# just a quick verify that the mknod worked as expected ...
some@host:/~$ sudo dd if=/dev/rdisk1  count=10 2>/dev/null | md5 
19d55b28485771bc80acdddbd1b45faf
some@host:/~$ sudo dd if=/dev/pdisk1  count=10 2>/dev/null | md5 
19d55b28485771bc80acdddbd1b45faf

Теперь единственная оставленная вещь состоит в том, чтобы записать сценарий и использование инструкций в http://support.apple.com/kb/HT2420?viewlocale=en_US, чтобы заставить его работать при начальной загрузке.

Но это будет, чтобы кто-то еще закончил...

2
ответ дан 07.12.2019, 12:06

У меня была эта проблема прежде, они обычно изменяются после того, как я сделал обновления или установил что-то, но возвращаюсь к их исходной нумерации после второго перезапуска. Это, очевидно, не идеально, но, казалось, работало на меня...

0
ответ дан 07.12.2019, 12:06

Теги

Похожие вопросы