Welche Berechtigungen muss ich meinem Benutzer erteilen, damit er den Befehl „shutdown -r 5“ von cron aus ausführen kann?

Welche Berechtigungen muss ich meinem Benutzer erteilen, damit er den Befehl „shutdown -r 5“ von cron aus ausführen kann?

Ich habe ein Bash-Skript, das ich unter Linux in /etc/crontab ausführe

$ uname -a
Linux mymachine.com 3.4.76-65.111.amzn1.x86_64 #1 SMP Tue Jan 14 21:06:49 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

Das Bash-Skript enthält eine Zeile

sudo shutdown -r 5

Wenn der Cron-Job jedoch ausgeführt wird (als Benutzer mit dem Namen „myuser“), wird die Maschine nie neu gestartet und ich finde stattdessen Folgendes in den Protokollen

[sudo] password for myuser:

Was muss ich tun, um diesem Benutzer die Möglichkeit zu geben, von Cron aus neu zu starten? Es ist nicht möglich, dieses Skript als anderer Benutzer auszuführen.

Antwort1

Sie benötigen eine Zeile mit /etc/sudoersfolgendem Inhalt:

myuser ALL = NOPASSWD:  /sbin/shutdown

Der NOPASSWDTeil weist sudodarauf hin myuser, den Shutdown-Befehl unter Angabe eines Kennworts ausführen zu lassen.

Um eine solche Zeile hinzuzufügen /etc/sudoers, führen Sie (als Root) Folgendes aus:

sudoedit /etc/sudoers

sudoeditüberprüft Ihre aktualisierte Version der Datei vor der Installation auf Fehler. Dies ist daher sicherer, als die Datei direkt zu bearbeiten.

verwandte Informationen