最近鼓捣树莓派,关机后时间设置总是丢失,写东西时会遇到各种奇怪的问题。这里参考了王航的开源的 htpdate 命令直接使用 HTTP 协议(这个是不可能封的了)来进行系统时间同步。大概记录一下
我的配置过程:
1、下载git上的文件,使用WinSCP上传树莓派上。
2、编译
$ make
$ make install
3、测试
htpdate -t -s ntp.neu.edu.cn
注意,使用的是国内neu
4、开机自动同步
把这条命令加到 Raspberry Pi Raspbian 系统的 /etc/rc.local 文件中(不加 -t 参数基本不能同步成功哦):
htpdate -t -s ntp.neu.edu.cn
5、另一种配置:定时更新:
在cronjob中周期性更新每天中午十二点执行
-
* 12 * * * root /usr/bin/ htpdate -t -s ntp.neu.edu.cn
6、其他参考:
定时任务:
Linux下有一个定时运行的程序命令叫“crontab”,是任务调度的crond常驻命令,是Linux系统下的定时任务触发器 。 限制用户使用crontab的文件有:/etc/cron.allow /etc/cron.deny 。 当使用crontab建立工作排程后,将被记录到/var/spool/cron里。 cron执行的每一项工作都被记录到/varlog/cron里去。 crontab参数: -u:只有root才可能,帮其他用户建立或移除工作排程。 -l:查阅crontab的工作内容 -r:移除所有的crontab的工作内容,移除一项,用-e编辑。 每项工作有六个字段分别是: 分钟 小时 日期 月份 周 指令 0-59 0-23 1-31 1-12 0-7 指令 #0和7都代表星期天 辅助特殊字符: * (星号)代表任何时刻 ,(逗号)代表分隔时候。如3点与6点 就是3,6 -(减号)代表一段时间范围内。如:3点到6点 就是3-6 /n(斜线)n代表数字,即每隔n单位。如每隔五分钟,/5 以下我们举个例子,比如每晚定时23:50分需要关机 注:50 23 代表 每天的23:50,执行的命令就是“shutdown -h now” |
# m h dom mon dow command
# * * * * * command to execute
# ┬ ┬ ┬ ┬ ┬
# │ │ │ │ │
# │ │ │ │ │
# │ │ │ │ └───── 星期 (0 - 7) (星期日为0,星期六为6;星期日也可以用7表示)
# │ │ │ └────────── 月份 (1 - 12)
# │ │ └─────────────── 日期 (1 - 31)
# │ └──────────────────── 小时 (0 - 23)
# └───────────────────────── 分 (0 - 59)
* 表示该项不生效
如:
0 0 * * * /home/pi/backup.sh
表示每天午夜执行/home/pi/backup.sh脚本。
7、参考文章
开源htpdate项目git地址:https://github.com/iridium77/htpdate