date查看时间、时区,hwclock --systohc修改硬件时间,ln修改时区.note
使用 ln 来修改时区:
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime查看当前时区:
date -R
Tue, 17 Jan 2017 21:36:23 +0800 //+0800是东八区设置时区:
tzselect仅仅是一个查看时区表示方式的向导程序。通过依次询问大洲→国家→城市,最后告诉你如何TZ变量的写法,比如北京时间是:Asia/Shanghai
可以通过修改TZ变量,修改时区信息(重新登陆会消失):
date -R
Tue, 17 Jan 2017 13:57:06 +0000
export TZ='Asia/Shanghai'
date -R
Tue, 17 Jan 2017 19:57:18 +0600不写在文件里的设置更改很难生效,一般是会话级的,直接修改TZ做不到持久化更改时区,重新登陆会消失。
正确的方式是到/etc/profile里(或用户的.profile或.bashrc文件),直接export TZ变量为要更改的时区(时区的名字可以用tzselect向导来确定)
/etc/localtime文件
默认情况下,TZ属性是空,这时候是靠/etc/localtime文件来确定的时区。而此文件通常又是一个到/usr/share/zoneinfo/下各种时区文件的软链接。通过修改/etc/localtime指向的软链接,进而修改系统的时区。比如下面的方法,将localtime文件设置为了北京时间:
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime总结:
1、tzselect命令无法修改时区,仅给出时区的城市表示法
2、TZ变量和/etc/localtime文件会影响时区,并建议直接修改/etc/localtime文件
3、如果再shell中临时需要变更时区信息,可以修改TZ变量实现
4、在profile文件里设置变量TZ,达到和修改/etc/localtime 类似的效果
date -s "2022/03/03 03:03:03"使用date -s “” 也能够修改时间,但是修改的是系统时间,系统重启会同步硬件时间,
所以需要使用:
hwclock --systohc--systohc 将硬件时钟调整为与系统时钟一致
hwclock --hctosys

同步互联网时间:
ntpdate -u cn.pool.ntp.org