Quando tento criar um link simbólico para um binário na minha pasta / usr / bin, recebo um erro de operação não permitida:
sudo ln -s /usr/bin/python2.7 /usr/bin/python2
ln: /usr/bin/python2: Operation not permitted
Mesmo como sudo, recebo este erro.
Respostas:
Por que não consigo criar um link simbólico
/usr/bin
?O novo recurso System Integrity Protection da El Capitan evita alterações em várias partes centrais do OS X, incluindo a maioria
/usr/
, até mesmo pelo root.Como posso ainda adicionar arquivos executáveis ao meu caminho?
As personalizações locais, como o que você está fazendo, pertencem em
/usr/local
vez disso. O caminho/usr/local/bin
não existe por padrão, mas você pode criá-lo e colocar binários personalizados (e links simbólicos) nele:Observe que embora
/usr/local/bin
não exista por padrão, ele está no PATH padrão, portanto, assim que você criá-lo, os comandos serão pesquisados.Desativando SIP
Também é possível desativar a Proteção de integridade do sistema, mas geralmente é melhor deixá-la ativada e fazer a personalização em locais mais apropriados. Uma pergunta do Apple Stack Exchange tem mais detalhes sobre isso: O que é realmente o recurso Rootless no El-Captain? .
fonte
Eu criei o link simbólico para Sublime Text 3 no Mac OS High Sierra como
Também estava tentando criar o link simbólico em "/ usr / bin" e obtive Operação não permitida.
Aí criei o link simbólico em "/ usr / local / bin" e não houve erro. O link simbólico funciona bem. Apenas certifique-se de que "/ usr / local / bin" esteja no caminho.
Portanto, parece que o acesso a "/ usr / bin" é restrito.
fonte
Reinicie o sistema -> imprensa longo CMD + R . selecione um terminal no menu de utilitários, digite o seguinte comando csrutil disable close terminal e reinicie o sistema.
fonte
sudo
.se você não for capaz de criar um link simbólico devido a um problema de permissão, será devido a "csrutil". Após desativar o csrutil, você pode criar um link simbólico. Siga estas etapas para desativar o CSRUtill:
Reinicie o seu Mac. Antes de iniciar o OS X, mantenha pressionado Command-R e mantenha-o pressionado até ver um ícone da Apple e uma barra de progresso. Liberação. Isso inicializa você na recuperação. No menu Utilitários (na barra superior), selecione Terminal. No prompt, digite exatamente o seguinte e pressione Return: csrutil disable O Terminal deve exibir uma mensagem informando que o SIP foi desativado. No menu , selecione Reiniciar.
fonte
Tente executar
sudo su
primeiro e, em seguida, execute o comando com nível de root.fonte