Linux上夏时令的应对
问题
今天,有游戏客户找来说,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上夏时令的应对的更多相关文章
- (转载)如何借助KeePassX在Linux上管理多个密码
转自:http://netsecurity.51cto.com/art/201311/417764.htm 如今,基于密码的身份验证在网上非常普遍,结果你恐怕数不清自己到底在使用多少个密码.实际上,据 ...
- 如何利用mono把.net windows service程序迁移到linux上
How to migrate a .NET Windows Service application to Linux using mono? 写在最前:之所以用要把windows程序迁移到Linux上 ...
- Linux上运行NET
今天尝试了下Ubuntu上运行NET程序,按照 https://github.com/aspnet/Home 的指引,一步一步来: 1.安装DNVM(原名KVM) Linux控制台下输入 curl - ...
- .NET跨平台之旅:在生产环境中上线第一个运行于Linux上的ASP.NET Core站点
2016年7月10日,我们在生产环境中上线了第一个运行于Linux上的ASP.NET Core站点,这是一个简单的提供后端服务的ASP.NET Core Web API站点. 项目是在Windows上 ...
- 【Oracle 集群】11G RAC 知识图文详细教程之RAC在LINUX上使用NFS安装前准备(六)
RAC在LINUX上使用NFS安装前准备(六) 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习的汇 ...
- 【无私分享:ASP.NET CORE 项目实战(第十章)】发布项目到 Linux 上运行 Core 项目
目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 ASP.Net Core 给我们带来的最大的亮点就是跨平台,我在我电脑(win7)上用虚拟机建了个 CentOS7 ,来演示下 ...
- 不装mono,你的.NET程序照样可以在Linux上运行!
让.NET应用程序在linux上运行,目前通用的做法就是在Linux上安装mono,然后通过”mono your.exe“命令运行这个程序. 这种运行.net程序的办法有两个弱点,一个是需要客户机安装 ...
- ASP.NET Core MVC 在linux上的创建及发布
前言 ASP.NET core转眼都发布半月多了,社区最近也是非常活跃,虽然最近从事python工作,但也一直对.NET念念不忘,看过了园区大神们搭建的Asp.net core项目之后,自己也是跃跃欲 ...
- .NET跨平台之旅:生产环境中第2个跑在Linux上的ASP.NET Core站点
今天我们在生产环境中上线了第2个跑在Linux上的ASP.NET Core站点.这是一个简单的Web API站点,通过命令行的方式调用安装在Linux服务器上的程序完成操作.之前用的是nodejs,现 ...
随机推荐
- 基于PCA的特征提取
图像处理方面的知识也学了一段时间了,总是光看理论的话,感觉联系不上实际,第一次把理论综合的实现出来,对这些理论的印象才感觉的更深刻,也能够为后续的学习打下良好的基础. PCA是比较老的算法,但是可靠性 ...
- IOS UIlabel设置文本距离边框距离
自定义UILabel 继承 UILabel 重写drawTextInRect 方法具体如下: CGRect rect = CGRectMake(rect.origin.x + 5, rect.orig ...
- Python源码学习之初始化(三)-PyDictObject的初始化
先来看它的定义 typedef struct _dictobject PyDictObject; struct _dictobject { PyObject_HEAD Py_ssize_t ma_fi ...
- 在sae配置django项目
1:使用sae开发必须有sae帐号,自己注册吧: 2:在sae上新建立一个python项目: 3:建立完成之后新建一个版本,即版本1: 4:获取svn的地址在eclipse中check下来: 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 ...
- Android-它们的定义Dialog
Android-它们的定义Dialog 2014年4月27日 星期天 天气晴朗 心情平静 本篇博文来分享一个也是开发中常常须要用到的功能-自己定义对话框,这里我用到了Android中的图形资源shap ...
- python进阶之路4.1---生成器与迭代器
*:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* ...
- eclipse 汉化
对于: Eclipse Standard/SDK Version: Luna Release (4.4.0) 对应的网络地址:http://download.eclipse.org/technolog ...
- C语言中的memset函数和数组指针
代码: #include <iostream> #include <cstring> using namespace std; int main(){ ] = {}; mems ...
- C语言之利用递归将十进制转换为二进制
#include<stdio.h>#include<stdlib.h>void change2(int num){ if (num != 0) { change2(n ...