问题描述
我希望Ubuntu在启动时自动将我的系统时钟与时间服务器同步。
但是,直到登录后,我的PC才连接到Internet(再加上5到10秒的时间)。
我该如何设置呢?
最佳方案
这是使用instructions可用的NTP完成的。基本上,您需要安装NTP守护程序。似乎有几种选择,但”standard”在包装ntp
中。根据链接页面上的说明,
sudo apt-get install ntp
将进行所有设置以与Ubuntu的NTP服务器同步。
编辑:我错过了“启动时”。通常建议使用ntpd来获得系统和服务器之间的连续同步,但是如果您真的只想同步一次,那么mfisch的答案似乎就是您想要的。
次佳方案
如果转到“系统->管理->时间和日期”,则将获得用于设置日期/时间的GUI。
提供了使用时间服务器的选项。如果您检查它并且未安装NTP,它将询问您是否要安装它。只需单击”yes”,然后让它完成工作即可:)
第三种方案
您可以使用at和ntpdate进行此操作。 at可能已经安装,但ntpdate可能尚未安装。 (apt-get安装ntpdate)。
首先创建一个运行ntpdate的小脚本,将其称为update_time.sh。
#!/bin/bash
ntpdate pool.ntp.org
在您的.bash_login文件(您可能需要创建)中,添加以下内容:
at -f ~/update_time.sh now + 1 minute
那应该做你想要的。您可以将使用时的延迟更改为5分钟,10分钟等。
编辑:我刚刚意识到,您需要root用户才能运行ntpdate
。您需要在我提到的update_time.sh脚本上设置SUID位。您可以通过在命令中运行此命令来做到这一点(只需运行一次):
sudo chmod 4711 update_time.sh
sudo chown root update_time.sh