6

I wanted Crontab shut down the system daily but it didn't do so, did I misspelled something? This is my Crontab file:

 /etc/crontab: system-wide crontab
 Unlike any other crontab you don't have to run the `crontab'
 command to install the new version when you edit this file
 and files in /etc/cron.d. These files also have username fields,
 that none of the other crontabs do.

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

 m h dom mon dow user   command
17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )

Shutdown every day at 02:30 am

30 0 2 * * * /sbin/shutdown -h now

It's ok but I'm a bit new to Ubuntu, so I do open Crontab -e in the Terminal an it's looks like this:

# Edit this file to introduce tasks to be run by cron.

# Each task to run has to be defined through a single line indicating with
# different fields when the task will be run and what command to run for the
# task. To define the time you can provide concrete values for minute (m), 
# hour (h), day of month (dom), month (mon), and day of week (dow) or use 
# '*' in these fields (for 'any').

# Notice that tasks will be started based on the cron's system daemon's 
# notion of time and timezones. Output of the crontab jobs (including 
# errors) is sent through email to the user the crontab file belongs to 
# (unless redirected).

# For example, you can run a backup of all your user accounts at 5 a.m 
# every week with:

# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/

# For more information see the manual pages of crontab(5) and cron(8)

# m h dom mon dow command
30 02 * /sbin/shutdown -h now

So I should type my command at the end or how? and how to save it because I'm confused.

MarAvFe
  • 105
  • 3

4 Answers4

12

You have configured the crontab wrong do as following:

  1. In terminal type:

    sudo crontab -e
    
  2. Then give the entry for it like:

    30 02 * * * /sbin/shutdown -h now
    
David Foerster
  • 35,754
  • 55
  • 92
  • 145
Tarun
  • 4,187
  • 13
  • 49
  • 73
  • Yes its normal just append this line at the end of the line nothing else. – Tarun Nov 16 '13 at 11:03
  • ok but how to save it in Terminal? because I don't see save function over there. –  Nov 16 '13 at 11:14
  • 2
    see the link here: https://help.ubuntu.com/community/CronHowto – Tarun Nov 16 '13 at 13:09
  • it worked I saved it, it appears to be in there, thanks! but one more question this command will work everyday? I dont need to type in daily or every day or something like that? –  Nov 16 '13 at 13:12
  • yes it will work every day. Don't need to do anything. See the link above to get more familiar with how to set crontab. – Tarun Nov 16 '13 at 13:17
  • A key bit I was missing in reading this answer, (after trying my user's crontab with `sudo poweroff`) was that you want to use the root user's crontab, via `sudo`. D'oh. – Gertlex Jan 04 '22 at 15:45
0

Trying /sbin/poweroff just didn't make it happen. What worked for me was

$ sudo crontab -e

and then

# m h  dom mon dow   command
30 2 * * * sudo poweroff
MarAvFe
  • 105
  • 3
0

I got the same error can not find a way to solve it?
I add to crontab: 05*** /sbin/shutdown -r now

crontab: installing new crontab "/tmp/crontab.MbKRUJ/crontab":24: bad command errors in crontab file, can't install. Do you want to retry the same edit? (y/n)

  • This does not really answer the question. If you have a different question, you can ask it by clicking [Ask Question](https://askubuntu.com/questions/ask). To get notified when this question gets new answers, you can [follow this question](https://meta.stackexchange.com/q/345661). Once you have enough [reputation](https://askubuntu.com/help/whats-reputation), you can also [add a bounty](https://askubuntu.com/help/privileges/set-bounties) to draw more attention to this question. - [From Review](/review/late-answers/1288278) – David Mar 22 '23 at 17:03
0

just with

* * * * * sudo poweroff

it will be worked. unless you have password. remove password first from root with passwd -d yourusername

ddk
  • 1