Immer wenn ich versuche, etwas zu tun, das mein Passwort erfordert, wird Folgendes zurückgegeben:
u7ur7l3@ubuntu:~$ sudo
sudo: /usr/lib/sudo/sudoers.so must be owned by uid 0
sudo: fatal error, unable to load plugins
u7ur7l3@ubuntu:~$
Daher kann ich nichts vom Software Center / Paketmanager installieren oder Befehle im Terminal ausführen, für die mein Kennwort erforderlich ist. Ich kann mich einloggen, aber das war's auch schon.
Ich habe versehentlich die Berechtigungen einiger Dateien geändert und dann weitere geändert, um das Problem zu beheben: /. Jetzt bin ich völlig verloren, was zu tun ist.
Dies geschah, als ich versuchte, sudo mit pkexec wieder zum Laufen zu bringen:
u7ur7l3@ubuntu:~$ pkexec chown root /usr/lib/sudo/sudoers.so
Error getting authority: Error initializing authority: Error calling StartServiceByName for org.freedesktop.PolicyKit1: GDBus.Error:org.freedesktop.DBus.Error.Spawn.ExecFailed: Failed to execute program /usr/lib/dbus-1.0/dbus-daemon-launch-helper: Success
u7ur7l3@ubuntu:~$ sudo ls
sudo: /usr/lib/sudo/sudoers.so must be owned by uid 0 sudo: fatal error, unable to load plugins
Und um Berechtigungen zu ändern, habe ich Root-Aktionen als Delfin-Service / Plugin verwendet, sodass mir der Verlauf die Berechtigungsänderungen nicht anzeigt.
Ich habe gerade festgestellt, dass Sounds überhaupt nicht mehr funktionieren. Wenn ich in Phonon gehe, sind meine Standardeinstellungen und Wiedergabegeräte nicht einmal vorhanden. Außerdem habe ich keine Möglichkeit zum Herunterfahren, ich kann mich nur abmelden oder gehen.
quelle
pkexec
Befehl ausgeführt haben?sudo
PolicyKit (viapkexec
) funktionieren.Antworten:
Der Besitz mindestens einer Ihrer wichtigen Systemdateien ist falsch. Das ist eine schlechte Sache; Wenn dies vielen Systemdateien passiert ist (vielleicht haben Sie irgendwann einen großen
sudo chown
Befehl mit dem-R
Flag ausgeführt?), kann dies eine Reihe anderer Systemfehler und Instabilitäten verursachen. Also , wenn Sie Ubuntu vor kurzem installiert , können Sie neu installieren wie Adam Heathcote schlägt .Aber Sie müssen nicht neu installieren , dieses Problem zu beheben . Korrigieren Sie stattdessen einfach den Besitz dieser Datei. Wenn Sie danach Fehler zu anderen Dateien erhalten, können Sie diese auch beheben (obwohl Sie uns möglicherweise die Fehlermeldungen mitteilen müssen, damit wir Ihnen auch mitteilen können, wie Sie sie beheben können).
sudo
funktioniert nicht, aber die Verwendungsudo
ist eine von zwei Möglichkeiten für Administratoren , Aktionen als Root unter Ubuntu auszuführen . Das andere ist Polkit (früher PolicyKit genannt).Führen Sie diesen Befehl aus, der Polkit (via
pkexec
) verwendet, um den Besitz von/usr/lib/sudo/sudoers.so
back inroot
(dh uid 0) zu ändern :Versuchen Sie es dann
sudo
erneut. Sie können etwas Triviales ausführen und prüfen, ob eine Fehlermeldung angezeigt wird.sudo ls
Schließlich empfehle ich das Ausführen
history
, um alle von Ihnen ausgeführten Befehle anzuzeigen. Hoffentlich werden dadurch alle von Ihnen ausgeführten Befehle aufgelistet, deren Berechtigungen geändert wurden. Unter der Annahme, dass diessudo
jetzt funktioniert, empfehle ich, eine neue Frage einschließlich der Ausgabe von zuhistory
veröffentlichen, um Hilfe beim Rückgängigmachen aller von Ihnen vorgenommenen Änderungen des Dateieigentums und der Berechtigungen zu erhalten.Wenn
pkexec
es auch nicht funktioniert ...Du hast es versucht
pkexec
und es hat nicht funktioniert. Da wedersudo
noch Polkit daran arbeiten, dass Sie Aktionen als Root ausführen können, müssen Sie im Wiederherstellungsmodus booten und eine Root-Shell erhalten. Halten Sie dazu Shiftbeim Booten Ihres Computers die Taste gedrückt, um sicherzustellen, dass ein sichtbares GRUB-Startmenü angezeigt wird. Wählen Sie einen Eintrag, der die Wörter enthält Recovery - Modus ( in der Regel, sollten Sie die am nächsten an die Spitze wählen, die diese Wörter hat). Dann erhalten Sie ein Menü, in dem Sie eine Reihe von Optionen haben - wählen Sie die Option aus, die auf einer Root-Shell abgelegt werden soll.Detaillierte Anweisungen zum Zugriff auf eine Root-Shell im Wiederherstellungsmodus finden Sie hier:
Sobald Sie eine Root-Shell haben, führen Sie Folgendes aus:
Wenn Sie eine Fehlermeldung erhalten, dass die Datei oder das Dateisystem nicht geändert werden kann, stellen Sie sie erneut bereit. Readwrite:
(Quelle für die Idee des Remounting und wie es geht: diese meist nicht verwandte Antwort .)
Führen Sie dann nach dem Ausführen dieses
mount
Befehls den obigenchown
Befehl erneut aus und prüfen Sie, ob er funktioniert.Sobald Sie im Wiederherstellungsmodus fertig sind, können Sie neu starten, indem Sie Folgendes ausführen:
sudo
sollte dann funktionieren oder zumindest einen anderen Fehler geben.Beachten Sie schließlich, dass es angesichts der von Ihnen angezeigten Fehler wahrscheinlich ist, dass viele Dateien jetzt den falschen Besitz oder die falschen Berechtigungen haben. Es wäre ideal, wenn Sie herausfinden könnten, welche Dateien Sie auf diese Weise geändert haben. Wenn Sie beispielsweise herausfinden könnten, dass sich alle Dateien in einigen bestimmten Ordnern befinden, können Sie möglicherweise das vollständige Ausmaß der kürzlich aufgetretenen Probleme korrigieren.
Eine Neuinstallation ist definitiv eine Option, aber insbesondere wenn Sie nur den Besitz geändert haben (und keine Berechtigungen, die etwas schwieriger zu rekonstruieren sind, da sie stärker variieren), sollte es möglich sein, die Berechtigungen einfach rekursiv auf ihre ursprünglichen Eigentümer zurückzusetzen (wahrscheinlich normalerweise root) ) und den Schaden vollständig rückgängig machen.
Die
sudo
erste Arbeit ist ein erster Schritt. Hoffentlich können Sie dies mit der oben genannten Technik tun.quelle