Das bekomme ich immer wieder:
ascendermedia@magic2tower:~$ sudo apt-get install flashplugin-installer
bash: sudo: command not found
ascendermedia@magic2tower:~$ sudo apt-get install flashplugin-installer
bash: sudo: command not found
ascendermedia@magic2tower:~$ apt-get install flashplugin-installer
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?
ascendermedia@magic2tower:~$ sudo aptitude install flashplugin-nonfree
bash: sudo: command not found
ascendermedia@magic2tower:~$ aptitude install flashplugin-nonfree
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?
ascendermedia@magic2tower:~$
Was mache ich falsch?
quelle
sudo
Befehle nicht nur "als wären Sie root" ausgeführt werden, sondern tatsächlich als root. Wenn Sie sich den Prozess ansehen, werden Sie feststellen, dass er als root ausgeführt wird und nicht als Ihre Benutzer-ID. Übrigens können Sie auf Computern, die standardmäßig nicht für die interaktive Anmeldung als Root eingerichtet sind, einfachsudo bash
eine Root-Shell aufrufen. :)sudo -i
ist allerdings vorzuziehen, da es Ihre aktuelle Shell respektiert.Sie benötigen Root-Rechte, um Systemaktualisierungen über auszuführen
apt-get
.Sie können mit zu einem Root-Konto wechseln
su root
. Es scheint, dass Sie dassudo
Programm nicht installiert haben.quelle
sudo
Berechtigungen, er hat noch nicht einmalsudo
installiert.sudo
.PATH
.sudo
undapt-get
beide installiert sind/usr/bin
standardmäßig (zumindest auf Debian).Was bedeutet "bist du root?"
Um Pakete systemweit installieren zu können (was
apt-get
funktioniert), sind Root-Rechte erforderlich, da Sie Systemdateien erstellen und ändern (root
der übliche Name für das * nix-Administratorkonto).Die Meldung "Sind Sie root?" Erinnert Sie sanft daran, dass Sie "root sein müssen", um ausgeführt werden zu können
apt-get install
. Dies ist der häufigste Grund für das Problem (siehe oben):.
Wie werde ich root?
su
Die traditionelle Art, "Wurzel zu werden", ist zu rennen
su
(und das Passwort des root-Benutzers anzugeben). su (1) steht für s uper u ser oder s Hexen u ser.Beachten Sie, dass es verwendet werden kann, um ein beliebiger Benutzer zu werden. Sie können also ausführen
su john
, um eine Shell als john abzurufen. Laufensu
ohne Benutzernamen ist eine Abkürzung fürsu root
.Damit dies funktioniert, muss das Root-Benutzerkonto aktiviert und ein Kennwort festgelegt sein. Einige Systeme sind (auch standardmäßig) so konfiguriert, dass das Root-Konto deaktiviert ist, um jemanden zu vermeiden. ein Angreifer-Login mit dem Administrator-Account. In diesen Fällen bieten sie eine andere Möglichkeit, Verwaltungsbefehle wie sudo auszuführen.
sudo
sudo (1) ist ein Programm, mit dem Sie einen Befehl als anderer Benutzer ausführen können (wie oben, normalerweise für root). Es ist in konfiguriert
/etc/sudoers
und ermöglicht eine feinere Steuerung, z. B. das Ausführen eines einzelnen Programms als Root für einen bestimmten Benutzer (für den möglicherweise erneut ein eigenes Kennwort erforderlich ist). Außerdem bietet es Protokollierungsfunktionen (z. B. " john hat destroy-system als root ausgeführt ").Es gibt andere Optionen für das Ausführen mit erhöhten Berechtigungen (wie z. B. Calife ), aber sie werden viel seltener verwendet.
Dein obiges Protokoll zeigt an, dass
sudo
es nicht auf magic2tower installiert ist.quelle
Sie haben bereits erklärt, was root ist, wenn Sie einen "Befehl nicht gefunden" haben, wahrscheinlich, weil Sie das Programm, das Sie ausführen möchten, nicht installiert haben oder weil Sie den Pfad nicht in Ihren Umgebungsvariablen haben.
Führen Sie den Befehl folgendermaßen aus:
In einigen Linux-Distributionen können Sie nicht zu root wechseln, daher muss jeder Befehl mit sudo ausgeführt werden. =)
quelle
bash: sudo: command not found
die beste Idee ist, es zu installierensudo apt-get install sudo
, und wenn es Ihnen den gleichen Fehler gibt, erfahren Sie, was Rekursion istsudo
.