Измените «игнорировать право собственности на этот том» из командной строки для тома Mac OS X

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

Новые изображения всегда игнорируют владельца /группу

При создании нового образа диска из Disk Utility он автоматически устанавливается. Если вы затем выберите громкость в Finder и нажмите Cmd-I (для информационного окна), вы увидите это в нижней части окна:

введите описание изображения здесь

Это означает, что владельцы файлов и группы будут проигнорированы на этом томе. Это очень удобно для внешних дисков, которые совместно используются машинами с разными учетными записями пользователей. Для резервных томов это не очень хорошая идея, так как вы хотели бы сохранить информацию о владельце /группе для резервных копий файлов.

Измените это из Finder

Чтобы изменить это, просто снимите флажок и он будет запоминаться после извлечения и повторного подключения изображения.

Изменение из командной строки (терминал)

Вместо установки изображения из Finder вы также можете установить его из командной строки с помощью этой команды (при условии, что изображение называется testimage.sparsebundle):

$ hdiutil attach testimage.sparsebundle/

Тем не менее, владельцы игнорируются на томе. Добавление параметра -owners on (почти) эквивалентно снятию флажка на изображении выше:

$ hdiutil attach -owners on testimage.sparsebundle/

Однако после размонтирования и повторной установки тома из Finder (или из командной строки без опции -owners on) флажок установлен еще раз.

Кто-нибудь знает, как сделать это изменение постоянным, используя вызов из командной строки?

13 голосов | спросил mgd 8 J0000006Europe/Moscow 2012, 18:24:35

3 ответа


16

Для этого используется diskutil. См. diskutil(1) в разделе enableOwnership и disableOwnership . Обратите внимание, что этот параметр специфичен для конкретной установки операционной системы, поскольку он хранится в /var/db/volinfo.database. Если вы копируете образ диска на новый компьютер, этот параметр не будет сохраняться, но он сохраняется на всех перезагрузках, монтирует, umounts и т. Д. На одном компьютере.

Используйте diskutil, чтобы найти идентификатор, а затем измените параметр:

$ diskutil list
/dev/disk2
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            Disk Image             *41.0 MB    disk2
$ sudo diskutil enableOwnership disk2
File system user/group ownership enabled
ответил bahamat 8 J0000006Europe/Moscow 2012, 21:43:57
4

Я обнаружил, что оба ответа работали для обеспечения прав собственности, которые запоминаются:

sudo diskutil enableOwnership <diskname>s<slicenum>

и

vsdbutil -a /Volume/<volname>

Однако противоположное неверно, по крайней мере, на OS X 10.11.3:

sudo diskutil disableOwnership <diskname>s<slicenum>

и

vsdbutil -d /Volume/<volname>

Оба временно изменяют состояние, но право собственности снова включается в следующий раз, когда я монтирую том. Кажется, это ошибка в операционной системе. К счастью, я нашел решение, которое работает. Извлеките все внешние диски, для которых вы хотите отключить право собственности. Затем удалите соответствующую базу данных, используя:

sudo rm /var/db/volinfo.database
ответил Russell Owen 2 MarpmWed, 02 Mar 2016 21:21:22 +03002016-03-02T21:21:22+03:0009 2016, 21:21:22
2

Используйте vsdbutil, чтобы установить его для пути вместо физического диска:

vsdbutil -a /Volume/Diskname

Хотя страница man предполагает, что она устарела, man для diskutil все еще ссылается на него, и механизм, по-видимому, основан на Volume UUIDs не на физических дисках /срезах.

ответил Chris F Carroll 12 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowSat, 12 Sep 2015 18:47:27 +0300 2015, 18:47:27

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

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132