linux下如何更改系统时间,Linux怎样修改系统时间date

修改linux的时间可以使用date指令

修改日期:

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

#date -s

05/10/2009

修改时间:

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

#date -s 10:18:00

修改时区:

找到相应的时区文件

/usr/share/zoneinfo/Asia/Shanghai替换当前的/etc/localtime。

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

ZONE=”Asia/Shanghai”

UTC=false

ARC=false

同步bios时间:

同步BIOS时钟,强制把系统时间写入CMOS,命令如下:

#clock -w

/etc/sysconfig/clock

文件,只对 hwclock 命令有效,且只在系统启动和关闭的时候才有用(修改了其中的 UTC=true 到 UTC=false 的前后,执行 hwclock

(--utc, 或 --localtime) 都没有变化,要重启系统后才生效);

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

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

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

修改内容

命令中各选项的含义分别为:

-d datestr, --date

datestr 显示由datestr描述的日期

-s datestr, --set

datestr 设置datestr 描述的日期

-u, --universal

显示或设置通用时间

时间域

%H 小时(00..23)

%M 分(00..59)

%S 秒(00..59)

%s

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

%I 小时(01..12)

%k 小时(0..23)

%l 小时(1..12)

%m 月(01..12)

%p 显示出AM或PM

%r 时间(hh:mm:ss

AM或PM),12小时

%T

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

%X

显示时间的格式(%H:%M:%S),12小时制

%x

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

%y 年的最后两个数字(

1999则是99)

%Y

年(例如:1970,1996等)

%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)

%w

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

%W

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

显示时区:date

-R,和date +%Z的区别是,+%Z只显示CST这样的区域,-R是完整显示

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

例1:用指定的格式显示时间。

$ date '+This date now

is =>%x ,time is now =>%X ,thank you !'

This date now is

=>11/12/99 ,time is now =>17:53:01,thank you !

例2:用预定的格式显示当前的时间。

# date

Fri Nov 26 15:20:18 CST

1999

例3:设置时间为下午14点36分。

# date -s

14:36:00

Fri Nov 26 14:15:00 CST

1999

例4:设置时间为1999年11月28号。

# date -s 991128

Sun Nov 28 00:00:00 CST

1999

实例:设置时间伟2008年8月8号12:00

# date -s "2008-08-08 12:00:00"

修改完后,记得输入:clock

-w

把系统时间写入CMOS

CLOCK

1. “系统时间”与“硬件时间”

系统时间:

一般说来就是我们执行 date 命令看到的时间,linux系统下所有的时间调用(除了直接访问硬件时间的命令)都是使用的这个时间。

硬件时间:

主板上BIOS中的时间,由主板电池供电来维持运行,系统开机时要读取这个时间,并根据它来设定系统时间(注意:系统启动时根据硬件时间设定系统时间的过程可能存在时区换算,这要视具体的系统及相关设置而定)。

2.

“UTC时间”与“本地时间”

UTC时间:Coordinated

Universal 8 e2 i( H7 t0 ^/ ^Time

世界协调时间(又称世界标准时间、世界统一时间),在一般精度要求下,它与GMT(Greenwich Mean Time,格林威治标准时间)是一样的,其实也就是说

GMT≈UTC,但 UTC 是以原子钟校准的,更精确。

本地时间:由于处在不同的时区,本地时间一般与UTC是不同的,换算方法就是

本地时间

= UTC + 时区 或 UTC = 本地时间 - 时区

时区东为正,西为负,例如在中国,本地时间都使用北京时间,在linux上显示就是

CST(China Standard Time,中国标准时,注意美国的中部标准时Central Standard

Time也缩写为CST,与这里的CST不是一回事!),时区为东八区,也就是 +8 区,所以 CST=UTC+(+8小时) 或 UTC=CST-(+8小时)。

1. 系统时间 date

直接调用

date,得到的是本地时间。如果想得到UTC时间的话,使用 date -u。

[12-01 19:07>

~]$ date

2009年 12月 07日

星期一 14:22:20 CST

[12-01 19:07>

~]$ date -u

2009年 12月 07日

星期一 06:22:22 UTC

2. 硬件时间

/sbin/hwclock

直接调用

/sbin/hwclock 显示的时间就是 BIOS 中的时间吗?未必!这要看 /etc/sysconfig/clock

中是否启用了UTC,如果启用了UTC(UTC=true),显示的其实是经过时区换算的时间而不是BIOS中真正的时间,如果加上 --localtime

选项,则得到的总是 BIOS 中实际的时间.

3.

/etc/localtime

这个文件用来设置系统的时区,将

/usr/share/zoneinfo/ 中相应文件拷贝到/etc下并重命名为 localtime 即可修改时区设置,而且这种修改对 date

命令是及时生效的。不论是 date 还是 hwclock 都会用到这个文件,会根据这个文件的时区设置来进行UTC和本地之间之间的换算

硬件时间和系统时间的同步

按照前面的说法,重新启动系统,硬件时间会读取系统时间,实现同步,但是在不重新启动的时候,需要用hwclock或clock命令实现同步。

硬件时钟与系统时钟同步:

# hwclock

--hctosys(hc代表硬件时间,sys代表系统时间)

或者

#

clock --hctosys

或者

hwclock

-s

系统时钟和硬件时钟同步:

# hwclock

--systohc

或者

# clock

--systohc

或者

hwclock -w

时区的设置 tzselect

#

tzselect

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值