秀成 發表於 2019-5-5 15:20:00

Linux服务器时间设置及同步

<p>  闲余:夏日将到,园区计划五一期间进行大面积的电网停电检修,运维同学因此将公司测试服务器提前关闭了。收假后,测试告诉我,他发现一个bug--一段定时任务程序未执行,我的第一反应就是--会不会是假期测试服务器停机导致的时间有误,因此定时任务未执行。于是我立马登录测试服务器,打开终端,输入ip,告诉我"Connect time out",我们的运维同学吖,咱能不能靠谱点??告知运维后大概五分钟,终于成功连上了。</p>
<p>  输入'date'命令后,立马证实了我的猜想,fuck!服务器时间居然还是 '2019年 04月 30日 星期二 20:42:45 CST'--也就是关闭服务器的当日时间。<span style="color: rgba(0, 0, 255, 1)"><br></span></p>
<p>  当时我想到了两种解决方案 -- A.直接使用 "date -s 'YYYY-MM-DD hh:mm:ss'",然后刷入BIOS --"hwclock -w" B.直接同步网络时间--使用"ntpdate"</p>
<p>  方案A简单粗暴,我们开发毕竟不能随便的服务器硬件配置做太多修改,如不小心造成什么问题,咱也不好说(当然不刷入bios也是可以的,可能会导致重启失效)。于是我选择了比较安全保险的B方案--同步网络时间。</p>
<p>  在同步网络时间之前,我们需要确保服务有安装&nbsp; ntpdate 服务</p>
<div class="cnblogs_Highlighter">
<pre class="brush:html;gutter:true;">ps aux |grep ntpdate
</pre>
</div>
<p>  如果未安装,使用如下代码安装,系统会自动选择合适的镜像,按提示选择 y 就行。</p>
<div class="cnblogs_Highlighter">
<pre class="brush:html;gutter:true;">yum install ntpdate
</pre>
</div>
<p>  当然安装完成后,还可以执行第一条命令查看是否成功。确认安装成功后,输入如下代码</p>
<div class="cnblogs_Highlighter">
<pre class="brush:html;gutter:true;">ntpdate -u <span class="invisible"><span class="visible">cn.pool.ntp.org</span></span>    //-u:从man ntpdate中可以看出-u参数可以越过防火墙与主机同步;
</pre>
</div>
<p>  注意:若不加上-u参数, 可能会出现以下提示:no server suitable for synchronization found<br>&nbsp; &nbsp; 执行完毕后,可 使用 ‘date’命令查看服务器时间是否同步成功。</p>
<p>补充:</p>
<p>  如果有同学对ntpdate感兴趣,可以参考一下&nbsp;<span class="text_head0">时间服务器:<span class="text_head_en">&nbsp;NTP&nbsp;服务器</span>&nbsp;,这里面服务器时间的解释详细易懂。</span></p>
<p>  另外补充一些国内比较快速稳定的NTP服务,参考&nbsp;https://www.zhihu.com/question/30252609。</p>
<p>&nbsp;</p>
<p>  Linux永久修改系统时间</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(128, 0, 128, 1)">1</span>.<span style="color: rgba(0, 0, 255, 1)">date</span><span style="color: rgba(0, 0, 0, 1)"> 查看系统时间
</span><span style="color: rgba(128, 0, 128, 1)">2</span>.hwclock --<span style="color: rgba(0, 0, 0, 1)">show 查看硬件的时间
</span><span style="color: rgba(128, 0, 128, 1)">3</span>.hwclock --set --<span style="color: rgba(0, 0, 255, 1)">date</span> <span style="color: rgba(128, 0, 0, 1)">'</span><span style="color: rgba(128, 0, 0, 1)">2017-08-16 17:17:00</span><span style="color: rgba(128, 0, 0, 1)">'</span><span style="color: rgba(0, 0, 0, 1)"> 设置硬件时间为17年8月16日17点17分00秒
</span><span style="color: rgba(128, 0, 128, 1)">4</span>.hwclock --<span style="color: rgba(0, 0, 0, 1)">hctosys 设置系统时间和硬件时间同步
</span><span style="color: rgba(128, 0, 128, 1)">5</span>.clock -<span style="color: rgba(0, 0, 255, 1)">w</span> 保存时钟</pre>
</div>
<p>&nbsp;</p>
<p>  </p>
<p>  </p>
<p>   </p>
<p>&nbsp;</p><br><br>
来源:https://www.cnblogs.com/JackpotHan/p/10813237.html
頁: [1]
查看完整版本: Linux服务器时间设置及同步