GNU/Linux >> LINUX-Kenntnisse >  >> Linux

sudo:Befehl nicht gefunden

Mit dem Befehl su kann jeder Benutzer, der das Root-Passwort kennt, „root bekommen“ und alles tun, was der Root-Benutzer tun kann. Ein Konto, das „su – root“ verwendet, ist im Wesentlichen der Serveradministrator. Dies ist oft viel mehr Macht, als an Benutzer delegiert werden sollte. Eine bessere Vorgehensweise ist es, bestimmte Funktionen an Benutzer zu delegieren, anstatt systemweite Root-Rechte zu gewähren.

Der Befehl sudo ermöglicht es dem Serveradministrator, bestimmte Befehle an bestimmte Benutzer zu delegieren, ohne ihnen volle Berechtigungen auf dem Server zu gewähren. Die Delegierung erfolgt in der Datei /etc/sudoers mithilfe des Visudo-Editors. Benutzern und Gruppen können bestimmte Befehle zur Ausführung gegeben werden, um ihre Aufgaben zu erfüllen, ohne über vollständige Administratorrechte zu verfügen.

Syntax

Die Syntax des sudo-Befehls lautet:

$ sudo [options] {command}

Wenn beim Ausführen des sudo-Befehls der folgende Fehler auftritt:

sudo: command not found

Sie können versuchen, das sudo-Paket wie unten gezeigt entsprechend Ihrer Wahl der Distribution zu installieren.

Verteilung Befehl
Debian apt-get install sudo
Ubuntu apt-get install sudo
Alpin apk sudo hinzufügen
Arch Linux pacman -S sudo
Kali-Linux apt-get install sudo
CentOS yum install sudo
Fedora dnf install sudo
Raspbian apt-get install sudo

sudo-Befehlsbeispiele

1. Führen Sie einen Befehl als Superuser aus:

$ sudo less /var/log/syslog

2. Bearbeiten Sie eine Datei als Superuser mit Ihrem Standardeditor:

$ sudo --edit /etc/fstab

3. Führen Sie einen Befehl als ein anderer Benutzer und/oder eine andere Gruppe aus:

$ sudo --user=user --group=group id -a

4. Wiederholen Sie den letzten Befehl mit vorangestelltem `sudo` (nur in `bash`, `zsh`, etc.):

$ sudo !!

5. Starten Sie die Standard-Shell mit Superuser-Rechten und führen Sie Login-spezifische Dateien aus (`.profile`, `.bash_profile` usw.):

$ sudo --login

6. Starten Sie die Standard-Shell mit Superuser-Rechten, ohne die Umgebung zu ändern:

$ sudo --shell

7. Starten Sie die Standard-Shell als der angegebene Benutzer, laden Sie die Umgebung des Benutzers und lesen Sie Login-spezifische Dateien (`.profile`, `.bash_profile` usw.):

$ sudo --login --user=user

8. Listen Sie die erlaubten (und verbotenen) Befehle für den aufrufenden Benutzer auf:

$ sudo --list

Schlussfolgerung

Wie genau funktioniert das can-do-anything sudo-Programm? Es ist einfacher als Sie denken! Siehe folgenden Code:

$ which sudo
/usr/bin/sudo
$ ls -l $(which sudo)
-rwsr-xr-x 1 root root 145040 Jun 13  2022 /usr/bin/sudo

Wir stellen fest, dass die ausführbare Binärdatei sudo in Wirklichkeit ein Setuid-Root-Programm ist! Denken Sie also darüber nach:Immer wenn Sie ein Programm mit sudo ausführen, wird der sudo-Prozess sofort mit Root-Rechten ausgeführt – ohne Passwort, ohne viel Aufhebens. Aber natürlich muss der Benutzer aus Sicherheitsgründen das Passwort eingeben; Sobald sie es richtig eingegeben haben, fährt sudo mit der Ausführung fort und führt den gewünschten Befehl aus – als root. Wenn der Benutzer das Passwort nicht korrekt eingibt (in der Regel innerhalb von drei Versuchen), bricht sudo die Ausführung ab.


Linux
  1. Subscription-Manager:Befehl nicht gefunden

  2. visudo:Befehl nicht gefunden

  3. sudoedit:Befehl nicht gefunden

  4. id:Befehl nicht gefunden

  5. w:Befehl nicht gefunden

sudo:apt-add-repository:Befehl nicht gefunden?

Sudo:Befehl nicht gefunden?

nc:Befehl nicht gefunden

aws-shell:Befehl nicht gefunden

sudo:npm:Befehl nicht gefunden

sudo:python:Befehl nicht gefunden