Wie führe ich eine Binärdatei `/usr/sbin/` in Cron aus?

Wie führe ich eine Binärdatei `/usr/sbin/` in Cron aus?

Als Root habe ich crontab -emein Skript hinzugefügt. Das Skript verwendet jedoch eine Binärdatei /usr/sbin/und ich erhalte eine Fehlermeldung, dass diese nicht existiert, wenn das Skript von Cron ausgeführt wird. Wie behebe ich das?

Antwort1

Sie sollten einfach den vollständigen Pfad für die Binärdatei verwenden.

Angenommen, Sie möchten ipconfigeinen Cron-Job ausführen. Anstatt dass Ihre Crontab einen Befehl wie diesen enthält:

ipconfig

Sie würden das folgendermaßen ändern:

/usr/sbin/ipconfig

Denken Sie daran: Shell-Pfade teilen dem System lediglich mit, wo es nach Binärdateien/ausführbaren Dateien suchen soll, wenn Sie sie von der Befehlszeile aus aufrufen, um Ihnen das Eintippen von Befehlen zu erleichtern. Die Angabe des vollständigen Pfads für Binärdateien/ausführbare Dateien funktioniert bei der Verwendung von Skripten zu 100 % genauso.

Antwort2

Wahrscheinlich nicht der sauberste Ansatz, aber

Sie können die PATH-Variable in crontab festlegen. Fügen Sie diese als erste Zeile Ihrer crontab ein.

# start of crontab file
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

# your cron entries below

verwandte Informationen