Come posso aprire un file come root in TextEdit su Lion?

12

Come faccio ad aprire un file come root, in TextEdit? Ho provato questi comandi come root , ma TextEdit dice sempre che è bloccato:

open -e /etc/apache2/httpd.conf
open -e -F /etc/apache2/httpd.conf
open -e -F -W /etc/apache2/httpd.conf

E ovviamente sudo !! non fa differenza.

    
posta Znarkus 05.08.2011 - 14:53
fonte

6 risposte

12

Puoi aprire un'istanza textedit come root inserendo il percorso completo dell'eseguibile reale:

sudo -b "/Applications/Textedit.app/Contents/MacOS/TextEdit"

Una volta aperta l'istanza di root, puoi cercare il file che ti serve o farlo dalla riga di comando:

sudo su - root -c "open -e /etc/apache2/httpd.conf"
    
risposta data 05.08.2011 - 15:50
fonte
6

TextEdit non è davvero lo strumento giusto per modificare i file di configurazione - usa invece TextWrangler . È gratuito, ha la capacità integrata di modificare i file con accesso root da un account amministratore, oltre a cose come l'apertura di file e directory invisibili con facilità la modifica dei file su SFTP, ecc.

    
risposta data 06.08.2011 - 08:12
fonte
3

Ecco un modo per evitare di eseguire TextEdit come root:

EDITOR='open -Wne' sudo -e /etc/apache2/httpd.conf

Dovrai uscire dalla copia di TextEdit dopo aver modificato il file.

sudo -e , talvolta noto come sudoedit ma non su OS X, crea una copia temporanea del file con permesso di scrittura per l'utente corrente, invoca un editor su di esso nel solito modo Unix e quindi lo copia indietro .

Le opzioni su open : -W aspetta che TextEdit si chiuda, quindi sudo sa quando copiare il file. -n assicura che sia in attesa su un'istanza separata di TextEdit, non già aperta che potresti non voler chiudere. Puoi anche sostituire -t anziché -e se hai un editor di testo preferito diverso da TextEdit.

Se hai già una variabile EDITOR impostata per utilizzare un editor grafico con il proprio strumento da riga di comando (come TextMate o BBEdit), allora non hai bisogno di nessuno di questi trucchi e puoi semplicemente usare sudo -e <file> direttamente.

    
risposta data 06.08.2011 - 07:26
fonte
2

Poiché l'utente root è disabilitato, l'unico modo per forzare un'app per OS X arbitraria a disporre delle autorizzazioni di root è abilitare root e accedere come root.

Le app possono ovviamente utilizzare l'API per chiedere al sistema l'autenticazione e far apparire la finestra di dialogo che ti aspetti quando ti viene richiesto un utente amministratore e una password. TextEdit non ha quella funzione, quindi devi aggirare i permessi dei file prima e dopo aver aperto e scritto i file desiderati.

Hai provato a utilizzare sudo open -a textedit per aprire l'app?

    
risposta data 05.08.2011 - 15:22
fonte
0
sudo chmod +w name_of_the_file
sudo open -a TextEdit name_of_the_file
sudo chmod -w name_of_the_file

Dovrebbe funzionare

    
risposta data 05.08.2011 - 14:59
fonte
-5
sudo nano /etc/hosts 

funziona per Lion

    
risposta data 21.02.2013 - 05:01
fonte

Leggi altre domande sui tag