2016-04-19 24 views
13

Quando cerco di link simbolico un binario nella mia cartella/usr/bin, ottengo un Operazione non consentita errore:Non è possibile creare un link simbolico all'interno di/usr/bin anche se sudo

sudo ln -s /usr/bin/python2.7 /usr/bin/python2 
ln: /usr/bin/python2: Operation not permitted 

Anche da sudo, Ho ricevuto questo errore.

+0

Qual è il tuo 1.OS 2.Distribuzione 3. File system per favore? –

+0

Mac OSX El Capitan 10.11.4 – egidra

+0

Avete provato quanto segue: http://stackoverflow.com/questions/32659348/operation-not-permitted-when-on-root-el-capitan-rootless-disabled? –

risposta

26

La nuova funzione System Integrity Protection di El Capitan impedisce le modifiche a diverse parti principali di OS X, inclusa la maggior parte di/usr, anche da root. Le personalizzazioni locali, come quello che stai facendo, appartengono invece a/usr/local./Usr/local/bin non esiste per impostazione predefinita, ma è possibile creare e mettere binari su misura (e link simbolici) in esso:

sudo mkdir -p /usr/local/bin 
sudo ln -s /usr/bin/python2.7 /usr/local/bin/python2 

(Si noti che mentre/usr/local/bin non esiste per impostazione predefinita, è nel percorso predefinito, quindi non appena lo si crea, sarà cercata per i comandi.)

E 'anche possibile disabilitare il sistema di protezione dell'integrità, ma è generalmente meglio lasciarlo acceso e personalizzazione in posizioni più appropriate. Vedi this apple.SE question for more details.

+0

Questa risposta mi ha aiutato a risolvere un problema che stavo avendo. Grazie! – Adam

-1

Riavviare il sistema -> premere a lungo cmd + R. selezionare un terminale dal menu utility digitare il seguente comando csrutil disable chiudere il terminale e riavviare il sistema.

+1

Disattiva la protezione dell'integrità del sistema. Probabilmente è meglio trovare un'altra soluzione più sicura. – MattSidor

1

ho creato il collegamento simbolico per Sublime Text 3 in Mac OS High Sierra come

sudo ln -s /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl /usr/local/bin/ 

ero anche cercando di creare il collegamento simbolico in "/ usr/bin" e stavo Operazione non consentita.

Quindi ho creato il collegamento simbolico in "/ usr/local/bin" e non si è verificato alcun errore. Il collegamento simbolico funziona bene. Assicurati che "/ usr/local/bin" sia nel percorso.

Quindi, sembra che l'accesso a "/ usr/bin" sia limitato.

Problemi correlati