
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/sudoers
folgendem Inhalt:
myuser ALL = NOPASSWD: /sbin/shutdown
Der NOPASSWD
Teil weist sudo
darauf 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.