Changeset View
Changeset View
Standalone View
Standalone View
head/zh_CN.UTF-8/articles/leap-seconds/article.xml
Property | Old Value | New Value |
---|---|---|
fbsd:notbinary | null | yes \ No newline at end of property |
svn:keywords | null | FreeBSD=%H \ No newline at end of property |
svn:mime-type | null | text/xml; charset=UTF-8 \ No newline at end of property |
<?xml version="1.0" encoding="utf-8"?> | |||||
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V5.0-Based Extension//EN" "http://www.FreeBSD.org/XML/share/xml/freebsd50.dtd"> | |||||
<article xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" xml:id="leapseconds" xml:lang="zh_CN"> | |||||
<info> | |||||
<title>FreeBSD 对闰秒的支持</title> | |||||
<pubdate>$FreeBSD$</pubdate> | |||||
</info> | |||||
<sect1 xml:id="leapseconds-definition"> | |||||
<title>介绍</title> | |||||
<para><emphasis>闰秒</emphasis>是为了同步地球自转,而对原子钟标准时间所做的特定修正。本文描述了 FreeBSD 如何处理闰秒。</para> | |||||
<para>截至本文完稿时,下一个闰秒将会发生在2015年6月30日23:59:60 UTC。这个闰秒将会发生在南北美洲和亚太地区的一个工作日里。</para> | |||||
<para>闰秒是由 <link xlink:href="http://datacenter.iers.org/"><acronym>IERS</acronym></link> 在 <link xlink:href="http://datacenter.iers.org/web/guest/bulletins/-/somos/5Rgv/product/16">Bulletin C</link> 上宣布的。</para> | |||||
<para><link xlink:href="https://tools.ietf.org/html/rfc7164#section-3">RFC 7164</link> 描述了闰秒的标准行为。也可参见 <citerefentry><refentrytitle>time2posix</refentrytitle><manvolnum>3</manvolnum></citerefentry> 。</para> | |||||
</sect1> | |||||
<sect1 xml:id="leapseconds-posix"> | |||||
<title>FreeBSD 对闰秒的默认处理方式</title> | |||||
<para>处理闰秒最简单的方法是使用 FreeBSD 预设的 <acronym>POSIX</acronym> 时间规则, 以及 <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/network-ntp.html"><acronym>NTP</acronym></link>。如果 <citerefentry><refentrytitle>ntpd</refentrytitle><manvolnum>8</manvolnum></citerefentry> 正在运行,并且时间和正确处理闰秒的上游 <acronym>NTP</acronym> 服务器同步,闰秒将使系统时间自动重复当天的最后一秒。不需要进行其它调整。</para> | |||||
<para>如果上游的 <acronym>NTP</acronym> 服务器没有正确处理闰秒,<citerefentry><refentrytitle>ntpd</refentrytitle><manvolnum>8</manvolnum></citerefentry> 会在错误的上游服务器发现错误并修正后,跟着加上一秒。</para> | |||||
<para>如果未使用 <acronym>NTP</acronym>,将需要在闰秒过后手动调整系统时钟。</para> | |||||
</sect1> | |||||
<sect1 xml:id="leapseconds-cautions"> | |||||
<title>注意</title> | |||||
<para>闰秒在全世界的同一瞬间插入:<acronym>UTC</acronym> 午夜。日本在上午,太平洋在正午,美洲在傍晚,而欧洲在晚上。</para> | |||||
<para>我们相信并预期,如果提供了正确和稳定的 <acronym>NTP</acronym> 服务,FreeBSD 会在闰秒时按设计运作,正如在之前遇到闰秒时一样。</para> | |||||
<para>然而我们要警告,事实上没有应用程序会向内核询问关于闰秒的事。我们的经验是,闰秒正如设计的一样,本质上是闰秒前一秒的重播,这对大部分应用程序开发者来说是意想不到的事。</para> | |||||
<para>其它操作系统和电脑可能会也可能不会像 FreeBSD 一样处理闰秒,没有正确和稳定 <acronym>NTP</acronym> 服务的系统一点也不知道闰秒的发生。</para> | |||||
<para>电脑因为闰秒而崩溃并非闻所未闻,经验显示,大量的公共 <acronym>NTP</acronym> 服务器可能会错误处理和公告闰秒。</para> | |||||
<para>请试着确认不会因为闰秒而发生任何可怕的事情。</para> | |||||
</sect1> | |||||
<sect1 xml:id="leapseconds-testing"> | |||||
<title>测试</title> | |||||
<para>测试是否将使用闰秒是可行的。由于 <acronym>NTP</acronym> 的性质,测试可能要运行到闰秒前24小时。有些主要的参考时钟来源只在闰秒事件前一小时公告。查询 <acronym>NTP</acronym> 守护进程:</para> | |||||
<screen><prompt>%</prompt> <userinput>ntpq -c 'rv 0 leap'</userinput></screen> | |||||
<para>包含 <literal>leap_add_sec</literal> 的输出表明了对于闰秒的正确支持。<literal>leap_none</literal> 会在闰秒前24小时或闰秒过后显示。</para> | |||||
</sect1> | |||||
<sect1 xml:id="leapseconds-conclusion"> | |||||
<title>结论</title> | |||||
<para>在实践中,FreeBSD 中的闰秒通常不是个问题。我们希望这篇文章能解释清楚这方面可能出现的状况,以及如何使闰秒事件进行得更顺利。</para> | |||||
</sect1> | |||||
</article> |