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,现 ...
随机推荐
- Java并发实现一(并发的实现之Thread和Runnable的区别)
package com.subject01; public class ThreadOrRunnable { public static void main(String[] args) { Syst ...
- mysql 中文乱码的解决方法
添加或修改my.ini 配置文件,设置编码字符为utf8 ,默认为latin1,见红色字体 [mysql]# 设置mysql客户端默认字符集default-character-set=utf8 [my ...
- 获取文本区域(textarea)行数【换行获取输入用户名个数】
需求:输入会员名,一行一个,最多可输入1000个 效果:
- java foreach循环为什么不能赋值
直接上代码 public class test4 { public static void main(String args[]){ int [] a=new int[3]; for(int j:a) ...
- C# 初识Ref和Out
首先:两者都是按地址传递的,使用后都将改变原来参数的数值. 其次:ref可以把参数的数值传递进函数,但是out是要把参数清空,就是说你无法把一个数值从out传递进去的,out进去后,参数的数值为空,所 ...
- Linux下找不到动态链接库
1.生成静态库 生成静态库使用ar工具,其实ar是archive的意思 $ar cqs libhello.a hello.o 2.生成动态库 用gcc来完成,由于可能存在多个版本,因此通常指定版本号: ...
- gulp入门学习实例
好久都没有更新博客了,每天繁忙的工作,下班之后都不想开设备了.前段时间有幸学习了一下gulp这款构建工具,现在和大家分享一下. 为什么使用Gulp Gulp基于Node.js的前端构建工具,通过Gul ...
- 需求管理(REQM,Requirements Management)工具(转)
需求管理(REQM,Requirements Management)属于成熟度2级(受管理级)的过程域,是其他许多过程域实施的前提.对于暂未实施CMMI的企业,同样也可以借鉴CMMI的原则,实施和优化 ...
- 工欲善其事必先利其器---SQL在线可视化模型设计,(还可学习拖拽知识)
作为技术人员,在开发项目中,不可避免的要跟数据库打交道,一个完整的项目正常情况下是讨论完整体需求,有了大致的框框在脑海中后,是需要设计合理的数据库的,这时会有其他的专业的UML建模工具可以使用, 但是 ...
- C# Serializable学习
先上代码,感觉这个功能很给力啊. class Program { static void Main(string[] args) { //下面代码将对象Person进行序列化并存储到一个文件中 Per ...