Linux-sudo-Befehl

Linux 命令大全Linux-Befehlsreferenz

sudo steht für "Super User DO" und ermöglicht autorisierten Benutzern, Befehle als anderer Benutzer (normalerweise der root-Benutzer) auszuführen. Mit anderen Worten: Über sudo ausgeführte Befehle sind so, als hätte root sie persönlich ausgeführt.

Nutzungsberechtigungen: Benutzer, die in /etc/sudoers aufgeführt sind.

Syntax

sudo [选项] 命令

Zum Beispiel:

sudo apt update          # 以 root 权限更新软件包列表
sudo vim /etc/hosts     # 编辑需要 root 权限的文件

Parameterbeschreibung:

  • -i: Simuliert die erstmalige Anmeldung, lädt die Umgebung des Zielbenutzers
  • -s: Eine Shell ausführen
  • -uuser: Als der angegebene Benutzer ausführen
  • -l: Die sudo-Befehle auflisten, die der aktuelle Benutzer ausführen kann
  • -v: Benutzeranmeldeinformationen überprüfen (die sudo-Sitzung verlängern)
  • -k: Den sudo-Anmeldeinformationscache widerrufen

Beispiele

Einen einzelnen Befehl mit Root-Rechten ausführen:

sudo apt update
sudo systemctl restart nginx
sudo mkdir /opt/myapp

Zur Shell des root-Benutzers wechseln:

sudo -i    # 登录shell,加载root环境变量
sudo -s    # 非登录shell
sudo su -  # 另一种方式

Einen Befehl als anderer Benutzer ausführen:

sudo -u username command
sudo -u postgres psql  # 以 postgres 用户运行 psql

Verfügbare Berechtigungen prüfen:

sudo -l

Systemdateien bearbeiten:

sudo nano /etc/hosts
sudo vim /etc/nginx/nginx.conf

Konfigurationsdatei

Die sudo-Konfiguration wird in der Datei /etc/sudoers gespeichert und sollte mit dem Befehl visudo bearbeitet werden:

sudo visudo

Allgemeine Konfigurationsbeispiele:

# 允许用户免密码执行所有命令
username ALL=(ALL) NOPASSWD: ALL

# 允许用户组执行特定命令
%wheel ALL=(ALL) /bin/systemctl, /usr/bin/apt

Häufig gestellte Fragen

Benutzer nicht in der sudoers-Datei:

# 需要 root 用户将目标用户加入 sudo 组:
usermod -aG sudo username  # Ubuntu/Debian
usermod -aG wheel username # CentOS/RHEL

Anpassen der Cache-Dauer:

Ändern Sie timestamp_timeout in /etc/sudoers (Einheit: Minuten):

Defaults timestamp_timeout=30

Unterschiede zwischen su und sudo

Merkmal su sudo
Passwort erforderlich Passwort des Zielbenutzers Passwort des aktuellen Benutzers
Sitzungsdauer Bis zum manuellen Beenden Einzelner Befehl oder kurzzeitiger Cache
Konfigurationskomplexität Einfach Erfordert Konfiguration von sudoers
Sicherheit Erfordert die Kenntnis des Root-Passworts Granularere Berechtigungskontrolle
Auditierung Eingeschränkt Ausführlichere Protokolle

Obwohl der Befehl su einfach und direkt ist, ist sudo in der modernen Systemadministration normalerweise die empfohlene Wahl, da es bessere Sicherheits- und Auditfunktionen bietet.

Linux 命令大全Linux-Befehlsreferenz

Andere Erweiterungen