71 lines
4.4 KiB
XML
71 lines
4.4 KiB
XML
<?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_TW">
|
||
|
||
<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 CST。下一次潤秒會發生在南北美洲和亞太地區的工作日。</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>The easiest way to handle leap seconds is with the
|
||
<acronym>POSIX</acronym> time rules FreeBSD uses by default,
|
||
combined with <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/network-ntp.html"><acronym>NTP</acronym></link>.
|
||
When <citerefentry><refentrytitle>ntpd</refentrytitle><manvolnum>8</manvolnum></citerefentry> is running and the time is synchronized with
|
||
upstream <acronym>NTP</acronym> servers that handle leap seconds
|
||
correctly, the leap second will cause the system time to
|
||
automatically repeat the last second of the day. No other
|
||
adjustments are necessary.</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> 的輸出指出對於潤秒的支援。潤秒前24小時,或是潤秒已經過了,會顯示<literal>leap_none</literal>。</para>
|
||
</sect1>
|
||
|
||
<sect1 xml:id="leapseconds-conclusion">
|
||
<title>結論</title>
|
||
|
||
<para>實務上,FreeBSD 的潤秒通常不是個問題。我們希望這篇概述能幫助釐清預期會遇到什麼狀況,如何使潤秒事件進行的更順利。</para>
|
||
</sect1>
|
||
</article>
|