设为首页 收藏本站
查看: 626|回复: 0

[经验分享] Linux时区更改

[复制链接]

尚未签到

发表于 2017-11-17 14:36:45 | 显示全部楼层 |阅读模式
  时区解析及更改


时区解析及如何调整Linux下的时区
前言
今天发现Vmware中的Centos 6.0-64bit的系统时间和宿主机的时间相差好几个小时,调整系统时间后重新启动又给恢复过去了。于是就想弄明白到底是什么原因。时区又是什么,虽然这个基本常识在初中的地理课上有讲到,出国旅游都要倒时差,中国我都没有跑遍更别提出国了,当时真的没有太注意它的作用。现在既然工作中用到了就恶补一下吧。
几个关键词
世界时
世界时是最早的时间标准。在1884年,国际上将1s确定为全年内每日平均长度的1/8.64×104。以此标准形成的时间系统,称为世界是,即 UT1。1972年国际上开始使用国际原子时标,从那以后,经过格林威治老天文台本初子午线的时间便被称为世界时,即UT2,或称格林威治时间 (GMT),是对地球转速周期性差异进行校正后的世界时。
原子时
1967年,人们利用铯原子振荡周期极为规律的特性,研制出了高精度的原子时钟,将铯原子能级跃迁辐射9192631770周所经历的时间定为 1s。现在用的时间就是1971年10月定义的国际原子时,是通过世界上大约200多台原子钟进行对比后,再由国际度量衡局时间所进行数据处理,得出的统 一的原子时,简称TAI。
世界协调时
世界协调时是以地球自转为基础的时间标准。由于地球自转速度并不均匀,并非每天都是精确的86400原子s,因而导致了自转时间与世界时之间存在 18个月有1s的误差。为纠正这种误差,国际地球自转研究所根据地球自转的实际情况对格林威治时间进行增减闰s的调整,与国际度量衡局时间所联合向全世界 发布标准时间,这就是所谓的世界协调时(UTC:Coordinatde Universal Time)。UTC的表示方式为:年(y)、月(m)、日(d)、时(h)、分(min)、秒(s),均用数字表示。
GMT
GMT 是 Greenwich Mean Time 的缩写,译为中文为“格林威治标准时间”或“格林尼治标准时间”,直译的话,可译为“格林威治平时”或“格林尼治平时”。这里的格林威治位于英国伦敦东南方向的泰晤士河畔。总的来讲,它的出现就是为规范全球各地区的时间,各国都以一个固定时间为参照点来计算当地时间。为此1884年美国华盛顿特区召开国际经线大会,确定格林威治就是东西经零度的地方。人们将地球人为的分为24等份,每一等份为一个时区,每时区横跨经度15度,即时间上正好是1小时,以格林威治所在地的时区为中时区,我们现在假设GMT时间为1月10日凌晨(即0点整),往西一个时区,则减去一小时,则当地时间是1月9日夜晚23点整,往东一个时区,则加上一小时,则当地时间是1月10日凌晨1点,依次类推,中国在东经120度上,可以这样计算,(东经120°-东经0°)所得度数再除以15,即得8,所以中国在东八区上,那么,此时中国就是1月10日早上8点整。
UTC
UTC 是 Coordinated Universal Time 的缩写,译为中文为“世界标准时间”,直译的话,可译为“协调通用时间”或“协调世界时间”。目前来说也就是指 GMT 时间。为什么说目前就是指 GMT 时间呢?因为本初子午线(子午线即经线,本初子午线即 0 度经线)其实穿过的是沙特阿拉伯西边的麦加,而不是英国的格林威治。当时英国皇家学会暂时确定格林威治为本初子午线的穿过点﹐加之英国正是兴旺发达时期,全世界就将错就错,用到现在。说不定哪天改为麦加时间为标准时间也不是没有可能。所以我们一般使用 UTC,而不是 GMT。
PDT
PDT 是 Pacific Daylight Time 的缩写,译为中文为“太平洋夏令时间”,比 UTC 时间晚 7 小时。Google 曾在其 AdSense 中提到“在 09-6-13,我们的工程师会在 PDT 大约 上午10:00 到 下午2:00 对网站进行维护。”
PST
美国夏季始于每年4月的第1个周日,止于每年10月的最后一个周日。夏令时比正常时间早一小时,与PDT时间相对应的是PST,Pacific Standard Time。 夏时制结束后就是PST。PST是太平洋标准时间(西八区),与北京时间(东八区)时差-16个小时,也就是北京时间减去16就是PST时间。而PDT比PST早1个小时,就是说PDT与北京时间时差为-15小时
其实除了 PDT,PST 时间,北美地区还有很多时间:
缩写  全称  中文说明
NST  Newfoundland Standard Time  纽芬兰标准时间
NDT  Newfoundland Daylight Time  纽芬兰夏令时间
AST  Atlantic Standard Time  大西洋标准时间
ADT  Atlantic Daylight Time  大西洋夏令时间
EST  Eastern Standard Time  东部标准时间
EDT  Eastern Daylight Time  东部夏令时间
CST  Central Standard Time  中部标准时间
CDT  Central Daylight Time  中部夏令时间
MST  Mountain Standard Time  山地标准时间
MDT  Mountain Daylight Time  山地夏令时间
PST  Pacific Standard Time  太平洋标准时间
PDT  Pacific Daylight Time  太平洋夏令时间
AKST  Alaska Standard Time  阿拉斯加标准时间
AKDT  Alaska Daylight Time  阿拉斯加夏令时间
HAST  Hawaii-Aleutian Standard Time  夏威夷-阿留申标准时间
HADT  Hawaii-Aleutian Daylight Time  夏威夷-阿留申夏令时间
Linux下时区调整
查看当前时区
[iyunv@bogon ~]# date -R
Tue, 09 Apr 2013 20:04:40 +0800
复制相应的时区文件,替换系统时区文件;或者创建链接文件
格式:cp /usr/share/zoneinfo/$主时区/$次时区 /etc/localtime
方法一:cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
方法二:ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
Ps:我就是采取第二种方式调整好centos中的时间的。
ZONE="America/Chicago"
UTC=true
ARC=false  Linux修改时区和时间(1)
  Linux修改时区和时间
  修改时区:
  1>
  找到相应的时区文件 /usr/share/zoneinfo/Asia/Shanghai
  用这个文件替换当前的/etc/localtime文件。
  或者找你认为是标准时间的服务器,然后
  #scp root@xxx.xxx.xxx.xxx:/etc/localtime /etc/localtime
  2>
  修改/etc/sysconfig/clock文件,修改为:
  ZONE="Asia/Shanghai"
  UTC=false
  ARC=false
  修改日期时间
  1>
  用date修改日期时间
  #date -s 08/24/2006
  #date -s 13:02:00
  2>
  同步BIOS时钟,强制把系统时间写入CMOS
  #clock -w
  另外,查看Bois时间用 #hwclock -r
  #tzselect 可以交互式修改时
  Linux修改系统时区
  1. 查看当前时区
  # vi /etc/sysconfig/clock
  2. 修改设置时区
  方法(1) # tzselect 方法(2 仅限于RedHat Linux 和 CentOS) # timeconfig
  3. 复制相应的时区文件,替换系统默认时区
  # cp /usr/share/zoneinfo/$主时区/$次时区 /etc/localtime
  对于中国服务器则执行: # cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
  4. 将当前时间写入BIOS永久生效(避免重启后失效)
  # hwclock
  在inux的shell下获取时间戳一般用两种方法,一是直接调用系统变量;二是用纯shell脚本获取,举例如下
  一,直接调用系统变量
  获取今天时期:date +%Y%m%d` 或date +%F
  获取昨天时期:`date -d yesterday +%Y%m%d`
  获取前天日期:`date -d -2day +%Y%m%d`
  依次类推比如获取10天前的日期:`date -d -10day +%Y%m%d`

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-407913-1-1.html 上篇帖子: Linux 文件系统模型 下篇帖子: Linux常用命令及部分详解
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表