в разрешении отказано mkdir / Тома

9

Я получаю отказано в разрешении при попытке создать или смонтировать в / Volumes на моем Mac. Я администратор, и я могу сделать обе эти вещи с помощью sudo, но я не понимаю, почему я должен использовать sudo на этом Mac, а не на других Mac в моем офисе.

/Volumes
> mkdir foo
mkdir: foo: Permission denied

Я думаю о том, чтобы использовать chown / chmod, но я колеблюсь, не спрашивая сначала.

/Volumes
> ll
total 8
drwxr-xr-x@  4 root      admin   136B Apr 22 13:40 .
drwxr-xr-x  33 root      wheel   1.2K Mar 30 22:23 ..
drwxr-xr-x@ 11 medialab  staff   442B Apr 14 15:34 06b_SD_Video_BK
lrwxr-xr-x   1 root      admin     1B Apr 18 10:48 Macintosh_HD -> /

Мы монтируем ленты LTO на эту машину и в настоящее время можем делать это только с помощью sudo. Это не всегда имело место, и я не знаю, почему sudo внезапно требуется.

Как мне перейти к изменению разрешений на / Volume?

Бликли
источник
pkgutil --file-info /Volumesпредоставит вам информацию, необходимую для установки разрешений для /Volumesкаталога
fd0
Спасибо @ fd0. --file-infoзависал в терминале без выходных данных, поэтому я попытался--file-info-plist
Bleakley
Я не могу много посылать на выходе.
Бликли

Ответы:

14

В этом каталоге есть ограничения контроля доступа. Вы можете проверить это из командной строки:

ls -lOe /

(Это заглавная буква O, а не ноль 0). Я бы предложил смонтировать ваш том в другой каталог - либо / tmp, либо $ TMPDIR, а не возиться с ограничениями, предназначенными для предотвращения того, что у вас есть, - с настоящим каталогом с актуальными файлами в / Volumes.

Не зная вашего сценария и рабочего процесса, трудно угадать / посоветовать что-либо кроме того, чтобы не менять то, что Apple изменит в следующий раз, когда вы исправите систему.

У вашего поставщика лент LTO должно быть программное обеспечение, позволяющее монтировать том таким образом, чтобы использовать среду арбитража дисков Apple, чтобы вам не пришлось управлять монтированием в сценарии.


Вы можете добавить пользователя, чтобы иметь явный доступ для записи в этот каталог, если вы уверены, что это то, что поможет:

sudo chmod +a "User 1:allow:add_subdirectory" /Volumes
bmike
источник
Спасибо @bmike. Мне обязательно нужно смонтировать LTO в / Volumes. Это часть скрипта GitHub, который требует этого.
Бликли
1
Я должен был сделать, я должен был сделать sudo chmod -RN; sudo chmod +a "myusername:allow:add_subdirectory,add_file" .. Который удаляет ACL и создает новые для этой папки и всех подпапок
Ray Foss
1

Разрешения по умолчанию для каталога / томов:

...
drwxrwxrwt@  4 root      admin  hidden  136 Apr 22 22:05 .
 0: group:everyone deny add_file,add_subdirectory,directory_inherit,only_inherit
...

Я предлагаю восстановить разрешения с помощью Дисковой утилиты / diskutil или стороннего инструмента и / или изменить разрешения вручную.

klanomath
источник
Спасибо @klanomath. Как я могу изменить разрешения вручную? chmod 755 /Volumesне делает это.
Бликли
@ Блейк sudo chmod 777 /Volumes. Возможно, вам придется изменить ACL также в sudo chmod +a|=a ....зависимости от вашего ls -le0 ...результата.
Кланомат
Спасибо. Мне действительно пришлось изменить ACL, с которым я никогда раньше не работал.
Бликли