Thursday, May 2, 2024
 Popular · Latest · Hot · Upcoming
42
rated 0 times [  42] [ 0]  / answers: 1 / hits: 81378  / 1 Year ago, sat, january 21, 2023, 3:26:53

I want to create a cron job which executes daiy at assigned time and it restart the ubuntu server.



I try to add reboot only in cron, but it is not working, whereas it works when I try to execute it from CLI.



Please advise, what command should I add in cron, so that it reboot the server daily at specific time.


More From » server

 Answers
3

You need to run the following command:


/sbin/shutdown -r now

with root pirviliges. The way to do it is to use root's crontab, not your user crontab. A sudo before the usual crontab command does that:


sudo crontab -e

Tip: You can switch the shell's standard editor for things like crontab and visudo with sudo update-alternatives --config editor and then select the editor of your choice.


Editing the crontab you should add the following line to your file:


# 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

One has to remove "root" if you edited with the command: sudo crontab -e.


The "@daily" here is a shortcut for every day at midnight (equivalent to "0 0 * * *"). By the way - why do you want a daily reboot?


EDIT - see https://help.ubuntu.com/community/CronHowto for the following: "Crontab commands are generally stored in the crontab file belonging to your user account (and executed with your user's level of permissions). If you want to regularly run a command requiring administrative permissions, edit the root crontab file: sudo crontab -e"


EDIT - thanks to @charlesbridge for his comment - edited answer to include the full path


[#33317] Sunday, January 22, 2023, 1 Year  [reply] [flag answer]
Only authorized users can answer the question. Please sign in first, or register a free account.
attagjump

Total Points: 272
Total Questions: 127
Total Answers: 124

Location: Taiwan
Member since Fri, Sep 17, 2021
3 Years ago
;