Linux时间与日期管理

  在Linux中有硬件时钟与系统时钟两种时钟。硬件时钟是指主机板上的时钟设备,也就是通常可在BIOS画面设定的时钟。系统时钟则是指kernel中的时钟。所有Linux相关指令与函数都是读取系统时钟的设定。因为存在两种不同的时钟,那么它们之间就会存在差异。当Linux启动时,系统时钟会去读取硬件时钟的设定,之后系统时钟即独立运作。

  

1.date命令的功能是显示和设置系统日期和时间。

输入date 查看目前系统时间。


修改时间需要 date -功能字符 修改内容


选项:

-d datestr, --date datestr 显示由datestr描述的日期

-s datestr, --set datestr 设置datestr 描述的日期

-u, --universal 显示或设置通用时间


2.时间域

%H 小时(00..23)

%I 小时(01..12)

%k 小时(0..23)

%l 小时(1..12)

%M 分(00..59)

%p 显示出AM或PM

%r 时间(hh:mm:ss AM或PM),12小时

%s 从1970年1月1日00:00:00到目前经历的秒数

%S 秒(00..59)

%T 时间(24小时制)(hh:mm:ss)

%X 显示时间的格式(%H:%M:%S)

%Z 时区 日期域

%a 星期几的简称( Sun..Sat)

%A 星期几的全称( Sunday..Saturday)

%b 月的简称(Jan..Dec)

%B 月的全称(January..December)

%c 日期和时间( Mon Nov 8 14:12:46 CST 1999)

%d 一个月的第几天(01..31)

%D 日期(mm/dd/yy)

%h 和%b选项相同

%j 一年的第几天(001..366)

%m 月(01..12)

%w 一个星期的第几天(0代表星期天)

%W 一年的第几个星期(00..53,星期一为第一天)

%x 显示日期的格式(mm/dd/yy)

%y 年的最后两个数字( 1999则是99)

%Y 年(例如:1970,1996等) 


  需要特别说明的是,只有超级用户才能用date命令设置时间,一般用户只能用date命令显示时间。


3.修改日期:

时间设定成2009年5月10日的命令如下:

#date -s 05/10/2009


4.修改时间:

将系统时间设定成上午10点18分0秒的命令如下。

#date -s 10:18:00


5.修改时区:

找到相应的时区文件 /usr/share/zoneinfo/Asia/Shanghai替换当前的/etc/localtime。

修改/etc/sysconfig/clock文件的内容为:

ZONE=”Asia/Shanghai”

UTC=false

ARC=false


6.修改硬件时间

  用date命令对系统时间进行设置后,并不会去修改硬件时钟,所以系统重启后,系统时间还算会去读取硬件时间,这就是为何date设置失效到原因。


因此,需要在设置系统时间后,将系统时间同步到硬件时钟。


clock/hwclock:


  显示与设定硬件时钟(query and set the hardware clock (RTC)),两个命令相同。RTC=Real Time Clock,也就是硬件时钟。


命令参数:


-r, --show        读取并打印硬件时钟(read hardware clock and print result)

-s, --hctosys    将硬件时钟同步到系统时钟(set the system time from the hardware clock)

-w, --systohc    将系统时钟同步到硬件时钟(set the hardware clock to the current system time)


7.查看硬件时钟

[root@localhost test1]# hwclock -r

Tue 06 Sep 2016 08:59:54 AM CST  -0.922688 seconds

[root@localhost test1]# date 

Tue Sep  6 09:00:01 CST 2016

可以看到系统时间和硬件时间是不同的


8. 将硬件时钟同步到系统时钟

[root@localhost test1]# hwclock -s

[root@localhost test1]# hwclock -r

Tue 06 Sep 2016 09:02:23 AM CST  -1.000378 seconds

[root@localhost test1]# date 

Tue Sep  6 09:02:25 CST 2016

可以看到系统时间与硬件时间相同了


9.RHEL7时间管理命令timedatectl

timedatectl list-timezones    ##列出时区

timedatectl set-timezone 时区##设定时区

timedatectl set-time HH:mm:ss  ##设定系统时间

            set-local-rtc 0/1         ##双系统时间错乱调整

            /etc/adjtime


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值