Ich gehe davon aus, dass Sie ein ziemlicher Linux-Neuling sind.
Sie folgen einem Tutorial im Internet, in dem Sie aufgefordert werden, ein bestimmtes Programm zu installieren oder einen Befehl auszuführen. Wahrscheinlich hat es etwas mit einem Server zu tun.
Aber wenn Sie den Befehl ausführen, tritt dieser Fehler auf:
E: Sperrdatei /var/lib/dpkg/lock-frontend konnte nicht geöffnet werden – open (13: Berechtigung verweigert)
E: Die dpkg-Frontend-Sperre kann nicht abgerufen werden (/var/lib/dpkg/lock-frontend), sind Sie Root?
Ein ähnlicher Fehler ist dieser:
dpkg: error: Lese-/Schreibzugriff auf das dpkg-Datenbankverzeichnis /var/lib/dpkg erforderlich
E: Unterprozess dpkg –set-selections hat einen Fehlercode zurückgegeben (2)
E: Die Ausführung von dpkg ist fehlgeschlagen. Bist du verwurzelt?
Beide Fehler stellen Ihnen dieselbe Frage: Sind Sie Root? Und das ist die Antwort auf dieses Problem. Werde Wurzel.
Werden Sie Root, um diesen Fehler zu vermeiden
Wie wird man Root in Ubuntu oder Debian? Sie verwenden die sudo Befehl.
Ja das ist es. Welchen Befehl Sie auch immer ausgeführt haben, fügen Sie einfach hinzu sudo bevor.
sudo your_command
Befehl ausführen mit sudo
Sie werden aufgefordert, Ihr Benutzerkonto-Passwort einzugeben. Bitte beachten Sie, dass beim Eingeben des Passworts nichts auf dem Bildschirm angezeigt wird und das ist in Ordnung.
An Ihrem System ist nichts auszusetzen. In den meisten Linux-Systemen werden bei der Passworteingabe nicht die üblichen Sternchen oder ähnliches als “Sicherheitsmerkmal” angezeigt.
Geben Sie einfach Ihr Passwort ein und drücken Sie danach die Eingabetaste. Wenn das Kennwort richtig eingegeben wurde, sollten Sie den Befehl jetzt ausführen können.
Sie können diesen praktischen Linux-Befehlszeilen-Trick sogar verwenden, um einen vorherigen Befehl mit auszuführen sudo:
sudo !!
Das war einfach und funktioniert sofort, es sei denn, Sie haben keine sudo Zugriff. Dann wird ein anderer Fehler angezeigt.
Wird der Fehler “Benutzer ist nicht in der Sudoer-Datei” angezeigt?
Einige Benutzer können keine Befehle mit ausführen sudo
Wenn Sie Ubuntu installieren, müssen Sie ein Benutzerkonto erstellen. Dieser Benutzer wird automatisch gewährt sudo Macht, Befehle als Root auszuführen, wenn dies erforderlich ist.
Dies geschieht auf dem Ubuntu-Desktop, nicht auf Servern. Die meisten Server-Distributionen haben ein separates Root-Konto. Wenn Sie separat ein reguläres Konto erstellen, müssen Sie den Benutzer zu sudoer hinzufügen, damit dieser normale Benutzer verwenden kann sudo.
Im obigen Screenshot hatte ich diesen zusätzlichen Benutzer erstellt, aber nicht zum hinzugefügt. sudo Gruppe. Dies bedeutet, dass der Benutzer ‘prakash’ hier keine Rechte hat, die sudo Befehl und daher beschwert sich das System, dass ‘prakash nicht in der sudoers-Datei ist’.
Wo wird der Vorfall gemeldet?
Ein falscher sudo Versuch wird den Systemprotokollen hinzugefügt. Es protokolliert den Benutzernamen, die Nummer des virtuellen Terminals, den Ort, von dem aus der Befehl ausgeführt wurde und welcher Befehl ausgeführt wurde.
Falsch sudo Versuche werden im System protokolliert
Der Speicherort dieser Protokolle unterscheidet sich von Verteilung zu Verteilung.
Normalerweise finden Sie es in den Journalctl-Protokollen oder in der Datei /var/log/auth.log in Ubuntu, in der Datei /var/log/audit/audit.log in Fedora.
Was können Sie tun, wenn ein Benutzer nicht in der Sudoer-Liste ist?
Was können Sie tun, wenn Sie es nicht verwenden können? sudo mit dem aktuellen Benutzerkonto? Zuerst, überprüfen, ob der Benutzer hat sudo Rechte oder nicht. Wenn nicht, hier sind einige Optionen für Sie:
- Melden Sie sich als Root an oder wechseln Sie zu Root (wenn Sie ein Root-Passwort haben).
- Fügen Sie den Benutzer zur Sudoer-Liste hinzu (Wenn Sie haben admin/sudo Rechte von einem anderen Benutzerkonto).
- Wenn Sie sich in einem Linux-Mehrbenutzersystem befinden und kein Root- oder sudo selbst zugreifen, bitten Sie Ihren Systemadministrator, entweder Ihrem Benutzer zu gewähren sudo greifen Sie auf die Anwendung zu, die Sie installieren möchten, oder installieren Sie sie.
Hat das geholfen?
Sudo ist ein sehr umfassender Sicherheitsmechanismus, und es ist viel mehr, als nur einem normalen Benutzer zu erlauben, root zu werden. Es hilft bei der Überprüfung des Systems, um zu wissen, welcher Benutzer welchen Befehl mit ausgeführt hat sudo. Es kann auch so konfiguriert werden, dass ein bestimmter Benutzer nur bestimmte Befehle mit ausführen kann sudo.
Sie werden nicht so granular sehen sudo Konfiguration auf Desktop-Linux, wo es so vorkonfiguriert ist, dass jeder Benutzer im sudo Gruppe, um einen beliebigen Befehl als Root auszuführen mit sudo. Mehr zu sudo in einem anderen Artikel.
Ich hoffe, dass Sie beim Lösen dieses klassischen Anfängerproblems erste Einblicke in die sudo Befehl. Lassen Sie mich wissen, wenn Sie weitere Fragen zu diesem Thema im Kommentarbereich haben.