Sie sollten einen Editor nicht als root ausführen, es sei denn, dies ist unbedingt erforderlich. Sie sollten sudoedit
verwenden , oder die Verwaltungsfunktionen Ihrer Desktop-Umgebung.
sudoedit
Einmal sudoedit
richtig eingerichtet ist, können Sie tun
SUDO_EDITOR="/opt/sublime_text/sublime_text -w" sudoedit yourfile
sudoedit
wird überprüfen, ob Sie dazu berechtigt sind, eine Kopie der Datei erstellen, die Sie bearbeiten können, ohne die IDs manuell zu ändern, Ihren Editor starten und dann, wenn der Editor beendet wird, die Datei zurückkopieren, falls sie geändert wurde.
Ich würde eher eine Funktion als einen Alias vorschlagen:
function susubl {
export SUDO_EDITOR="/opt/sublime_text/sublime_text -w"
sudoedit "[email protected]"
}
obwohl, wie Jeff Schaller betonte, Sie env
verwenden können um dies in einen Alias zu setzen und zu vermeiden, die Umgebung Ihrer Shell zu ändern:
alias susubl='env SUDO_EDITOR="/opt/sublime_text/sublime_text -w" sudoedit'
Die -w
Option stellt sicher, dass der Aufruf von Sublime Text wartet, bis die Dateien geschlossen sind, bevor er sudoedit
zurückgibt und zulässt Kopieren Sie die Dateien zurück.
Desktop-Umgebungen (GNOME)
In GNOME (und vielleicht anderen Desktop-Umgebungen) können Sie jeden GIO/GVFS-fähigen Editor mit dem admin://
verwenden Präfix; zum Beispiel
gedit admin:///path/to/your/file
Dies fordert die entsprechende Authentifizierung mit PolKit auf und öffnet dann die Datei zum Bearbeiten, wenn die Authentifizierung erfolgreich war.