permissão negada mkdir / Volumes

9

Estou recebendo uma permissão negada ao tentar criar ou montar em / Volumes no meu mac. Sou administrador e posso fazer as duas coisas com o sudo, mas não entendo por que tenho que usar o sudo neste mac, mas não em outros macs do meu escritório.

/Volumes
> mkdir foo
mkdir: foo: Permission denied

Meu pensamento é usar chown / chmod, mas hesito em fazê-lo sem perguntar primeiro.

/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 -> /

Montamos fitas LTO nesta máquina e atualmente só podemos fazê-lo usando o sudo. Nem sempre foi esse o caso e não sei por que o sudo está sendo subitamente solicitado.

Como altero as permissões em / Volumes?

Bleakley
fonte
pkgutil --file-info /Volumesvai lhe dar a informação que você precisa definir as permissões no /Volumesdiretório
fd0
Obrigado @ fd0. --file-infoestava pendurado no terminal com nenhuma saída, então eu tentei--file-info-plist
Bleakley
Não posso enviar muito da saída.
Bleakley

Respostas:

14

Existem restrições de controle de acesso nesse diretório. Você pode inspecionar aqueles na linha de comando:

ls -lOe /

(Essa é uma letra maiúscula O e não um zero 0) . Sugiro montar seu volume em outro diretório - / tmp ou $ TMPDIR, em vez de mexer com as restrições projetadas para impedir o que você possui - um diretório real com arquivos reais em /Volumes.

Sem conhecer seu script e fluxo de trabalho, é difícil adivinhar / aconselhar além de não mudar as coisas que a Apple mudará na próxima vez que você corrigir o sistema.

O fornecedor das fitas LTO deve ter um software para lidar com a montagem do volume de maneira a usar a estrutura de arbitragem de disco da Apple, para que você não precise gerenciar as montagens em um script.


Você pode adicionar um usuário para ter acesso explícito de gravação nesse diretório, se tiver certeza de que isso ajudará:

sudo chmod +a "User 1:allow:add_subdirectory" /Volumes
bmike
fonte
Obrigado @bmike. Definitivamente, preciso montar o LTO em / Volumes. É parte de um script do github que exige isso.
Bleakley
11
Eu tinha que fazer, tinha que fazer sudo chmod -RN; sudo chmod +a "myusername:allow:add_subdirectory,add_file" .. Que exclui os ACLs e cria novos para esta pasta e todas as subpastas
Ray Foss
1

As permissões padrão do diretório / Volumes são:

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

Sugiro reparar as permissões com o Disk Utility / diskutil ou uma ferramenta de terceiros e / ou modificar as permissões manualmente.

Klanomath
fonte
Obrigado @klanomath. Como posso modificar as permissões manualmente? chmod 755 /Volumesnão está conseguindo.
Bleakley
@Blake sudo chmod 777 /Volumes. Pode ser necessário modificar a ACL também sudo chmod +a|=a ....dependendo do ls -le0 ...resultado.
precisa saber é o seguinte
Obrigado. Eu tive que modificar a ACL, com a qual nunca havia trabalhado antes.
Bleakley