Come recuperare da "chown -R $ USER / usr /"?

2

Ho eseguito un 'chown' su tutto sotto / usr ad un utente non root. Pensato per eseguirlo per / usr / local / Ora ho visualizzato l'errore sotto sul terminale di apertura

login(89809,0x7fff7bac5960) malloc: *** error for object 0x7fc7cb500b40: pointer being freed was not allocated
*** set a breakpoint in malloc_error_break to debug

[Process completed]
    
posta Pete_ch 22.09.2013 - 16:44
fonte

2 risposte

4

Se non riesci a ripristinare /usr/ da un backup, puoi prima avviarlo in modalità utente singolo (tenendo premuto command-S all'avvio) ed eseguire chown -R root /usr/ .

Durante la mia installazione, tutti i file sotto /usr/local/ erano di proprietà di root o me, alcuni file sotto /usr/ erano di proprietà di _uucp e tutti gli altri file sotto /usr/ erano di proprietà di root:

$ sudo find /usr/local ! -user root ! -user $USER
$ sudo find /usr/!(local) ! -user root -print0|xargs -0 stat -f '%Su %N'
_uucp /usr/bin/cu
_uucp /usr/bin/uucp
_uucp /usr/bin/uuname
_uucp /usr/bin/uustat
_uucp /usr/bin/uux
_uucp /usr/sbin/uucico
_uucp /usr/sbin/uuxqt
_uucp /usr/share/uucp

Ciò cambierebbe il proprietario dei file uucp :

sudo chown _uucp /usr/bin/{cu,uucp,uuname,uustat,uux} /usr/sbin/{uucico,uuxqt} /usr/share/uucp

/usr/local/ non esiste in una nuova installazione di OS X. Se hai utilizzato solo /usr/local/ con Homebrew, potresti eliminare /usr/local/ e quindi reinstallare Homebrew.

In alternativa, puoi usare Pacifist per copiare il /usr/ predefinito da un programma di installazione di OS X scaricato da App Store. Effettuare un'installazione di aggiornamento di OS X dalla partizione di ripristino o l'aggiornamento a 10.9 potrebbe anche ripristinare i proprietari di alcuni file.

    
risposta data 23.09.2013 - 07:39
fonte
2

Penso che questo sia un caso in cui i permessi di riparazione effettivamente fanno qualcosa di utile. Ripristina i permessi corretti per tutti i file forniti da Apple, che a mio parere sono tutti tranne quelli in / usr / local. Quella directory contiene cose che hai aggiunto e quindi dovresti essere in grado di ricreare.

Per riparare le autorizzazioni Utilizzare Disk Utility.app e selezionare il disco di avvio nella lista dei dischi a sinistra. Ci saranno pulsanti per verificare o riparare permessi del disco.

    
risposta data 28.09.2013 - 13:33
fonte

Leggi altre domande sui tag