Ich habe es geschafft, die sudoers-Datei auf meinem Mac zu erstellen. z.B.
$ sudo visudo
>>> /etc/sudoers: syntax error near line 45 <<<
sudo: parse error in /etc/sudoers near line 45
sudo: no valid sudoers sources found, quitting
Also ging ich und holte die Standard-Sudoers-Datei von hier , loggte mich als root ein und kopierte sie von Documents nach /etc ... aber immer noch keine Freude.
Wenn ich versuche, 'visudo' mit root auszuführen, wird Sublime Text gestartet und ich sehe eine leere sudoers.tmp, von der ich verstehe, dass sie die Sperrdatei ist.
Wenn ich versuche, den Inhalt der heruntergeladenen sudoers-Datei mit Sublime in sudoers.tmp zu kopieren, erhalte ich den obigen Fehler.
Also, hat jemand eine Lösung dafür? Was sollte ich sehen, wenn ich den Befehl „visudo“, Sublime Text und sudoers.tmp ausführe?
vielen Dank, Georg
Wenn Ihr Editor visudo
nicht wie erwartet funktioniert, vielleicht weil Ihr Editor nicht richtig funktioniert, versuchen Sie, die EDITOR
Umgebungsvariable auf einen vernünftigen Wert zu setzen, und starten Sie dann visudo
:
EDITOR=nano visudo
für sh
, bash
, dash
, und kompatibel.
export EDITOR="emacsclient -t"
würde es überschrieben werdenIch bin heute auf dieses Problem gestoßen, und die obigen Informationen haben mir geholfen, aber ich wollte meinen Editor für andere Zwecke auf sublimieren lassen. Ich habe Folgendes zu meinem ~/.bash_profile hinzugefügt, was das Visudo-Problem löst, aber meinen Standardeditor für Git usw. nicht ändert.
alias visudo='EDITOR=vi sudo visudo'
Bei der Ausführung ändert sich der Editor für den folgenden Befehl in vi und Sie können die sudoers-Datei erfolgreich bearbeiten.
SUDO_EDITOR
statt setzen, EDITOR
um dies zu vermeiden. Auch EDITOR=vi sudo visudo
(ohne ein ;
vor dem sudo
) ändert den Wert der env-Variablen nur für diesen Befehl, nicht für die gesamte Shell.export SUDO_EDITOR='/usr/bin/vi'
meine hinzuzufügen ~/.bash_profile
, aber es schien den Befehl überhaupt nicht zu beeinflussen sudo visudo
, meine EDITOR-Umgebungsvariable schien immer noch in Kraft zu sein, zumindest auf meinem Computer mit OSX 10.9.5.sudo -e /path/to/file
, nicht für visudo
. Und sudo -e
darf nicht zum Bearbeiten der sudoers-Datei verwendet werden, da in diesem Fall keine Syntaxprüfung durchgeführt wird.alias visudo='VISUAL=vim sudo visudo'
stattdessen.
bot47
bash
als Shell. Versuchen Sie esEDITOR=nano visudo
als root.daktau
bot47
bot47
EDITOR=vi
wenn du masochistisch bist.