web-dev-qa-db-fra.com

Redémarrage quotidien du serveur cron?

Je veux créer un travail cron qui exécute daiy à l'heure prévue et qui redémarre le serveur Ubuntu.

J'essaie d'ajouter reboot uniquement dans cron, mais cela ne fonctionne pas, alors que cela fonctionne lorsque j'essaie de l'exécuter à partir de la CLI.

Merci d'indiquer quelle commande dois-je ajouter dans cron pour qu'il redémarre le serveur quotidiennement à une heure précise.

10
Prashant Kumar

Vous devez exécuter la commande suivante:

/sbin/shutdown -r now

avec racine pirviliges. La façon de le faire est d’utiliser la crontab de root, pas votre crontab d’utilisateur. Un Sudo avant la commande habituelle crontab fait cela:

Sudo crontab -e

Conseil: Vous pouvez changer l'éditeur standard du shell pour des éléments tels que crontab et visudo avec Sudo update-alternatives --config editor (et en sélectionnant l'éditeur de votre choix.

En modifiant la crontab, vous devez ajouter la ligne suivante à votre fichier:

# For more information see the manual pages of crontab(5) and cron(8)
# 
# m h  dom mon dow   command  

@daily root /sbin/shutdown -r now

Le "@daily" est un raccourci pour chaque jour à minuit (équivalent à "0 0 * * *"). Au fait, pourquoi voulez-vous un redémarrage quotidien?

EDIT - voir https://help.ubuntu.com/community/CronHowto pour ce qui suit: "Les commandes Crontab sont généralement stockées dans le fichier crontab appartenant à votre compte utilisateur (et exécuté avec le niveau de Si vous souhaitez exécuter régulièrement une commande nécessitant des autorisations administratives, éditez le fichier crontab racine: Sudo crontab -e "

EDIT - merci à @charlesbridge pour son commentaire - réponse modifiée pour inclure le chemin complet

23
Clive van Hilten