• 欢迎访问安全专题网站,安全专题信息,安全专题教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入安全专题 QQ群
  • 安全专题现已支持滚动公告栏功能,兼容其他浏览器,看到的就是咯,在后台最新消息那里用li标签添加即可。
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏安全专题吧

2017元旦多1秒闰秒变更对服务器的影响

安全事件 aqzt 1年前 (2016-12-31) 4290次浏览 0个评论

2017 年元旦多出的“1 秒”将加在格林尼治时间 12 月 31 日 23 时 59 分后,通过增加闰秒实现。由于北京处于东八时区,所以将在 2017 年 1 月 1 日 7 时 59 分 59 秒后面增加 1 秒,届时会出现 7 时 59 分 60 秒的特殊现象。

20161231212644

为什么要增加 1 秒?这 1 秒从何而来?据天文专家介绍,为了确定时间,世界上有两种时间计量系统,基于地球自转得出的“世界时”和基于原子振荡周期确定的“原子时”。由于两种时间尺度对秒的测量方法不同,随着时间的推移,这两个时间系统之间就会出现差异,所以有了“协调世界时”的概念。

“协调世界时”以原子时秒长为基础,在时刻上尽量接近于世界时。1972 年,国际计量大会决定,当“世界时”与“原子时”之间时刻相差超过 0.9 秒时,就在协调世界时上加上或减去 1 秒(正闰秒或负闰秒),以尽量接近世界时,这就是闰秒。

1.1 什么是闰秒

闰秒(或称跳秒)是对协调世界时作出加一秒或减一秒的调整。

国际原子时的准确度为每日数纳秒,而世界时的准确度为每日数毫秒。对于这种情况,一种称为协调世界时的折衷时标于 1972 年面世。为确保协调世界时与世界时相差不会超过 0.9 秒,在有需要的情况下会在协调世界时内加上正或负一整秒。这一技术措施就称为闰秒。

是否加入闰秒由位于巴黎的国际地球自转和参考坐标系统服务决定,在格里历的每年的 6 月或 12 月的最后一天的最后一分钟进行跳秒或不跳秒,也就是说每年的这两个一分钟并不就是等于 60 秒,而是在 60 秒上下变化。

这一秒是被加在第二天的 00:00:00 前的。当决定加入正闰秒的时候,当天 23:59:59 的下一秒当记为 23:59:60,然后才是第二天的 00:00:00。如果是负闰秒的话,23:59:58 的下一秒就是第二天的 00:00:00 了。

现时所有闰秒都是正闰秒。

1.2 历次闰秒调整

实施年份

6月 30 日 23:59:60

12月 31 日 23:59:60

实施年份

6月 30 日 23:59:60

12月 31 日 23:59:60

1972 年

+1 秒

+1 秒

1989 年

——

+1 秒

1973 年

——

+1 秒

1990 年

——

+1 秒

1974 年

——

+1 秒

1992 年

+1 秒

——

1975 年

——

+1 秒

1993 年

+1 秒

——

1976 年

——

+1 秒

1994 年

+1 秒

——

1977 年

——

+1 秒

1995 年

——

+1 秒

1978 年

——

+1 秒

1997 年

+1 秒

——

1979 年

——

+1 秒

1998 年

——

+1 秒

1981 年

+1 秒

——

2005 年

——

+1 秒

1982 年

+1 秒

——

2008 年

——

+1 秒

1983 年

+1 秒

——

2012 年

+1 秒

——

1985 年

+1 秒

——

2015 年

+1 秒

——

1987 年

——

+1 秒

1.3 2012 年闰秒变更分析

国际地球自转和参考坐标系统服务(IERS)将在格林威治时间 2012 年 6 月 30 日午夜增加一闰秒(维基百科关于闰秒的说明),由于 Linux kernel 和 Posix 关于 NTP 时间跳变的标准不同,将在 2012 年 6 月 30 日 23:59:59 跳变到 2012 年 7 月 1 日后引起 ntpd 进程锁死,从而造成部分开启 ntp 服务的 linux 系统重启.

这个问题将影响部分开启 ntp 服务的 Linux 操作系统–会导致 Linux 内核 Crash!Linux kernel 是在 2.6.18-164.e15 之后的版本中解决了这个问题。换句话说,Linux kernel 低于 2.6.18-164 的 Linux 系统,无论是什么公司的 Linux 都将受到影响。(今晚过后大家可以查看一下你的 Linux 系统日志,看看闰秒有没有发生)

可以参看下面的 bug 描述:
· LKML: Chris Adams: Re: Bug: Status/Summary of slashdot leap-second crash on new years 2008-2009
· Bug 479765 – Leap second message can hang the kernel

1.4 2012 闰秒变更时全球重大事故

除了 Linux 服务器外,一些服务器程序也因为闰秒出现了问题,如 Reddit、Mozilla、FourSquare、Yelp、LinkedIn 和 Gawker 等网站都短暂遭遇了技术问题,国内的一家云储存供应商发现运行在 CentOS 6.2 上的 Java 和 MySQL 因闰秒出现了不同程度的 CPU 利用率增长, 猜测是 JVM 和 MySQL 试图通过 CPU 硬件晶振的数据获得当前精确的时间,由于闰秒的关系,这个时间和操作系统维持的墙上时间(Wall Time,也就是显示给用户看的时间)不一致,导致了这个问题。简单的修正方法是强制重置系统时间,让系统中所有时间回到同步的状态。

1.5 如何避免闰秒对服务器的影响

(1)先关闭 ntp 时间同步,2017 年 1 月 1 日 8 时 10 分开启 ntp 服务;
(2)发布一个运维方面的紧急预警,由于 2017 年 1 月 1 日闰秒问题,服务器存在隐患,需要通知预防,检查对时间较敏感的业务;
虽然闰秒调整对普通民众的日常生活不会产生影响。不过,这个问题将影响部分开启 ntp 服务的 Linux 操作系统——会导致 Linux 内核 Crash!Linux kernel 是在 2.6.18-164.e15 之后的版本中解决了这个问题。换句话说,Linux kernel 低于 2.6.18-164 的 Linux 系统,无论是什么公司的 Linux 都将受到影响。
(3)使用了 timestamp,那么应用可能会报错;


Selinux 中国 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:2017 元旦多 1 秒闰秒变更对服务器的影响
喜欢 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址