一、手动修改

1. date命令:查看当前时间

Linux 更改时区、时间_html

2. date -s  时分秒 :修改时间

Linux 更改时区、时间_centos_02

还需要把日期改过来

3. date -s  完整日期时间(YYYY-MM-DD hh:mm[:ss]):修改日期、时间

Linux 更改时区、时间_linux_03

时间要用双引号括起来,否则报错

手动修改会存在一定的时间误差

4. hwclock -w

Linux 更改时区、时间_ubuntu_04

将时间写入bios避免重启失效。

当我们进行完 Linux 时间的校时后,还需要以 hwclock 来更新 BIOS 的时间,因为每次重新启动的时候,系统会重新由 BIOS 将时间读出来,所以, BIOS 才是重要的时间依据吶。

二、同步网络时间

 

Linux修改时区的正确方法




CentOS和Ubuntu的时区文件是/etc/localtime,但是在CentOS7以后localtime以及变成了一个链接文件



[root@centos7 ~]# ll /etc/localtime 
lrwxrwxrwx 1 root root 33 Oct 12 11:01 /etc/localtime -> /usr/share/zoneinfo/Asia/Shanghai


如果采用直接cp的方法修改系统时区,那么就会把它所链接的文件修改掉,例如把美国的时区文件内容修改成了上海的时区内容,有可能会导致有些编程语言或程序在读取系统时区的时候发生错误,因此正确的修改方法是:

CentOS6、Ubuntu16



# cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime


CentOS7、RHEL7、Scientific Linux 7、Oracle Linux 7

最好的方法是使用timedatectl命令



# timedatectl list-timezones |grep Shanghai    #查找中国时区的完整名称
Asia/Shanghai
# timedatectl set-timezone Asia/Shanghai #其他时区以此类推


或者直接手动创建软链接



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