操作系统

Linux系统date命令无法修改或同步时间的解决办法

Jager · 8月27日 · 2014年 · 7450次已读

今天,在站长交流群里面,又一个站长抱怨服务器每星期都必须手动重启一次,否则 QQ 登陆功能无法使用,原因是服务器时间快了 5 分钟以上,腾讯服务器拒绝提供 API 服务。本以为只要加一个简单的 linux 时间同步任务计划即可,结果我拿到 root 后,发现并不是那么一回事。

在我正确添加了 ntpdate 任务计划之后,手动执行了时间同步命令,发现时间依然没有变化。

手动执行 date -s 16:00:00 命令修改时间之后,发现时间依然不变,奇了怪了!

于是网上搜了一把,发现了解决办法:

以 root 身份登入,执行以下命令即可:

echo 1 > /proc/sys/xen/independent_wallclock
或
sysctl xen.independent_wallclock=1

执行完毕后,发现 date -s 命令可以设置时间了,果断再执行了一把 ntpdate -u pool.ntp.org 命令,发现可以同步了!

附录:

①、若没有 ntpdate 命令,Centos 请执行 yum -y install ntp* 

②、更改系统时区为北京时间:cp -f /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

③、添加时间同步任务计划:

i:若没有 crontab,请执行 yum -y install vixie-cron crontabs

ii:执行 crontab -e

iii:按 i 添加一行:

*/30 * * * *  /usr/sbin/ntpdate -u pool.ntp.org  #每 30 分钟同步一次时间

iv:按下 ESC,并键入  :wq 保存退出即可。

7 条回应
  1. 微历史 2014-8-27 · 21:55

    很技术的文章

  2. yedward 2014-8-27 · 23:52

    我现在突然发现张哥的文章风格跟我们老大的好像,都是那种发现问题、大胆假设、验证或推翻假设、再次论证,辅以谷歌、百度,逻辑思维很强。

    • avatar
      Jager 2014-8-30 · 19:45

      居然有这么高的评价,不敢当啊~我都只是潜意识的操作,没想那么多呢。哈哈~

    • avatar
      Jager 2014-8-28 · 12:04

      有意思?