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 in root
(dh uid 0) zu ändern :
pkexec chown root /usr/lib/sudo/sudoers.so
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 dies sudo
jetzt funktioniert, empfehle ich, eine neue Frage einschließlich der Ausgabe von zu history
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 weder sudo
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:
chown root /usr/lib/sudo/sudoers.so
Wenn Sie eine Fehlermeldung erhalten, dass die Datei oder das Dateisystem nicht geändert werden kann, stellen Sie sie erneut bereit. Readwrite:
mount -rw -o remount /
(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 obigen chown
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:
reboot
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.
pkexec
Befehl ausgeführt haben?