Operazione non consentita su root - El Capitan (rootless disabilitato)

Sto cercando di spostare qualcosa in /usr/bin su OS X El Capitan. Ho disabilitato rootless usando i seguenti comandi: sudo nvram boot-args="rootless=0"; sudo reboot, ma continuo a ricevere lo stesso errore:

MacBook-Air:~ Mark$ sudo cp class-dump /usr/bin
Password:
cp: /usr/bin/class-dump: Operation not permitted
MacBook-Air:~ Mark$ sudo mv class-dump /usr/bin
mv: rename class-dump to /usr/bin/class-dump: Operation not permitted
Soluzione

Nvm. Per chiunque altro abbia questo problema è necessario riavviare il mac e premere ⌘+R all'avvio. Poi andate in Utility > Terminal e digitate i seguenti comandi:

csrutil disable
reboot 

Questo è il risultato di System Integrity Protection. Maggiori informazioni qui.

EDIT

Se sapete cosa state facendo e siete abituati a far funzionare Linux, dovreste usare la soluzione di cui sopra, dato che molte delle restrizioni SIP sono una completa spina nel fianco.

Tuttavia, se sei un tinker/noob/"poweruser" e non sai cosa stai facendo, questo può essere molto pericoloso e sei meglio se usi la risposta sotto.

Commentari (14)

La soluzione corretta è copiare o installare in /usr/local/bin e non /usr/bin. Questo è dovuto alla System Integrity Protection (SIP). SIP rende /usr/bin di sola lettura ma lascia /usr/local in lettura-scrittura.

SIP non dovrebbe essere disabilitato come indicato nella risposta sopra perché aggiunge un altro livello di protezione contro il malware che ottiene l'accesso come root. Qui è una spiegazione completa di cosa fa SIP e perché è utile.

Come suggerito in questa risposta non si dovrebbe disabilitare SIP (modalità senza root) "Non è raccomandato disabilitare la modalità senza root! La pratica migliore è quella di installare roba personalizzata in "/usr/local" solo."

Commentari (7)

Se vuoi prendere il controllo di /usr/bin/

dovrai riavviare il tuo sistema:

Subito dopo il suono di avvio, tenere premuto Command-R per avviare il sistema di ripristino

Clicca sul menu Utilità e seleziona Terminale

Digitare csrutil disable e premere return

Fare clic sul menu e selezionare Restart

Una volta che hai impegnato le tue modifiche, assicurati di riabilitare il SIP! Fa molto per proteggere il vostro sistema. (Stessi passi come sopra tranne che per il tipo: csrutil enable)

Commentari (0)