问题

今天,有游戏客户找来说,2016.11.6号洛杉矶将会进入冬时令,他们在洛杉矶机房的ECS在使用的是洛杉矶的当地时间,问我,进入冬时令,对他们的linux有啥影响?是否需要做好,批量修改linux时间的准备??

这个想想也不可能啊,难道,洛杉矶的linux管理员,每年到了 冬时令时间就要批量修改时间??

当然不可能,那么究竟是怎么回事儿呢??

首先,我在洛杉矶买了一个ECS,发现使用的还是上海时间,但是,有的云客户,买了之后,自己修改了linux的时区

[root@iZrj93ljqlvdsrgjxhup9zZ ~]# cat /etc/sysconfig/clock
ZONE="Asia/Shanghai"
UTC=false
ARC=false
[root@iZrj93ljqlvdsrgjxhup9zZ ~]# ll /etc/localtime
-rw-r--r--. 1 root root 405 8月  14 2014 /etc/localtime
[root@iZrj93ljqlvdsrgjxhup9zZ ~]# zdump -v /etc/localtime

比如,这个游戏客户就是 修改成了 洛杉矶的时区

实际上,每个城市是否使用夏时令和当地政策有关系,像美国,也不是每个城市都使用夏时令的,洛杉矶就是使用夏时令,其实,一个地区的夏时令,冬时令已经在linux系统中做好了预设,当你将你的linux设置好了时区,你的linux知道是否使用夏时令,并且知道哪天进入夏令时,冬令时,也知道什么时候应该调快或者调慢一小时;另外一个细节,/usr/share/zoneinfo/America/下有很多的城市和地区,我想因为这个缘故,即使A和B都是在一个时区下,如果A当地政策使用了夏时令,B没有使用夏时令,那我估计在 linux的预设当中A,B两个城市也是不一样的;

使用

[root@iZrj93ljqlvdsrgjxhup9zZ ~]# zdump -v /usr/share/zoneinfo/Asia/Shanghai
[root@iZrj93ljqlvdsrgjxhup9zZ ~]# zdump -v /usr/share/zoneinfo/America/Los_Angeles

isdst=1 表示进行了使用了夏令时,夏时令英文缩写(Daylight Saving Time:DST),isdst难道不就是进入夏时令的意思嚒!

你会看到,linux已经知道,在哪一年的哪一天,这个时区,需要调快还是需要调慢一小时,不需要系统管理员批量修改时间的;

网上有种说法前提是:

cat /etc/sysconfig/clock
ZONE="Asia/Taipei"
UTC=true
ARC=false
设置 UTC=true 会自动调节夏令时(如果那个地区有夏令时的话)

但是我如下的测试中,并没有UTC=true,发现,时间依然会改变;

测试

测试在2016年 11月 06日 星期日 01:59:59 时间会不会回退一小时

首先,将vm时间设置为洛杉矶时区的

[root@iZrj93ljqlvdsrgjxhup9zZ ~]# ln -sf  /usr/share/zoneinfo/America/Los_Angeles  /etc/localtime

关闭ntpd,避免影响

[root@iZrj93ljqlvdsrgjxhup9zZ ~]# service ntpd stop
Shutting down ntpd:                                        [  OK  ]

设置时间为2016年 11月 06日 星期日 01:59:59

[root@iZrj93ljqlvdsrgjxhup9zZ ~]# date -s "2016-11-06 01:59:00"
2016年 11月 06日 星期日 01:59:00 PDT

观察时间

[root@iZrj93ljqlvdsrgjxhup9zZ ~]# for i in `seq 1 1000`;do date;sleep 1;done

PDT 是 Pacific Daylight Time 的缩写

美国夏季始于每年4月的第1个周日,

止于每年10月的最后一个周日。

夏令时比正常时间早一小时,

与PDT时间相对应的是PST , Pacific Standard Time 。 夏时制结束后就是PST

PST是太平洋标准时间(西八区)

与北京时间(东八区)时差-16个小时,

也就是北京时间减去16就是PST时间。而PDT比PST早1个小时,就是说PDT与北京时间时差为-15小时

参考

1986年至1991年,中华人民共和国在全国范围实行了六年夏令时,zdump证明linux系统是知道的

美国

美国夏时制的实行与否,完全由各州、各县自行决定,不由联邦政府统一规定。目前美国绝大部分地区实行夏令时,美国不实行夏令时地区包括:

1.

西澳大利亚州目前不使用夏令时了

西澳大利亚州目前不使用夏令时了

亚利桑那州的绝大部分地区(除东北一小区块)

2.夏威夷州

3.波多黎各和维京群岛

4.美属萨摩亚、关岛和北马里亚纳群岛

美国和加拿大原本于每年10月的最后一个星期日凌晨2时起实施冬令时间;4月的第一个星期日凌晨2时起,恢复夏令时间。

但是根据美国国会最新通过的能源法案,为加强日光节约,自2007年起延长夏令时间,从每年3月的第二个星期日开始,至每年11月的第一个星期日结束,因此,冬令时间将缩短约一个月。之所以安排在周日,是为了便于生活的调整不至于受到较大的影响。

哪两个城市是在同一个时区下,但是,一个使用了夏时令,一个没有使用夏时令,这个要找找了

https://www.ibm.com/support/knowledgecenter/zh/ssw_aix_71/com.ibm.aix.cmds6/zdump.htm

Linux上夏时令的应对的更多相关文章

  1. (转载)如何借助KeePassX在Linux上管理多个密码

    转自:http://netsecurity.51cto.com/art/201311/417764.htm 如今,基于密码的身份验证在网上非常普遍,结果你恐怕数不清自己到底在使用多少个密码.实际上,据 ...

  2. 如何利用mono把.net windows service程序迁移到linux上

    How to migrate a .NET Windows Service application to Linux using mono? 写在最前:之所以用要把windows程序迁移到Linux上 ...

  3. Linux上运行NET

    今天尝试了下Ubuntu上运行NET程序,按照 https://github.com/aspnet/Home 的指引,一步一步来: 1.安装DNVM(原名KVM) Linux控制台下输入 curl - ...

  4. .NET跨平台之旅:在生产环境中上线第一个运行于Linux上的ASP.NET Core站点

    2016年7月10日,我们在生产环境中上线了第一个运行于Linux上的ASP.NET Core站点,这是一个简单的提供后端服务的ASP.NET Core Web API站点. 项目是在Windows上 ...

  5. 【Oracle 集群】11G RAC 知识图文详细教程之RAC在LINUX上使用NFS安装前准备(六)

    RAC在LINUX上使用NFS安装前准备(六) 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习的汇 ...

  6. 【无私分享:ASP.NET CORE 项目实战(第十章)】发布项目到 Linux 上运行 Core 项目

    目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 ASP.Net Core 给我们带来的最大的亮点就是跨平台,我在我电脑(win7)上用虚拟机建了个 CentOS7 ,来演示下 ...

  7. 不装mono,你的.NET程序照样可以在Linux上运行!

    让.NET应用程序在linux上运行,目前通用的做法就是在Linux上安装mono,然后通过”mono your.exe“命令运行这个程序. 这种运行.net程序的办法有两个弱点,一个是需要客户机安装 ...

  8. ASP.NET Core MVC 在linux上的创建及发布

    前言 ASP.NET core转眼都发布半月多了,社区最近也是非常活跃,虽然最近从事python工作,但也一直对.NET念念不忘,看过了园区大神们搭建的Asp.net core项目之后,自己也是跃跃欲 ...

  9. .NET跨平台之旅:生产环境中第2个跑在Linux上的ASP.NET Core站点

    今天我们在生产环境中上线了第2个跑在Linux上的ASP.NET Core站点.这是一个简单的Web API站点,通过命令行的方式调用安装在Linux服务器上的程序完成操作.之前用的是nodejs,现 ...

随机推荐

  1. 基于PCA的特征提取

    图像处理方面的知识也学了一段时间了,总是光看理论的话,感觉联系不上实际,第一次把理论综合的实现出来,对这些理论的印象才感觉的更深刻,也能够为后续的学习打下良好的基础. PCA是比较老的算法,但是可靠性 ...

  2. IOS UIlabel设置文本距离边框距离

    自定义UILabel 继承 UILabel 重写drawTextInRect 方法具体如下: CGRect rect = CGRectMake(rect.origin.x + 5, rect.orig ...

  3. Python源码学习之初始化(三)-PyDictObject的初始化

    先来看它的定义 typedef struct _dictobject PyDictObject; struct _dictobject { PyObject_HEAD Py_ssize_t ma_fi ...

  4. 在sae配置django项目

    1:使用sae开发必须有sae帐号,自己注册吧: 2:在sae上新建立一个python项目: 3:建立完成之后新建一个版本,即版本1: 4:获取svn的地址在eclipse中check下来: 5:注意 ...

  5. [Node.js] Using ES6 and beyond with Node.js

    If you're used to using all the latest ES6+ hotness on the front end via Babel, working in Node.js c ...

  6. Android-它们的定义Dialog

    Android-它们的定义Dialog 2014年4月27日 星期天 天气晴朗 心情平静 本篇博文来分享一个也是开发中常常须要用到的功能-自己定义对话框,这里我用到了Android中的图形资源shap ...

  7. python进阶之路4.1---生成器与迭代器

    *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* ...

  8. eclipse 汉化

    对于: Eclipse Standard/SDK Version: Luna Release (4.4.0) 对应的网络地址:http://download.eclipse.org/technolog ...

  9. C语言中的memset函数和数组指针

    代码: #include <iostream> #include <cstring> using namespace std; int main(){ ] = {}; mems ...

  10. C语言之利用递归将十进制转换为二进制

    #include<stdio.h>#include<stdlib.h>void change2(int num){  if (num != 0)   {   change2(n ...