sudo
é necessário sempre que você precisar executar uma operação que exija Privilégios root (como tocar em coisas em /opt
ou /user
). Ele eleva temporariamente suas permissões até o root.
Veja também:
Novo usuário do mac aqui. Eu tentei criar um link simbólico (instalando x11) em / opt:
ln -s /opt/X11 /usr/X11
Mas a permissão é negada. Obviamente, eu provavelmente posso usar o sudo, mas como eu sei quando isso é necessário? Existem certos diretórios que exigem sudo? A criação de um link simbólico sempre requer o sudo? Alguém sabe de um guia que possa me ajudar a entender melhor?
Obrigado antecipadamente
sudo
é necessário sempre que você precisar executar uma operação que exija Privilégios root (como tocar em coisas em /opt
ou /user
). Ele eleva temporariamente suas permissões até o root.
Veja também:
Você precisa do sudo sempre que seu usuário não tiver as permissões necessárias para executar a operação em questão. É difícil dar uma resposta mais específica, porque o usuário pode ou não ter certos privilégios.
Como regra geral, os privilégios do Unix geralmente são verificados no nível do arquivo, ou seja, se sua ação envolve ler ou escrever (ou executar, mas às vezes é complicado definir) para um arquivo, você precisa dessas permissões. Os diretórios são arquivos para Macos de certa forma, onde a criação de um novo arquivo sob ele se traduz em gravação nesse diretório, listá-los requer leitura e entrada no diretório (por exemplo, cd) requer permissões de execução.
Você pode ver essas permissões com ls -l e as diferentes colunas informarão a permissão do usuário, do grupo e de todo mundo para ler, gravar, executar operações (rwx). Isso é fácil de entender para arquivos de diretórios (ou dispositivos) que fica mais interessante.
Portanto, no seu exemplo, você precisaria executar ls -l / e descobrirá que seu usuário não possui / usr, não faz parte do grupo e do mundo certos (todos) não tem permissão para escrever / usr, o que seria necessário porque ln -s cria um tipo especial de arquivo.
Tags bash osx-mountain-lion