关于时区的概念,其实初中地理课已经涉及,很多人都多少了解一些,可能只是细节 搞不太清楚。为什么会将地球分为不同时区呢?因为地球总是自西向东自转,东边总比西边先看到太阳,东边的时间也总比西边的早。东边时刻与西边时刻的差值不 仅要以时计,而且还要以分和秒来计算。整个地球分为二十四时区,每个时区都有自己的本地时间。在国际无线电通信场合,为了统一起见,使用一个统一的时间, 称为通用协调时(UTC, Universal Time Coordinated)。UTC与格林尼治平均时(GMT, Greenwich Mean Time)一样,都与英国伦敦的本地时相同。

关于时间的几个标准,如下所示,具体可以Google、Baidu搜索一下。

CST:中国标准时间(China Standard Time),这个解释可能是针对RedHat Linux。

UTC:协调世界时,又称世界标准时间,简称UTC,从英文国际时间/法文协调时间”Universal Time/Temps Cordonné”而来。中国大陆、香港、澳门、台湾、蒙古国、新加坡、马来西亚、菲律宾、澳洲西部的时间与UTC的时差均为+8,也就是UTC+8。

GMT:格林尼治标准时间(旧译格林威治平均时间或格林威治标准时间;英语:Greenwich Mean Time,GMT)是指位于英国伦敦郊区的×××格林尼治天文台的标准时间,因为本初子午线被定义在通过那里的经线。

关于时区分布图,大家可以参考http://www.timedate.cn/time/timezone.htm,我们国家跨越了东五区、东六区、东七区、东八区、东九区五个时区,一般都统一采用东八区计时时间。


Linux系统如何查看设置所在的时区呢?

1:使用date命令查看时区

[root@db-server ~]# date -R
Sun, 11 Jan 2015 07:10:28 -0800
[root@db-server ~]#

如上RFC 2822 format所示,上面命令输出了-0800表示西八区,是美国旧金山所在的时区,下面表示我们国家的东八区(+0800)

[root@lnx01 ~]# date -R
Sun, 11 Jan 2015 23:06:02 +0800

2:查看clock系统配置文件

[root@db-server ~]# more /etc/sysconfig/clock
ZONE="America/Los_Angeles"
UTC=true
ARC=false

如上所示,表示该系统设置的时区为“America/Los_Angeles”,也就是西八区。

Linux系统如何设置系统所在的时区呢?

方法1:使用tzselect设置时区

例子,将系统时区设置为东八区(北京时间)

[root@db-server ~]# tzselect
Please identify a location so that time zone rules can be set correctly.
Please select a continent or ocean.
 1) Africa
 2) Americas
 3) Antarctica
 4) Arctic Ocean
 5) Asia
 6) Atlantic Ocean
 7) Australia
 8) Europe
 9) Indian Ocean
10) Pacific Ocean
11) none - I want to specify the time zone using the Posix TZ format.
#? 5
Please select a country.
 1) Afghanistan           18) Israel                35) Palestine
 2) Armenia               19) Japan                 36) Philippines
 3) Azerbaijan            20) Jordan                37) Qatar
 4) Bahrain               21) Kazakhstan            38) Russia
 5) Bangladesh            22) Korea (North)         39) Saudi Arabia
 6) Bhutan                23) Korea (South)         40) Singapore
 7) Brunei                24) Kuwait                41) Sri Lanka
 8) Cambodia              25) Kyrgyzstan            42) Syria
 9) China                 26) Laos                  43) Taiwan
10) Cyprus                27) Lebanon               44) Tajikistan
11) East Timor            28) Macau                 45) Thailand
12) Georgia               29) Malaysia              46) Turkmenistan
13) Hong Kong             30) Mongolia              47) United Arab Emirates
14) India                 31) Myanmar (Burma)       48) Uzbekistan
15) Indonesia             32) Nepal                 49) Vietnam
16) Iran                  33) Oman                  50) Yemen
17) Iraq                  34) Pakistan
#? 9
Please select one of the following time zone regions.
1) east China - Beijing, Guangdong, Shanghai, etc.
2) Heilongjiang (except Mohe), Jilin
3) central China - Sichuan, Yunnan, Guangxi, Shaanxi, Guizhou, etc.
4) most of Tibet & Xinjiang
5) west Tibet & Xinjiang
#? 1
The following information has been given:
        China
        east China - Beijing, Guangdong, Shanghai, etc.
Therefore TZ='Asia/Shanghai' will be used.
Local time is now:      Sun Jan 11 23:31:51 CST 2015.
Universal Time is now:  Sun Jan 11 15:31:51 UTC 2015.
Is the above information OK?
1) Yes
2) No
#? yes
Please enter 1 for Yes, or 2 for No.
#? 1
You can make this change permanent for yourself by appending the line
        TZ='Asia/Shanghai'; export TZ
to the file '.profile' in your home directory; then log out and log in again.
Here is that TZ value again, this time on standard output so that you
can use the /usr/bin/tzselect command in shell scripts:
Asia/Shanghai

注意:tzselect命令只告诉你选择的时区的写法,并不会生效。所以现在它 还不是东8区北京时间。你可以在.profile、.bash_profile或者/etc/profile中设置正确的TZ环境变量并导出。 例如在.bash_profile里面设置 TZ='Asia/Shanghai'; export TZ并使其生效。

[root@db-server ~]# source .bash_profile
[root@db-server ~]# date
Sun Jan 11 23:37:40 CST 2015

方法2:复制相应的时区文件,替换系统时区文件;或者创建链接文件


[root@db-server ~]# ln /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

ln: creating hard link `/etc/localtime' to `/usr/share/zoneinfo/Asia/Shanghai': File exists

[root@db-server ~]# rm /etc/localtime

rm: remove regular file `/etc/localtime'? y

[root@db-server ~]# ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

[root@db-server ~]# date -R

Mon, 12 Jan 2015 10:56:10 +0800

[root@db-server ~]#

方法3:使用timeconfig设置时区

timeconfig命令仅限于RedHat Linux 和 CentOS。

参  数:

--arc  使用Alpha硬件结构的格式存储系统时间。

--back  在互动式界面里,显示Back钮而非Cancel钮。

--test  仅作测试,并不真的改变系统的时区。

--utc  把硬件时钟上的时间视为CUT,有时也称为UTC或UCT。

感觉这个timeconfig命令在命令界面使用起来并不好用。给人的感觉非常别扭。用户体验非常糟糕。如下所示,看起来也很糟糕。

[root@db-server ~]# timeconfig --utc "Asia/Shanghai"

方法4:使用dpkg-reconfigure tzdata设置时区

这个仅仅适用于Debian,手头没有环境,没有实验过,在此不作过多阐述。

参考资料:

http://blog.sina.com.cn/s/blog_573a052b0100pgt1.html

http://www.dapig.cn/view/3511.html

作者:潇湘隐者

出处:http://www.cnblogs.com/kerrycode/

本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接.

注:转载自http://www.cnblogs.com/kerrycode/

转载于:https://blog.51cto.com/allveny/1707780

转载:Linux查看设置系统时区相关推荐

  1. Linux查看设置系统时区

    关于时区的概念,其实初中地理课已经涉及,很多人都多少了解一些,可能只是细节搞不太清楚.为什么会将地球分为不同时区呢?因为地球总是自西向东自转,东边总比西边先看到太阳,东边的时间也总比西边的早.东边时刻 ...

  2. 查看linux 系统情况,LINUX 查看当前系统的负载情况

    uptime linux uptime命令主要用于获取主机运行时间和查询linux系统负载等信息. eg: # uptime 02:03:50 up 126 days, 12:57, 2 users, ...

  3. java 设置timezone_如何设置系统时区作为 @JsonFormat timezone

    各位大佬: 从数据库查到的时间使用jackson的@JsonFormat进行格式化: @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", ti ...

  4. 转载:Linux下查看/修改系统时区、时间

    一.查看和修改Linux的时区 1. 查看当前时区 命令 : "date -R" 2. 修改设置Linux服务器时区 方法 A 命令 : "tzselect" ...

  5. Linux下查看/修改系统时区、时间

    一.查看和修改Linux的时区 1. 查看当前时区 命令 : "date -R" 2. 修改设置Linux服务器时区 方法 A 命令 : "tzselect" ...

  6. Linux怎么查看设置系统语言包

    查看当前系统语言 登陆linux系统打开操作终端之后,输入 echo $LANG可以查看当前使用的系统语言.如 查看安装的语言包 查看是否有中文语言包可以在终端输入 locale命令,如有zh cn  ...

  7. linux 时区设置 美国西部,Linux下修改系统时区

    使用 /etc/localtime 文件修改时区 先查看一下当前的时区,下面这个例子中使用 UTC 即世界统一标准时区.假设你可能需要改为美国西部标准时间,即太平洋时间. # date Thu Aug ...

  8. Redhat, CentOS 设置系统时区

    http://blog.sina.com.cn/s/blog_8d6e07cf01017vcg.html 在我们使用CentOS系统的时候,也许时区经常会出现问题,有时候改完之后还是会出错,下面分享一 ...

  9. Linux查看与修改时区、时间的命令

    1.查看.修改Linux时区与时间 一.linux时区的查看与修改 1,查看当前时区 date -R 2,修改设置时区 方法1: tzselect 方法2: 仅限于RedHat Linux 和 Cen ...

最新文章

  1. 图论500 ---- HDU3631 Shortest Path Floyed 插点法 真正了解Floyed
  2. setTimeout和setInterval你真的了解吗?
  3. rgb颜色判断语句_首款RGB智能指纹挂锁,既能报警还能减压,简直无锁不能
  4. nodejs源码_格物致知记一次nodejs源码分析的经历
  5. datatable 查询_2020年浙江注册会计师成绩查询预告
  6. web前后端 http转https
  7. Thread.join()
  8. 2019-暑期实习生-自然语言处理算法岗-面试题
  9. python 模拟用户点击浏览器_使用python进行模拟浏览器操作
  10. LightGCN: Simplifying and Powering Graph Convolution Network for Recommendation 论文笔记
  11. fighting小银考呀考不过四级
  12. ISO8583报文格式分析
  13. Missing iOS Distribution signing identity for …
  14. Linux串口编程详解(转)
  15. html无限弹窗关不掉,使用cmd命令时出现无限弹窗的故障如何终止
  16. 人性的弱点【了解鱼的需求】
  17. Codesys和基恩士扫码枪Ethernet/IP通信
  18. 阵列卡直通模式和raid模式_详解磁盘阵列RAID原理、种类及性能优缺点
  19. Class not found: “xxx.xxx.xxx“报错
  20. [Leetcode学习-java]Additive Number

热门文章

  1. 如何在各类控件中输入/输出数据(学习笔记)
  2. 2.14要来了,老司机教单身狗如何用VR过情人节
  3. 四、编译安装php-5.5.34
  4. 检查联网状态并设置网络
  5. this.Index = this._count - 1
  6. c++ 通过 myodbc连接到 远程linux 上的mysql server
  7. C#者重建C++之路 - 运行机制的差异
  8. session 安全问题(关闭页面时自动清除session)
  9. <binding>和<operation>元素
  10. 处理器仿存带宽_linux服务器CPU内存硬盘读写带宽等性能测试方法