Fedora 14 verwendet standardmäßig vi, wenn visudo ausgeführt wird. Gibt es eine Möglichkeit, dies in etwas anderes zu ändern?
28
Das Hinzufügen Defaults editor=/path/to/editor
in die sudoers-Datei bewirkt, dass visudo den angegebenen Editor für Änderungen verwendet.
Wenn Ihr sudo-Paket mit --with-env-editor erstellt wurde, wie dies bei einigen Linux-Distributionen der Fall ist, können Sie die Umgebungsvariable EDITOR auch durch Ausführen von festlegen export EDITOR=/path/to/editor
. Wird dies in der Befehlszeile ausgeführt, wird es zurückgesetzt, sobald diese Shell-Sitzung beendet wird. Wenn Sie die Variable in einem ~ / .bashrc- oder / etc / -Profil festlegen, bleibt die Änderung bestehen.
visudo
ehrt$VISUAL
und nicht$EDITOR
?--with-env-editor
, was in letzter Zeit hier im Gedächtnis des Internets bedeutet. Außerdem hat das sudo-Paket vor einiger Zeit seine Standardeinstellung geändert, um vi als Standardeditor zu verwenden, was meines Erachtens mit einer Änderung des Verhaltens in Bezug auf die Akzeptanz von Umgebungsvariablen zusammenfiel. Ich habe keine klare Zeitleiste, wie, wann oder ob diese Ereignisse zu diesem Zeitpunkt in Beziehung zueinander stehen.Folgende
alternatives
(ursprünglich nur Debian und seine Forks, aber jetzt die meisten wichtigen Distributionen, IIUC).hat den Vorteil, dass
sudoers
erst mit dem Standardeditor bearbeitensudo
hat nicht gebaut worden , mit--with-env-editor
Von einer Kommandozeile:
sudo update-alternatives --config editor
sudo visudo
sollte jetzt den Editor Ihrer Wahl öffnen.quelle
Ein normales Unix-Programm, das einen Editor aufrufen möchte, führt das Programm aus, dessen Name sich in der Umgebungsvariablen
EDITOR
oder befindet.VISUAL
Wenn die Variable nicht festgelegt ist, ist dies eine systemabhängige Standardeinstellung. Viele, aber nicht alle Programme prüfen beidesEDITOR
undVISUAL
; Die Unterscheidung ist längst überholt (wenn Sie einmalEDITOR
mit einem Fernschreiber undVISUAL
einem „Glas“ -Terminal gearbeitet haben…), daher sollten Sie beide auf den gleichen Wert einstellen. Es gibt einige Meinungsverschiedenheiten darüber, ob der Inhalt der Variablen der vollständige Pfad zu einer ausführbaren Datei, ein nachgeschlagener Name für eine ausführbare Datei$PATH
oder ein Shell-Snippet sein soll. Daher sollten Sie sich an einen Pfad zu einer ausführbaren Datei halten, die kein Shell-Metazeichen enthält. Die Standardeinstellung des Systems, wenn keine Variable festgelegt ist, ist traditionellvi
, obwohl einige Distributionen dies zu einem neueren, freundlicheren Editor geändert haben, wie znano
.visudo
prüft beidesVISUAL
undEDITOR
(dies kann kompiliert werden, vermutlich, um root davon abzuhalten, einen Editor zu verwenden, dessen Sicherheit der Distributionshersteller nicht vertraut, aber selbst OpenBSD tut dies nicht).quelle
Mit diesen Schritten kann ich den Editor unter Ubuntu 12.04 auf vi für visudo einstellen. Sie funktionieren wahrscheinlich für die meisten Distributionen:
Befehl ausgeben:
Dies öffnet die sudoers-Datei in nano. In der Nähe der Spitze sehen Sie diese Linie:
Fügen Sie die folgende Zeile unter der obigen Zeile hinzu:
Speichern Sie die Datei und beenden Sie sie. Öffnen Sie visudo erneut als Standardbenutzer:
Die sudoers-Datei wird jetzt in VI geöffnet.
quelle
visudo
verwendetEDITOR
zum Beispiel die Variable.quelle