Linux机器上的时间比较复杂,硬件时钟从根本上讲是CMOS时钟,而系统时钟是由内核维护的。
1. 修改硬件时钟
(1)更新机器的硬件时间
hwclock --adjust
硬件时钟通常被设置成全球标准时间(UTC),而将时区信息保存在/usr/share/lib/timezone (或者在某些系统中可能是/usr/local/timezone)目录下某个适当的文件中,然后用一个符号链接文件/etc/localtime指向它。
(2)查看硬件时钟
hwclock
(3)重置硬件时钟用:
hwclock --set --date="mm/dd/yy hh:MM:ss" hwclock --set --date="10/15/2013 16:45:05"
2. 修改时区信息
(1)直接覆盖
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
(2)选择时区
tzselect
3. 显示系统时间
date
4.修改系统时间
(1)方法一
data 10110155 // 将时间调整为10月11日凌晨1点55分 date -s 2005/08/08 // 将系统时间设定成2005年8月8日: date -s 20:12:00 // 将系统时间设定成下午8点12分0秒: date -s 2007-08-03 // 可以只修改日期,不修改时间,输入: date -s 14:15:00 // 修改时间 date -s "2007-08-03 14:15:00" //同时修改日期时间,注意要加双引号,日期与时间之间有一空格
(2)方法二
service stop ntpd ntpdate time.windows.com clock -w
该命令是用来修改系统时钟的。在系统启动时,Linux操作系统将时间从CMOS中读到系统时间变量中,以后修改时间通过修改系统时间实现。为了保持系统时间与CMOS时间的一致性,Linux每隔一段时间会将系统时间写入CMOS。由于该同步是每隔一段时间(大约是11分钟)进行的,在执行完 date -s 命令后,如果马上重起系统,修改的时间就有可能没有被写入CMOS。如果要确保修改生效,最好再使用 clock -w 这个命令将系统时间强行写入CMOS。
(3)方法三
命令setup 后在service里配置
ntpd为开机启动
service ntpd start
附: