Sudoers-Datei wurde geändert und kann nicht mehr geöffnet werden. kann keine Datei mit root öffnen

5580
Karlo

Ich habe die Einstellungen in der Sudoers-Datei mit geändert

Sudo Visudo 

und versaut es. Wenn ich jetzt erneut versuche, eine Datei mit sudo zu öffnen, kann ich sie nicht mehr öffnen und ich erhalte die folgende Fehlermeldung:

>>> Sudoers-Datei: Syntaxfehler, Zeile 7 

Was jetzt?

Gibt es eine Möglichkeit, dieses Problem zu beheben (die Einstellungen rückgängig zu machen), oder muss ich eine neue Kopie von Linux installieren?

Der Grund, warum ich das alles bekommen habe, ist, dass ich "Q" gedrückt habe, während es mir sagte, dass es einen Fehler gab, der sehr dumm von mir war.

Vielen Dank.

BEARBEITEN

Meine Sudoers-Datei unterscheidet sich nicht von normalen Sudoers-Dateien. Ich habe gerade timestamp_timeout = 0 Zeile in diese Datei eingefügt und all diese Probleme traten auf. Ich tat, was James vorschlug, und entfernte sogar diese Zeile (timestamp_timeout = 0). Ich habe die Dateizugriffsrechte auf 0440 geändert, und es wurde normal gebootet. Dann erhalte ich dieselbe Fehlermeldung

sudoers file: syntax error, line 7  sudo: parse error in /etc/sudoers near line 7 
wie oben.

Was sollte ich jetzt tun ??

EDIT 2 Gelöst

Das habe ich gemacht:

  1. Booten Sie mit livecd
  2. Entfernen Sie die alte Sudoers-Datei
  3. Neue Sudoers-Datei erstellt und alles in diese Datei kopiert, dh minimale Konfigurationseinstellungen, die ich glücklicherweise in einer anderen Datei gespeichert hatte
  4. Dateiberechtigung in 0440 geändert
  5. Starten Sie normalerweise wieder von der Festplatte

Hurra !!

8
Sie könnten den Inhalt Ihrer Sudoers-Datei auf www.pastebin.com einfügen und uns einen Blick auf den schnellsten Weg erlauben. Andrioid vor 14 Jahren 0
Ich würde nach fehlenden # in Kommentaren, fehlenden Doppelpunkten, Gleichheitszeichen, Zeilenfortsetzungs-Backslashes usw. suchen. Dennis Williamson vor 14 Jahren 0

4 Antworten auf die Frage

8
James

Angenommen, Sie haben dem Root-Benutzer kein Passwort gegeben. Dies kann am einfachsten mit einer Live-CD wie Knoppix behoben werden . Booten der CD. Mounten Sie die lokale CD, bearbeiten Sie die Datei, heben Sie die Bereitstellung der CD auf und starten Sie den Computer neu.

6
Andrioid

Starten Sie den Computer einfach im Einzelbenutzermodus, indem Sie die folgenden Schritte ausführen:

  1. Starten Sie neu
  2. Wenn Grub startet, drücken Sie ESC (oder Escape).
  3. Drücken Sie 'e', ​​um die aktuelle Zeile zu bearbeiten
  4. Fügen Sie "single" am Ende der Zeile mit "linux" hinzu.
  5. Boot (drücken Sie b)

Dadurch wird der Computer nur mit einem Benutzer (root) gestartet. Von dort aus folgen Sie diesen Schritten:

  1. / usr / bin / vim / etc / sudoers (oder nano verwenden, ist möglicherweise einfacher für Sie), um das Problem zu beheben
  2. Wenn Sie sich nicht sicher sind, kopieren Sie das mitgelieferte Beispiel für sudoers aus "/ usr / share / doc / sudo / Examples" (variiert) und fügen Sie dort Ihren Benutzer hinzu.
  3. Speichern Sie die Datei und beenden Sie Vim
  4. Neustart, viel Spaß!
Ich habe mich gefragt, wann es nach einem Passwort fragt, bevor es die Einzelbenutzer-Shell gibt. James vor 14 Jahren 0
Diese Methode funktioniert nicht für alle Distros. Da es sich um eine bekannte Hintertür handelt, erzwingen einige Distributionen ein Login, bevor Sie zu einem Root-Prompt gelangen. Das hört sich so an, James. Telemachus vor 14 Jahren 0
Ich wusste nicht, dass Distros damit angefangen hatten, hat in den guten alten Slackware-Tagen immer für mich gearbeitet Andrioid vor 14 Jahren 0
Sie sollten die Verwendung von visudo over vim empfehlen: http://en.wikipedia.org/wiki/Visudo nagul vor 14 Jahren 0
3
Telemachus

James 'Idee, eine Live-CD zu verwenden (vorausgesetzt, das Root-Konto ist nicht aktiviert) ist eine gute Idee. Ich würde noch ein paar Punkte hinzufügen.

  • Zunächst könnten Sie Glück haben und eine Sicherungskopie der Datei / etc / sudoers wurde automatisch gespeichert, wenn Sie sie bearbeiteten. Suchen Sie in / etc nach einer Datei, die wie folgt aussieht sudoers~ (Sie können cddieses Verzeichnis auch ls -A ohne Rootberechtigungen ausführen, selbst wenn Sie die Dateien nicht als regulärer Benutzer lesen oder bearbeiten können.) Einige Editoren erstellen eine solche Sicherung, wenn überhaupt möglich, so dass Sie eine haben können, ohne sie explizit erstellt zu haben.
  • Zweitens: Wenn Sie nicht wissen, wie Sie die Datei bearbeiten, können Sie sie (oder den Bereich um die Zeile 7) hier oder anderswo veröffentlichen. Obwohl die Datei selbst mit der Sicherheit zu tun hat, enthält sie keine Passwörter, so dass die Veröffentlichung der Datei keinen unmittelbaren Schaden verursacht.
  • Beachten Sie schließlich, dass eine Fehlermeldung wie die, die Sie gesehen haben, nicht unbedingt bedeutet, dass das Problem selbst in Zeile 7 wörtlich ist. Der Fehler könnte in Zeile 4 sein, wurde aber in Zeile 7 sozusagen ausgelöst.
0
Torandi

Drücken Sie zum Bearbeiten e. Auf diese Weise können Sie die Datei bearbeiten und die Fehler korrigieren.

Durch Drücken von 'e', ​​wenn der Fehler angezeigt wird, nachdem Sie die Bearbeitung abgeschlossen haben, werden Sie wieder eingeblendet, damit Sie Ihre Fehler beheben können. Leider wird es Ihnen nicht ausdrücklich erwähnt. vor 14 Jahren 0