Come eseguire app GUI come utente root in Mac OS X

Anonim

Chi ha familiarità con la riga di comando sa che l'esecuzione di cose con privilegi di superutente è in genere solo una questione di utilizzo del comando sudo. Ciò è ancora vero con l'avvio di app GUI in OS X con privilegi di root, ma non si tratta solo di anteporre sudo al comando open altrimenti utile, perché "open" avvia le app come utente originale, con o senza sudo. La soluzione invece è utilizzare sudo che punta direttamente all'eseguibile contenuto all'interno di un determinato file del pacchetto dell'applicazione.

Avvio delle app della GUI di OS X come utente root

La sintassi del comando è la seguente:

sudo /Percorso/A/Applicazione/NomeApplicazione.app/Percorso/A/Eseguibile

Nella maggior parte dei casi, si tratta di applicazioni archiviate nella directory /Applications/ e l'eseguibile è quasi sempre archiviato in Package/Contents/MacOS/ come qualunque sia il nome dell'applicazione:

sudo /Applicazioni/NomeApplicazione.app/Contents/MacOS/NomeApplicazione

Ad esempio, questo comando esegue la familiare app TextEdit come root:

sudo /Applications/TextEdit.app/Contents/MacOS/TextEdit

Per avviare TextEdit come app in background, il che significa che non si chiuderà se chiudi la finestra del terminale, applica il flag -b a sudo: sudo -b /Applicazioni/TextEdit .app/Contents/MacOS/TextEdit

Puoi confermare che l'applicazione è in esecuzione come root usando il comando ps con grep, sempre usando TextEdit come esempio:

ps au|grep TextEdit

In alternativa, puoi guardare l'app di gestione dei processi di OS X Activity Monitor e trovare l'applicazione in esecuzione lì come utente 'root', come mostrato nello screenshot in alto e nel breve video qui sotto:

Se intendi eseguire frequentemente una particolare app come root, potresti prendere in considerazione l'idea di inserire un alias in .bash_profile per abbreviare la stringa di comando.

Nonostante l'esecuzione come root, non tutti i file di sistema potrebbero essere modificabili e alcuni potrebbero essere contrassegnati come "Bloccati" quando vengono aperti in alcune app come TextEdit. Questo problema può spesso essere risolto abilitando l'utente root se non lo hai ancora fatto, ma non tutte le app avranno questa limitazione.Tuttavia, per alcune attività come la modifica del file hosts è comunque meglio attenersi alla riga di comando e a un editor basato su testo o utilizzare un'app come BBEdit o TextWrangler.

Come eseguire app GUI come utente root in Mac OS X