Ask Ubuntu is a question and answer site for Ubuntu users and developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

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.

share|improve this question
May I ask why you need to reboot a server on a daily basis? This is an indication to me you're doing things wrong. Probably. – gertvdijk Jan 7 '13 at 13:04
@gertvdijk i've run into situations where you need to reboot a machine regularly. Proprietary software that gets a bad memory leak after ~30 hours of uptime, things like that. – James Jan 7 '13 at 13:08
Gaming servers (cough) Minecraft (cough) often ramleak or somehow fork into hundreds of processes. – Kaz Wolfe Dec 23 '13 at 21:45
up vote 12 down vote accepted

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 than selecting the editor of your choice.

Editing the crontab you should add the following line to you 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

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 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

share|improve this answer
With cron, its always safest to use full paths: /sbin/shutdown -r – charlesbridge Jan 7 '13 at 12:59
what is the root do between the time day setting and the command? shouldn't it just be @daily /sbin/shutdown -r now in the root users cronfile? TIA – Ominus Aug 19 '14 at 21:35
The following command has the same effect: /sbin/reboot. – Marc Vanhoomissen May 31 at 10:36

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.