Frage Warum muss ich / etc / sudoers mit visudo bearbeiten?


Mir ist aufgefallen, dass die sudoers-Datei und die cron-Konfigurationsdatei im Vergleich zu anderen Konfigurationsdateien unter Linux eine besondere Funktionsweise haben. Sie müssen mit einem speziellen Wrapper und nicht mit einem Texteditor bearbeitet werden. Warum ist das?


48
2018-06-16 01:50


Ursprung


Standortübergreifendes Duplikat - MD XF


Antworten:


Sie verwenden visudo hauptsächlich, um zu verhindern, dass Ihr System beschädigt wird. Visudo überprüft Ihre Änderungen, um sicherzustellen, dass Sie nichts kaputt gemacht haben. Wenn du etwas kaputt gemacht hast, könntest du deine Fähigkeit, es zu reparieren oder alles zu tun, was Privilegien erfordert, komplett zerstören, ohne in einen Rettungsmodus zu starten.

Die Manpage beschreibt diese.

visudo bearbeitet die sudoers-Datei in a   sichere Mode, analog zu vipw (8).   visudo sperrt die Sudoers-Datei gegen   mehrere gleichzeitige Bearbeitungen, bietet   grundlegende Gesundheitsüberprüfungen und Prüfungen für   Fehler analysieren. Wenn die Sudoers-Datei ist   Sie werden gerade bearbeitet   erhalten Sie eine Nachricht, um es später erneut zu versuchen.


67
2018-06-16 01:57



Interessant! +1, um eine einfache Erklärung für etwas zu geben, das ich vor langer Zeit hätte wissen sollen :) - Greg Meehan
Das Verhalten von visudo ist generisch als Befehl sudoedit verfügbar. Dies macht den gleichen Lock / Copy / Edit / Copy / Unlock-Zyklus (natürlich nicht mit dem Parse-Schritt). Ein Vorteil ist, dass Sie den Benutzern Sudo Zugriff auf die Bearbeitung von root-eigenen Dateien gewähren können, ohne einen Editor als root zu starten, wodurch sie möglicherweise eine Shell aus dem Editor heraus starten können. Wenn ich bei der Ausführung von sudoedit meinen Editor verliere, ist mein euid immer noch mein eigener. - James F


Zoredache Antwort ist perfekt.

Eine weitere Sache, die es wert ist, erwähnt zu werden. Sie können Ihren bevorzugten Editor verwenden, indem Sie festlegen EDITOR oder VISUAL:

export EDITOR=whatevertexteditoryouwant
export VISUAL=whatevertexteditoryouwant

Oder:

EDITOR=whatevertexteditoryouwant visudo

17
2018-06-16 07:19



Wenn Sie das tun, wird es immer noch den Syntax-Check-Schritt tun, oder es wird äquivalent zum Aufruf von sudoedit wie @James F vorgeschlagen? - o0'.
Ja, ist die Antwort auf Ihre Frage. Sie können fast jeden Editor verwenden, den Sie von cli aus aufrufen können. - cstamas
Es war keine Ja- oder Nein-Frage: V - o0'.
Es wird tun die Syntaxprüfung. - cstamas