天行健,君子以自强不息

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

  在启动HBase机群的时候,发现了一个错误,因为机群时间不同步导致,所以要同步集群时间。

  Linux的时间分为System Clock(系统时间)和Real Time Clock (硬件时间,简称RTC)。
 
系统时间:指当前Linux Kernel中的时间。  
 
硬件时间:主板上有电池供电的时间。
 
查看系统时间的命令: date
 
设置系统时间的命令: date –s(月/日/年 时:分:秒),例如
sudo date -s "2015-07-29 08:50:35"
 
查看硬件时间的命令: # hwclock
 
设置硬件时间的命令: # hwclock –set –date = (月/日/年 时:分:秒)
 
上述提到的是手动设置时间到一个时间点,可能与当前网络的时间有误差。
 
下面介绍一下与时间服务器上的时间同步的方法 
 
1.  安装ntpdate工具
sudo apt-get install ntpdate
2.  设置系统时间与网络时间同步
sudo ntpdate cn.pool.ntp.org
3.  将系统时间写入硬件时间
sudo hwclock --systohc

4. 常见问题

4.1 更新时间的时候出现:ntpdate[23051]: the NTP socket is in use, exiting

这是因为ntp进程已经启动,那么需要将他关掉,首先查看哪个进程使用ntp

ps aux | grep ntp

执行命令后,会看到如下

USER       PID      %CPU %MEM   VSZ      RSS    TTY      STAT     START   TIME     COMMAND

ntp           1928     0.0       0.0         31512   4356    ?           Ss          08:15      0:00      /usr/sbin/ntpd -p /var/run/ntpd.pid -g -u 117:126

找到对应的进程PID,kill,然后在同步时间

 

 

参考:

http://www.2cto.com/os/201212/174953.html

http://blog.csdn.net/congqingbin/article/details/7676704

posted on 2015-07-29 09:27  fgys  阅读(9348)  评论(0编辑  收藏  举报