设置、修改Linux时区

来源:互联网 发布:传智播客c语言视频 编辑:程序博客网 时间:2024/05/01 11:21

查看/修改Linux时区和时间

在RedHat和Centos类系统中,与系统时间有关的主要三个目录或文件

1)/etc/sysconfig/clock 文件,只对 hwclock
命令有效,且只在系统启动和关闭的时候才有用(修改了其中的 UTC=true 到 UTC=false 的前后,执行 hwclock (--utc,
或 --localtime) 都没有变化,要重启系统后才生效);
在 /etc/sysconfig/clock 中 UTC=false 时,date、hwclock、hwclcok --localtime 输出的时间应该都一致,且此时 hwclock --utc是没有意义的;

在 /etc/sysconfig/clock 中 UTC=ture 时,date、hwclock 的输出是一致的,hwclock --localtime 的输出则是UTC时间;
系统关闭时会同步系统时间到硬件时钟,系统启动时会从硬件时钟读取时间更新到系统,这2个步骤都要根据 /etc/sysconfig/clock 文件中UTC的参数来设置时区转换。
2)/etc/localtime
这个文件用来设置系统的时区,将
/usr/share/zoneinfo/ 中相应文件拷贝到/etc下并重命名为 localtime 即可修改时区设置,而且这种修改对 date
命令是及时生效的。不论是 date 还是 hwclock 都会用到这个文件,会根据这个文件的时区设置来进行UTC和本地之间之间的换算。

3)/usr/share/zoneinfo/

该文件夹里面放着各个时区的脚本文件,使用时直接ln或cp使用。例如 ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

  一、时区

  1. 查看当前时区
  date -R 或直接 date
  2. 修改设置时区
  方法(1)
  tzselect
  方法(2) 仅限于RedHat Linux 和 CentOS
  timeconfig
  方法(3) 适用于Debian
  dpkg-reconfigure tzdata

   方法(4)

  复制相应的时区文件,替换系统时区文件;或者创建链接文件
   cp /usr/share/zoneinfo/$主时区/$次时区 /etc/localtime
  在中国可以使用:
  cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

    或:

    ln-sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

    修改/etc/sysconfig/clock 使这个文件和/etc/localtime时区保持一致

    ZONE="Asia/Shanghai"

  二、时间

  1、查看时间和日期
  date
  2、设置时间和日期
  将系统日期设定成1996年6月10日的命令
  date -s 06/22/96
  将系统时间设定成下午1点52分0秒的命令
  date -s 13:52:00
  3. 将当前时间和日期写入BIOS,避免重启后失效
  hwclock -w
  三、定时同步时间
  * * * * * /usr/sbin/ntpdate 210.72.145.44 > /dev/null 2>&1

 

 在Linux中,用于时钟查看和设置的命令主要有date、hwclock和clock。其中,clock和hwclock用法相近,只用一个就行,只不过clock命令除了支持x86硬件体系外,还支持Alpha硬件体系。

  查看Linux系统时间:
date
  修改Linux系统时间:
date -s (后面跟时间)

  查看Linux硬件时间:
hwclock

clock

hwclock –show

clock –show

  修改Linux硬件时间:
hwclock –set –date

clock –set –date

  让系统时间与硬件时钟同步,用:
hwclock –hctosys

clock –hctosys

  相反地,让硬件时钟与系统时间同步:
hwclock –systohc

clock –systohc

  让系统时间每隔十分钟去同步一下硬件时间。

[hqw@localhost root]$ vi /etc/crontab    SHELL=/bin/bash  PATH=/sbin:/bin:/usr/sbin:/usr/bin  MAILTO=root  HOME=/    # run-parts  01 * * * * root run-parts /etc/cron.hourly  02 4 * * * root run-parts /etc/cron.daily  22 4 * * 0 root run-parts /etc/cron.weekly  42 4 1 * * root run-parts /etc/cron.monthly  */10 * * * * root hwclock --hctosys  #我加入了这么一行,表示每隔10分钟执行一次hwclock --hctosys。

0 0