我装了centos,用一点一直没法搞定,就是定时关机。我只是想作这一件事:javascript
天天凌晨1点自动关机java
0 1 * * * shutdown now -h
然而,不管我如何设置,都是失败.
每当我睡了一觉,次日起床,发现机器还开着……我准备放弃了。
忽然发现,这样写的脚本是能够运行的python
* * * * * echo "hello world"
我只好改为写python脚原本完成centos
* * * * * python /etc/root/shutdown.py
大概是这个样子:code
#!/usr/bin/env python #--coding:utf-8-- from datetime import datetime import os checkTime = datetime(2017,05,18,7,28) currentTime = datetime.now().time() currentTime = datetime(2017,05,18,currentTime.hour,currentTime.minute) timeSpan = currentTime - checkTime print(currentTime) print(checkTime) print(timeSpan) print(timeSpan.total_seconds()) if timeSpan.total_seconds() > 0 and timeSpan.total_seconds() <120: os.system("shutdown now -h")
每分钟都去看看如今是凌晨1点多吗?若是是,就关机。。。
而后,始终以为哪里不对。crontab
忽然想起来看看当前的时间ip
date
原来是时区的问题,默认的好像是UTC(如今我不记得了)
时区改为上海,就解决了。utf-8
timedatectl list-timezones | grep Asia timedatectl set-timezone Asia/Shanghai date Fri May 19 22:27:01 CST 2017
原来,若是你的crontab也没有按时执行,你还得检查检查看看你当前的时区在哪里啊?ci
为了时间不乱,仍是装上ntpd好了。get
wget http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/ntp-4.2.8p10.tar.gz tar -zxvf ntp-4.2.8p10.tar.gz cd ntp-4.2.8p10 ./configure make make install
看看ntpd版本
ntpd --version
ntpd 4.2.8p10@1.3728-o Fri May 19 14:52:55 UTC 2017 (1)
试试crontab同步,每周一次就好了。
* * * * 0 ntpdate 0.asia.pool.ntp.org & hwclock -w