<?xml version="1.0"?>
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
	"http://docbook.org/xml/4.1.2/docbookx.dtd">

<article>
	<articleinfo>
		<title>Managing Accurate Date and Time</title>
		<copyright><year>2002,2003</year><holder>Avi Alkalay</holder></copyright>

		<authorgroup>
			<author>
				<firstname>Avi</firstname>
				<surname>Alkalay</surname>
				<affiliation>
					<orgname>IBM Linux Impact Team :: <ulink url="http://ibm.com/linux">ibm.com/linux</ulink></orgname>
					<orgdiv>Linux, Open Standards consultant :: Senior IT and Software Architect</orgdiv>
					<address>
						<email>avi at unix.sh</email>
						<email>avi at br.ibm.com</email>
					</address>
				</affiliation>
			</author>
			<othercredit>
				<firstname>Brad</firstname><surname>Knowles</surname>
<!--O
				<contrib>Suggestion to use pool.ntp.org and NTP's stratum 2 public time servers</contrib>
-->
	<contrib>pool.ntp.org と NTP stratum 2
	 公開タイムサーバの利用に関する示唆</contrib>
			</othercredit>
			<othercredit>
				<firstname>Kent</firstname><surname>Borg</surname>
	<contrib>ntpdc の代わりに ntpq を利用せよとの示唆</contrib>
<!--O
				<contrib>Suggestion to use ntpq instead of ntpdc</contrib>
-->
			</othercredit>
			<othercredit>
				<firstname>Yura</firstname><surname>Moron</surname>
<!--O
				<contrib>Good explanations on ntpq and ntpdc info</contrib>
-->
			<contrib>ntpq と ntpdc の情報に関する良い例</contrib>
		      </othercredit>
<!--O
			<othercredit>
				<firstname>Takeo</firstname><surname>Nakano</surname>
				<affiliation>
					<address>
						<email>nakano at apm.seikei.ac.jp</email>
					</address>
				</affiliation>
				<contrib>Japanese translation</contrib>
			</othercredit>
-->
<othercredit role="ja-translator">
 <othername>中野武雄</othername>
 <affiliation><address>
	<email>nakano at apm.seikei.ac.jp</email>
 </address></affiliation>
 <contrib>日本語訳</contrib>
</othercredit>
			<othercredit>
				<firstname>SHAKI</firstname>
				<affiliation>
					<address>
						<email>sha-ki at narod.ru</email>
					</address>
				</affiliation>
<!--O
				<contrib>Russian translation</contrib>
-->
				<contrib>ロシア語訳</contrib>
			</othercredit>
		</authorgroup>

		<pubdate>1.0.6 :: 2004-02-25</pubdate>

		<revhistory>
			<revision>
				<revnumber>1.0.6</revnumber>
				<date>25 Feb 2004</date>
				<authorinitials>avi</authorinitials>
				<revremark>Included credits and link to russian translation.</revremark>
			</revision>
			<revision>
				<revnumber>1.0.5</revnumber>
				<date>05 Jul 2003</date>
				<authorinitials>avi</authorinitials>
				<revremark>Changed public time servers list URL. Added pool.ntp.org.</revremark>
			</revision>
			<revision>
				<revnumber>1.0.4</revnumber>
				<date>21 Dec 2002</date>
				<authorinitials>avi</authorinitials>
				<revremark>Added japanese translation link and credits.</revremark>
			</revision>
			<revision>
				<revnumber>1.0.3</revnumber>
				<date>24 Aug 2002</date>
				<authorinitials>avi</authorinitials>
				<revremark>Fixed wrong screen and programlisting widths.</revremark>
			</revision>
			<revision>
				<revnumber>1.0.2</revnumber>
				<date>04 Aug 2002</date>
				<authorinitials>avi</authorinitials>
				<revremark>Link to public time servers page.</revremark>
			</revision>
			<revision>
				<revnumber>1.0.1</revnumber>
				<date>07 May 2002</date>
				<authorinitials>avi</authorinitials>
				<revremark>Final XML conversion. Files reorganization.</revremark>
			</revision>
			<revision>
				<revnumber>1.0</revnumber>
				<date>28 Apr 2002</date>
				<authorinitials>avi</authorinitials>
				<revremark>Finalized image.</revremark>
			</revision>
			<revision>
				<revnumber>0.8</revnumber>
				<date>27 Apr 2002</date>
				<authorinitials>avi</authorinitials>
				<revremark>Switched from ntpdc example to ntpq, based on contributions.</revremark>
			</revision>
			<revision>
				<revnumber>0.8.1</revnumber>
				<date>20 Apr 2002</date>
				<authorinitials>avi</authorinitials>
				<revremark>Improved graphic. Links to other doc locations.</revremark>
			</revision>
			<revision>
				<revnumber>0.8</revnumber>
				<date>14 Apr 2002</date>
				<authorinitials>avi</authorinitials>
				<revremark>Beter tunning of NTP graphic.</revremark>
			</revision>
			<revision>
				<revnumber>0.76</revnumber>
				<date>13 Apr 2002</date>
				<authorinitials>avi</authorinitials>
				<revremark>Inclusion of architecture graphic.</revremark>
			</revision>
			<revision>
				<revnumber>0.75</revnumber>
				<date>10 Apr 2002</date>
				<authorinitials>avi</authorinitials>
				<revremark>Spell checked. Using DocBook XSLT 1.50.</revremark>
			</revision>
			<revision>
				<revnumber>0.65</revnumber>
				<date>31 Mar 2002</date>
				<authorinitials>avi</authorinitials>
				<revremark>Upgraded to XML 4.1.2 DocBook format</revremark>
			</revision>
			<revision>
				<revnumber>0.6</revnumber>
				<date>29 Mar 2002</date>
				<authorinitials>avi</authorinitials>
				<revremark>Finished timezone mechanism on Linux. Created appendix. Now only drawings are needed.</revremark>
			</revision>
			<revision>
				<revnumber>0.4</revnumber>
				<date>24 Mar 2002</date>
				<authorinitials>avi</authorinitials>
				<revremark>All skeleton defined. All command examples written.</revremark>
			</revision>
			<revision>
				<revnumber>0.2</revnumber>
				<date>19 Mar 2002</date>
				<authorinitials>avi</authorinitials>
				<revremark>First DocBook version</revremark>
			</revision>
		</revhistory>
	</articleinfo>

<!--O
	<section id="time"><title>Computer Global Date and Time Concept</title>
-->
	<section id="time"><title>コンピュータにおける地球上での日付・時間の扱い</title>
<!--O
		<para>To determine the current time for some planet region, a computer needs exactly this two informations:</para>
-->
<para>
 地球上のある地域に置かれたコンピュータが現在時刻を決定するには、
 次の二つの情報を正確に知る必要があります。
</para>
		<orderedlist numeration="arabic">
<!--O
			<listitem><para>Correct <acronym>UTC</acronym> (universal time as in Greenwich, but not <acronym>GMT</acronym>) time</para></listitem>
			<listitem><para>Region's current Time Zone</para></listitem>
-->
 <listitem><para>正しい <acronym>UTC</acronym> 時刻
  (グリニッジにおける世界時。
   ただし <acronym>GMT</acronym> ではない)</para></listitem>
 <listitem><para>その地域の現在のタイムゾーン</para></listitem>
		</orderedlist>
<!--O
		<para>For computers, there is also the hardware clock, which is used as a base by the OS to set his time.</para>
-->
<para>
 コンピュータにはハードウェアクロックも付属しており、
 OS は自分の時刻を設定するときにこれを基準として用います。
</para>
<!--O
		<para>OS date and time (we'll use only date <emphasis>or</emphasis> time from now on) is set on boot, by some script that reads the hardware clock, makes Time Zone calculations (there is no time zone data stored in <acronym>BIOS</acronym>) and sets the OS. After this synchronization, <acronym>BIOS</acronym> and OS time are completely independent. So after a while they may have some seconds of difference. Which one is correct? If you don't make special configurations, none.</para>
-->
<para>
 OS の日付と時刻 (以降では日付/時刻のいずれかのみを書きます)
 は起動時に設定されます。
 何らかのスクリプトがハードウェアクロックを読み、
 またタイムゾーンを計算して OS に設定します
(<acronym>BIOS</acronym> にはタイムゾーンのデータは保存されていません)。
 この同期がなされて以降は、<acronym>BIOS</acronym> の時刻と
 OS の時刻とは完全に独立したものとなります。
 ですからしばらく経った後では、両者が数秒異なることもあるかもしれません。
 どちらが正しいのでしょうか？
 何らかの設定をしていない限り、どちらも正しくはありません。
</para> 
<!--O
		<para>We'll discuss here how to make them both <emphasis>globally 100% accurate</emphasis>.</para>
-->
<para>
 ここでは、この両者を
 <emphasis>地球上のあらゆる場所で 100% 正確にする</emphasis>
 方法について議論していきます。
</para>
	</section>

<!--O
	<section id="tz"><title>What are Time Zones?</title>
-->
	<section id="tz"><title>タイムゾーンとは</title>
<!--O
		<para>Time Zones are a geophysical world globe division of 15<superscript>o</superscript> each, starting at Greenwich, in England, created to help people know what time is it now in another part of the world.</para>
-->
<para>
 <!--NAKANO 適切なのは geographical じゃないのかなあ-->
 タイムゾーンとは、地球を地理学的に、
 イギリスのグリニッジを起点として
 15<superscript>o</superscript> ごとに分割したものです。
 世界の別の場所では今何時なのか、
 ということをわかりやすくするために作られました。
</para>
<!--O
		<para>Nowadays it is much more a political division than geophysical, because sometimes people needs to have the same time as other people in not-so-far locations. And for energy savings reasons, we have today the <link linkend="tz.dst">Daylight Savings Time</link>, that are also a Time Zone variation.</para>
-->
<para>
 近年ではタイムゾーンは、地理学的というよりは、
 ずっと政治的なものになっています。
 人々は「近くの人たち」と時刻を共有したい場合があるからです。
 また省エネルギーの面から、今日では
 <link linkend="tz.dst">サマータイム (Daylight Savings Time)</link>
 が利用されており、これもタイムゾーンを変化させます。
</para>
<!--O
		<para>Time Zones are usually defined by your country government or some astronomical institute, and is represented by 3 or 4 letters. See <xref linkend="tz.examples"/> for examples.</para>
-->
<para>
 タイムゾーンは通常各国の政府や天文機関によって定義され、
 3 文字または 4 文字で表記されます。
 例は <xref linkend="tz.examples"/> を見てください。
</para>
<!--O
		<para>If you want to know what time is it now in a different world region, you can use the <ulink url="http://www.timezoneconverter.com/">timezoneconverter.com</ulink> website.</para>
-->
<para>
 世界の別の地域で今何時なのかを知りたい場合には、
 <ulink url="http://www.timezoneconverter.com/">timezoneconverter.com</ulink> 
 の web サイトを使うとわかります。
</para>

<!--O
		<section id="tz.dst"><title>Daylight Savings Time</title>
-->
		<section id="tz.dst"><title>サマータイム (Daylight Savings Time, DST)</title>
<!--O
			<para>For energy savings reasons, governments created the Daylight Savings Time. Our clocks are forwarded one hour, and this makes our days look longer. In fact, what really happens is only a Time Zone change. The primitive time (<acronym>UTC</acronym>) is still, and will allways be, the same.</para>
-->
<para>
 エネルギー節約のため、各国の政府はサマータイムを設けることがあります。
 私たちの時計は 1 時間進められ、これによって昼間が長くなったように感じられます。
 実際に起きているのは、単にタイムゾーンの変更にすぎません。
 基準となる時刻 (<acronym>UTC</acronym>) は不変で、
 常に同じです。
</para>
<!--O
			<para>Later we'll see how to enable and disable <acronym>DST</acronym> automatically in Linux.</para>
-->
<para>
 Linux でサマータイムを自動的に有効・無効にする方法については、
 後ほど見ていくことにします。
</para>
		</section>
<!--O
		<section id="tz.examples"><title>Time Zones Examples</title>
-->
<section id="tz.examples"><title>タイムゾーンの例</title>
<!--O
			<para>There is nothing better than examples:</para>
-->
<para>
 例をお見せする以上にわかりやすい説明はないでしょう。
</para>
<!--O
			<table pgwide="0" id="tz.ex.br"><title>Brazilian Time Zones. Shifts relative to <acronym>UTC</acronym></title>
-->
			<table pgwide="0" id="tz.ex.br"><title>ブラジルのタイムゾーンと <acronym>UTC</acronym> に対する時差</title>
				<tgroup cols="3">
					<thead>
						<row>
<!--O
							<entry>Name and Shift</entry>
-->
<entry>名前と時差</entry>
<!--O
							<entry><link linkend="tz.dst"><acronym>DST</acronym></link> Name and Shift</entry>
-->
<entry><link linkend="tz.dst"><acronym>DST</acronym></link> の名前と時差</entry>
<!--O
							<entry>Locations</entry>
-->
<entry>場所</entry>
						</row>
					</thead>
					<tbody>
						<row>
							<entry>BREST -2:00</entry>
							<entry>BREDT -1:00</entry>
							<entry>Fernando de Noronha</entry>
						</row>
						<row>
							<entry>BRST -3:00</entry>
							<entry>BRDT -2:00</entry>
							<entry>S&atilde;o Paulo, Rio, Brasilia, Minas Gerais, North East Region, South Region,etc</entry>
						</row>
						<row>
							<entry>BRWST -4:00</entry>
							<entry>BRWDT -3:00</entry>
							<entry>West Region</entry>
						</row>
						<row>
							<entry>BRAST -5:00</entry>
							<entry>BRADT -4:00</entry>
							<entry>Acre</entry>
						</row>
					</tbody>
				</tgroup>
			</table>
<!--O
			<para>Please send me contributions like this table for US Time Zone.</para>
-->
<para>
 US のタイムゾーンについて、このような表をどなたか送っていただけませんか。
</para>
		</section>
<!--O
		<section id="tz.linux"><title>Time Zone Mechanism on Linux</title>
-->
<section id="tz.linux"><title>Linux におけるタイムゾーンの仕組み</title>
<!--O
			<para>Linux systems uses the GLIBC dynamic Time Zones, based on <filename>/etc/localtime</filename>. This file is a link to (or a copy of) a zone information file, usually located under <filename class="directory">/usr/share/zoneinfo</filename> directory.</para>
-->
<para>
 Linux システムは GLIBC の動的なタイムゾーンを用いており、
 これは <filename>/etc/localtime</filename> で決まります。
 このファイルは、あるゾーン情報ファイルへのリンク (またはそのコピー) です。
 ゾーン情報ファイルは通常
 <filename class="directory">/usr/share/zoneinfo</filename>
 ディレクトリ以下に置かれています。
</para>
<!--O
			<para>From a geophysical perspective, there is only 360<superscript>o</superscript>/15<superscript>o</superscript>=24 Time Zones in the world. But to make things easy to people, and to accommodate all the political variations (like Daylight Savings Time), you'll find hundreds of zoneinfo files in <filename class="directory">/usr/share/zoneinfo</filename>, each for every world city, country, etc, and its not complete (it can never be).</para>
-->
<para>
 地理学的な観点からいうと、世界には
 360<superscript>o</superscript>/15<superscript>o</superscript>=24 
 のタイムゾーンだけあれば良いはずです。
 しかし物事をわかりやすくするため、
 また政治的な変更 (サマータイムなど) にあわせやすくするため、
 <filename class="directory">/usr/share/zoneinfo</filename>
 には数百もの zoneinfo ファイルが置かれています。
 それぞれは世界中のあらゆる都市・国などに対応していますが、
 完全なものではありません (それは無理でしょう)。
</para>
<!--O
			<para>Some countries, like Brazil, don't have a fixed day to start Daylight Savings Time. It is defined every year, a couple of months before summer, and you may end up in a situation you'll have to change your zoneinfo file, which was compiled by <command>zic</command> from a text file like this.</para>
-->
<para>
 国によっては (ブラジルもそうですが)、
 サマータイムの開始する日付が決まっていないこともあります。
 ブラジルではサマータイムは年ごとに決定され、夏の 2〜3 か月前に始まります。
 この状況をうまく扱うには、zoneinfo ファイルを自分で変更しなければなりません。
 zoneinfo ファイルは、以下のようなテキストファイルを <command>zic</command>
 コマンドでコンパイルすることによって生成されます。
</para>
<!--O
			<example><title>Brazilian Zone Info text file</title>
-->
			<example><title>ブラジルのゾーン情報のテキストファイル</title>
				<programlisting>
# Brazil Time Zones
#
# Brazilian Time Zones are:
# BREST: East of Brasilia. Fernando de Noronha.
# BRST:  Brasilia, S&atilde;o Paulo, Rio, Northeast, South etc
# BRWST: West of Brasilia. Mato Grosso, Manaus
# BRAST: Acre.
#
# In daylight saving time, letter 'S' changes to 'D'.
#
# To install, make:
#
# # zic Brazil.txt
#
# Zone files will be installed in /usr/share/zoneinfo (depends on your
# distribution). Then, make a symbolic link from your zone to /etc/localtime:
#
# # ln -sf /usr/share/zoneinfo/Brazil/Brasilia /etc/localtime
#
#
# If you have updates and new standards to this file please send to
#
# Avi Alkalay &lt;avi @ unix.sh&gt;
#
# Last update: 18 Nov 2000
# This file is available at http://avi.alkalay.net/linux/zoneinfo/
#

# Rule  NAME    FROM  TO    TYPE  IN    ON   AT    SAVE   LETTER/S
Rule    Brazil  1931  1932  -     Oct   3    0:00  1:00   D
Rule    Brazil  1932  1933  -     Mar   31   0:00  0      S
Rule    Brazil  1949  only  -     Dec   1    0:00  1:00   D
Rule    Brazil  1950  only  -     Apr   30   0:00  0      S
Rule    Brazil  1950  1952  -     Dec   1    0:00  1:00   D
Rule    Brazil  1951  only  -     Apr   16   0:00  0      S
Rule    Brazil  1952  only  -     Mar   31   0:00  0      S
Rule    Brazil  1953  only  -     Feb   28   0:00  0      S
Rule    Brazil  1963  only  -     Oct   23   0:00  1:00   D
Rule    Brazil  1964  only  -     Mar   1    0:00  0      S
Rule    Brazil  1965  only  -     Jan   31   0:00  1:00   D
Rule    Brazil  1965  only  -     Mar   31   0:00  0      S
Rule    Brazil  1965  only  -     Dec   1    0:00  1:00   D
Rule    Brazil  1966  1968  -     Mar   1    0:00  0      S
Rule    Brazil  1966  1967  -     Nov   1    0:00  1:00   D
Rule    Brazil  1984  only  -     Nov   2    0:00  1:00   D
Rule    Brazil  1985  only  -     Mar   15   0:00  0      S
Rule    Brazil  1985  only  -     Nov   2    0:00  1:00   D
Rule    Brazil  1986  only  -     Mar   15   0:00  0      S
Rule    Brazil  1986  only  -     Oct   25   0:00  1:00   D
Rule    Brazil  1987  only  -     Feb   14   0:00  0      S
Rule    Brazil  1987  only  -     Oct   25   0:00  1:00   D
Rule    Brazil  1988  only  -     Feb   7    0:00  0      S
Rule    Brazil  1988  only  -     Oct   16   0:00  1:00   D
Rule    Brazil  1989  only  -     Jan   29   0:00  0      S
Rule    Brazil  1989  only  -     Oct   15   0:00  1:00   D
Rule    Brazil  1990  only  -     Feb   11   0:00  0      S
Rule    Brazil  1990  only  -     Oct   21   0:00  1:00   D
Rule    Brazil  1991  only  -     Feb   17   0:00  0      S
Rule    Brazil  1991  only  -     Oct   20   0:00  1:00   D
Rule    Brazil  1992  only  -     Feb   9    0:00  0      S
Rule    Brazil  1992  only  -     Oct   25   0:00  1:00   D
Rule    Brazil  1993  only  -     Jan   31   0:00  0      S
Rule    Brazil  1993  only  -     Oct   17   0:00  1:00   D
Rule    Brazil  1994  only  -     Feb   20   0:00  0      S
Rule    Brazil  1994  only  -     Oct   16   0:00  1:00   D
Rule    Brazil  1995  only  -     Feb   19   0:00  0      S
Rule    Brazil  1995  only  -     Oct   15   0:00  1:00   D
Rule    Brazil  1996  only  -     Feb   11   0:00  0      S
Rule    Brazil  1996  only  -     Oct   06   0:00  1:00   D
Rule    Brazil  1997  only  -     Feb   16   0:00  0      S
Rule    Brazil  1997  only  -     Oct   06   0:00  1:00   D
Rule    Brazil  1998  only  -     Mar   01   0:00  0      S
Rule    Brazil  1998  only  -     Oct   11   0:00  1:00   D
Rule    Brazil  1999  only  -     Feb   21   0:00  0      S
Rule    Brazil  1999  only  -     Oct   03   0:00  1:00   D
Rule    Brazil  2000  only  -     Feb   27   0:00  0      S
Rule    Brazil  2000  only  -     Oct   8    0:00  1:00   D
Rule    Brazil  2001  only  -     Feb   18   0:00  0      S


# Zone  NAME                          GMTOFF  RULES/SAVE    FORMAT  [UNTIL]
Zone    Brazil/DeNoronha              -2:00   Brazil        BRE%sT
Zone    posix/Brazil/DeNoronha        -2:00   Brazil        BRE%sT
Zone    right/Brazil/DeNoronha        -2:00   Brazil        BRE%sT
Zone    Brazil/East                   -2:00   Brazil        BRE%sT
Zone    posix/Brazil/East             -2:00   Brazil        BRE%sT
Zone    right/Brazil/East             -2:00   Brazil        BRE%sT

Zone    America/Sao_Paulo             -3:00   Brazil        BR%sT
Zone    America/Rio_de_Janeiro        -3:00   Brazil        BR%sT
Zone    America/Brasilia              -3:00   Brazil        BR%sT
Zone    posix/America/Sao_Paulo       -3:00   Brazil        BR%sT
Zone    posix/America/Rio_de_Janeiro  -3:00   Brazil        BR%sT
Zone    posix/America/Salvador        -3:00   Brazil        BR%sT
Zone    posix/America/Brasilia        -3:00   Brazil        BR%sT
Zone    posix/Brazil/Central          -3:00   Brazil        BR%sT
Zone    posix/Brazil/Brasilia         -3:00   Brazil        BR%sT
Zone    posix/Brazil/Sao_Paulo        -3:00   Brazil        BR%sT
Zone    posix/Brazil/Salvador         -3:00   Brazil        BR%sT
Zone    posix/Brazil/Rio_de_Janeiro   -3:00   Brazil        BR%sT
Zone    right/America/Sao_Paulo       -3:00   Brazil        BR%sT
Zone    right/America/Rio_de_Janeiro  -3:00   Brazil        BR%sT
Zone    right/America/Salvador        -3:00   Brazil        BR%sT
Zone    right/America/Brasilia        -3:00   Brazil        BR%sT
Zone    right/Brazil/Central          -3:00   Brazil        BR%sT
Zone    right/Brazil/Brasilia         -3:00   Brazil        BR%sT
Zone    right/Brazil/Sao_Paulo        -3:00   Brazil        BR%sT
Zone    right/Brazil/Salvador         -3:00   Brazil        BR%sT
Zone    right/Brazil/Rio_de_Janeiro   -3:00   Brazil        BR%sT
Zone    Brazil/Central                -3:00   Brazil        BR%sT
Zone    Brazil/Brasilia               -3:00   Brazil        BR%sT
Zone    Brazil/Sao_Paulo              -3:00   Brazil        BR%sT
Zone    Brazil/Rio_de_Janeiro         -3:00   Brazil        BR%sT
Zone    Brazil/Salvador               -3:00   Brazil        BR%sT

Zone    Brazil/West                   -4:00   Brazil        BRW%sT
Zone    Brazil/Manaus                 -4:00   Brazil        BRW%sT
Zone    Brazil/Rondonia               -4:00   Brazil        BRW%sT
Zone    Brazil/Roraima                -4:00   Brazil        BRW%sT
Zone    Brazil/Mato_Grosso            -4:00   Brazil        BRW%sT
Zone    posix/Brazil/Manaus           -4:00   Brazil        BRW%sT
Zone    posix/Brazil/Mato_Grosso      -4:00   Brazil        BRW%sT
Zone    right/Brazil/Manaus           -4:00   Brazil        BRW%sT
Zone    right/Brazil/Mato_Grosso      -4:00   Brazil        BRW%sT
Zone    posix/America/Manaus          -4:00   Brazil        BRW%sT
Zone    right/America/Manaus          -4:00   Brazil        BRW%sT

Zone    Brazil/Acre                   -5:00   Brazil        BRA%sT
				</programlisting>
			</example>
<!--O
			<para>The <command>Rule</command> block defines the date and time we change the Time Zone, while in the <command>Zone</command> block we reference the <command>Rule</command> will manage it. Note that the <command>Zone</command> name is actually the file name under <filename class="directory">/usr/share/zoneinfo</filename> directory, and here we defined several different names for the same Time Zone, just to be easyer for people to find their zone.</para>
-->
<para>
 <command>Rule</command> ブロックは
 タイムゾーンを変更する日付と時刻を定義しています。
 一方 <command>Zone</command> ブロックでは、
 そのゾーンを管理する <command>Rule</command> を参照しています。
</para>
<!--O
			<para>This file's comments explains how to install these time zones, using the <command>zic</command> zoneinfo compiler (which already installs them also). To make it effective, you only have to link (or copy) the zoneinfo file to <filename>/etc/localtime</filename>. In some distributions, there is a higher level (and preferred) way to set the Time Zone, described in <xref linkend="set.tz"/>.</para>
-->
<para>
 このファイルのコメントでは、
 ゾーン情報コンパイラである <command>zic</command>
 を使ってこれらのタイムゾーンをインストールする方法が説明されています
 (既にインストール済みになっていると思いますが)。
 インストールしたものを有効にするには、そのゾーン情報ファイルを
 <filename>/etc/localtime</filename> ファイルからリンク (あるいはコピー)
 するだけで OK です。
 ディストリビューションによっては、より高度な (そしておそらくより望ましい)
 タイムゾーンの設定方法が存在します。これらは
 <xref linkend="set.tz"/> で説明します。
</para>
<!--O
			<para>After making <filename>/etc/localtime</filename> pointing to the correct zoneinfo file, you are already under that zone rules and <acronym>DST</acronym> changes are automatic -\- you don't have to change time manually.</para>
-->
<para>
 <filename>/etc/localtime</filename> が正しい
 zoneinfo ファイルを指すようにしたら、
 既にあなたのコンピュータはそのゾーンの規則に従っており、
 サマータイムの変更も自動的に行われます。
 時刻を手動で変更する必要はありません。
</para>
<!--O
			<para>The following commands sequence shows Linux Time Zone mechanics dynamism. Note they were all issued in less than one minute:</para>
-->
<para>
 次に示す一連のコマンドは、
 Linux のタイムゾーンに関するメカニズムの動作を示すものです。
 これらはすべて 1 分以内に実行されたものです。
</para>
			<screen><prompt>bash$ </prompt><command>ls -al /etc/localtime</command>
lrwxrwxrwx  1 root root 35 May 22  2001 /etc/localtime -> <emphasis>/usr/share/zoneinfo/Brazil/Brasilia</emphasis>
<prompt>bash$ </prompt><command>date</command>
Fri Mar 29 20:13:38 <emphasis>BRST</emphasis> 2002
<prompt>bash# </prompt><command>ln -sf /usr/share/zoneinfo/GMT /etc/localtime</command>
<prompt>bash$ </prompt><command>date</command>
Fri Mar 29 23:13:47 <emphasis>GMT</emphasis> 2002
<prompt>bash# </prompt><command>ln -sf /usr/share/zoneinfo/Brazil/Brasilia /etc/localtime</command>
<prompt>bash$ </prompt><command>date</command>
Fri Mar 29 20:14:03 <emphasis>BRST</emphasis> 2002</screen>
<!--O
			<para>At 20:13, I was in my default brazilian Time Zone (BRST), then I switched to GMT and my system time changed to 23:13! When your Time Zone enters DST, you'll see a similar effect, but the rules are all inside your Time Zone (<filename>/etc/localtime</filename> link doesn't change like this example).</para>
-->
<para>
 20:13 に、私は自分のデフォルトであるブラジルのタイムゾーン
 (BRST) にいました。
 ここで私は自分のシステムを GMT に変更し、すると私のシステム時刻は
 23:13 になりました!
 あなたも、自分のいるタイムゾーンがサマータイムに変わったときに、
 同様の現象を見ることになります [訳注: 日本国内では無理ですが :-)]。
 ただしその規則はすべてタイムゾーンの内部にあるものです
 (<filename>/etc/localtime</filename> のリンクが
 この例のように変わるわけではありません)。
</para>
<!--O
			<para>An application running in this machine (eg. web-server generating access logs) will feel this change, so it is very important for developers to remember that the full Time Concept is the current <emphasis>time</emphasis> plus current <emphasis>Time Zone</emphasis>, as described in <xref linkend="time"/>.</para>
-->
<para>
 このマシンで動作しているアプリケーション
 (アクセスログを生成する web サーバなど) は、
 この変更を認識します。
 したがって <xref linkend="time"/> で述べたとおり、
 完全な意味での時刻とは現在の<emphasis>時刻</emphasis>
 プラス現在の<emphasis>タイムゾーン</emphasis>である、
 という事実を理解することは、開発者にとって非常に重要です。
</para>
<!--O
			<para>In the end, I switched back to my correct Time Zone.</para>
-->
<para>
 最後に私は、自分の正しいタイムゾーンに戻しました。
</para>
		</section>
	</section>

<!--O
	<section id="set"><title>The Correct Settings for Your Linux Box</title>
-->
	<section id="set"><title>Linux マシンを正しく設定する</title>
<!--O
		<para>For any OS installation, you must know your Time Zone. This is expressed in terms of a city, a state or a country. You must also decide how to set <acronym>BIOS</acronym> time, and we may follow two strategies here:</para>
-->
<para>
 どんな OS をインストールするにせよ、
 現在のタイムゾーンに関する情報は必須です。
 これは都市・州・国などで表現されます。
 <acronym>BIOS</acronym> 時刻をどう設定するかも決めておかなければなりませんが、
 これには次の方針に従うのがいいでしょう。
</para>
		<variablelist>
<!--O
			<varlistentry><term><emphasis>Linux Only Machine</emphasis></term>
-->
			<varlistentry><term><emphasis>Linux だけのマシン</emphasis></term>
				<listitem>
<!--O
					<para>In this case you should set <acronym>BIOS</acronym> time to <acronym>UTC</acronym> time. <acronym>DST</acronym> changes will be dynamically managed by <link linkend="tz.linux">Time Zone configurations</link>.</para>
-->
<para>
 この場合は <acronym>BIOS</acronym> 時刻は UTC にしておくのがいいでしょう。
 サマータイムの変更も <link linkend="tz.linux">タイムゾーン設定</link>
 によって動的に管理されます。
</para>
				</listitem>
			</varlistentry>

<!--O
			<varlistentry><term><emphasis>Dual Boot Linux and MS Windows Machine</emphasis></term>
-->
			<varlistentry><term><emphasis>Linux と MS Windows のデュアルブートマシン</emphasis></term>

				<listitem>
<!--O
					<para>Windows handles time in a more primitive way than Linux. For Windows, <acronym>BIOS</acronym> time is allways your local time, so <acronym>DST</acronym> changes are more aggressive because they directly change hardware clock. And since both Linux and Windows initially get and set time from the hardware, when they are together, Linux must handle it in the same way. So set <acronym>BIOS</acronym> time to your localtime.</para>
-->
<para>
 Windows は、Linux に比べ、時刻を原始的に扱います。
 Windows では <acronym>BIOS</acronym> 時刻が常に地方時 (localtime) に等しく、
 したがってサマータイムにおいては、
 ハードウェアクロックが直接変更されるという、
 より大きな変化が生じることになります。
 Linux も Windows もブート時にはハードウェアから時刻を取得して設定するので、
 両者を共存させるときには Linux でも同じやり方で時刻を扱わなければなりません。
 したがって <acronym>BIOS</acronym> 時刻を
 自分の地方時に合わせなければなりません。
</para>
				</listitem>
			</varlistentry>
		</variablelist>
<!--O
		<section id="set.tz"><title>Setting Time Zone</title>
-->
		<section id="set.tz"><title>タイムゾーン設定</title>
<!--O
			<para>On Red Hat Linux and derived systems, you can set the hardware clock strategy and Time Zone using the <command>timeconfig</command> command, that shows a user-friendly dialog. You can also use it non-interactively:</para>
-->
<para>
 Red Hat Linux およびその派生システムでは、
 ハードウェアクロックの設定方針とタイムゾーンとは
 <command>timeconfig</command> コマンドで設定できます。
 このコマンドはユーザーフレンドリーなダイアログを表示してくれます。
 また非対話的に使うこともできます。
</para>
<!--O
			<example><title>Time Configuration Tool</title>
-->
			<example><title>時刻設定ツール</title>
				<screen><prompt>bash# </prompt><command>timeconfig "Brasil/East"</command>   # set HC to localtime, and TZ to "Brazil/East"
<prompt>bash# </prompt><command>timeconfig --utc "Brasil/East"</command>   # set HC to UTC, and TZ to "Brazil/East"</screen>
			</example>
<!--O
			<para>Anyway, it changes <filename>/etc/sysconfig/clock</filename> file that is read at boot time. You can edit it by hand, and that is how it looks:</para>
-->
<para>
 いずれの方法でも、<command>timeconfig</command> は
 起動時に読み込まれる
 <filename>/etc/sysconfig/clock</filename>
 ファイルを変更します。
 このファイルを手で編集することもできます。
 次のような内容になっているはずです。
</para>
<!--O
			<example><title><filename>/etc/sysconfig/clock</filename> file</title>
-->
			<example><title><filename>/etc/sysconfig/clock</filename> ファイル</title>
				<programlisting>
ZONE="Brazil/East"
UTC=true
ARC=false</programlisting>
			</example>
		</section>
<!--O
		<section id="set.hwclock"><title>Setting the Hardware Clock</title>
-->
		<section id="set.hwclock"><title>ハードウェアクロックを設定する</title>
<!--O
			<para>I encourage you to only set your HC after understanding how to get accurate time, described on <xref linkend="ntp"/>.</para>
-->
<para>
 ハードウェアクロックの設定を行うのは、
 正しい時刻の取得方法を理解してからにすることをおすすめしておきます。
 このやり方は <xref linkend="ntp"/> で説明します。
</para>
<!--O
			<para>The <command>hwclock</command> command reads and sets the HC, based on several options you give him, documented in its man page. But you don't have to use it if you have a modern Linux distribution. After defining your HC strategy and Time Zone, you can use the high level <command>setclock</command> command to correctly set your HC. You don't need to pass any parameters because <command>setclock</command> intelligently calls <command>hwclock</command> to set the <acronym>BIOS</acronym> based on your OS current date and time. <emphasis>So you should allways use the <command>setclock</command> command.</emphasis></para>
-->
<para>
 <command>hwclock</command> はハードウェアクロック (HC)
 を読み書きするコマンドで、いくつか存在するオプションに応じて動作します
 (オプションについては man ページに記述されています)。
 しかし最近の Linux ディストリビューションを使っているならば、
 <command>hwclock</command> を使う必要はありません。
 HC とタイムゾーンの方針を決めたら、
 より高レベルのコマンドである <command>setclock</command>
 を使って HC を正しく設定できます。
 <command>setclock</command> にはパラメータを渡す必要はなく、
 このコマンドはインテリジェントに <command>hwclock</command>
 を呼び、現在の OS の日付・時刻に基づいて
 <acronym>BIOS</acronym> を設定します。
 <emphasis>したがって、常に <command>setclock</command>
 を使うようにしましょう。</emphasis>
</para>
<!--O
			<para>But if you are a minimalist and prefer hard work, here are some <command>hwclock</command> examples:</para>
-->
<para>
 しかしハードワークが好きなミニマリストの人向けに、
 いくつか <command>hwclock</command> の例もここに挙げておきましょう。
</para>
<!--O
			<example><title><command>setclock</command> and <command>hwclock</command> usage</title>
-->
			<example><title><command>setclock</command> と <command>hwclock</command> の使い方</title>
				<screen><prompt>bash# </prompt><command>setclock</command>					# The easy way to set HC
<prompt>bash# </prompt><command>hwclock</command>					# reads HC
<prompt>bash# </prompt><command>hwclock --systohc --utc</command>			# set HC with UTC time based on OS current time
<prompt>bash# </prompt><command>hwclock --systohc</command>				# set HC with local time based on OS current time
<prompt>bash# </prompt><command>hwclock --set --date "22 Mar 2002 13:17"</command>	# set HC with time specified on string</screen>
			</example>
<!--O
			<para>Since the OS time is independent from the hardware clock, any <acronym>BIOS</acronym> change we make will take place in the next boot.</para>
-->
<para>
 OS の時刻はハードウェアクロックとは独立しているため、
 <acronym>BIOS</acronym> を変更しても、
 次にブートするまでその変更は反映されません。
</para>
<!--O
			<para>Another option to change HC is rebooting and accessing your computer <acronym>BIOS</acronym> screens. On <ulink url="http://ibm.com/servers/eserver/zseries/os/linux/">IBM e-server zSeries</ulink> platforms you'll have to do it on z/VM level, because Linux here runs on virtual machines created by z/VM.</para>
-->
<para>
 もう一つの HC の設定方法としては、
 再起動してコンピュータの <acronym>BIOS</acronym> 画面に入るやり方もあります。
 <ulink url="http://ibm.com/servers/eserver/zseries/os/linux/">IBM e-server zSeries</ulink>
 では、これは z/VM レベルで行う必要があります。
 Linux はここでは z/VM 上に作られた仮想マシン上で動作しているからです。
</para>
		</section>
	</section>

<!--O
	<section id="ntp"><title>Accurate Global Time Synchronization</title>
-->
	<section id="ntp"><title>正確な世界時に同期する</title>
<!--O
		<para>To have accurate time in all your systems is as important as having a solid network security strategy (achieved by much more than simple firewall boxes). It is one of the primary components of a system administration based on good practices, which leads to organization and security. Specially when administering distributed applications, web-services, or even a distributed security monitoring tool, accurate time is a must.</para>
-->
<para>
 管理しているすべてのマシンの時刻を正確に保つことは、
 しっかりしたネットワークセキュリティの方針を立てる
 (「ファイアウォールを置くだけ」よりずっと先のレベル)
 のと同じくらい重要なことです。
 システムを機能的かつ安全に、正しく管理していく上で、
 時刻の同期は主要な要素のひとつと言えます。
 特に分散型のアプリケーションや web サービス、あるいは分散型の
 セキュリティ監視ツールを管理する場合には、
 正確な時刻は必要不可欠です。
</para>
<!--O
		<section id="ntp.ntp"><title><acronym>NTP</acronym>: The Network Time Protocol</title>
-->
		<section id="ntp.ntp"><title><acronym>NTP</acronym>: ネットワークタイムプロトコル</title>
<!--O
			<para>We'll not discuss here the protocol, but how this wonderfull invention, added to the pervasiveness of the Internet, can be usefull for us. You can find more about it at <ulink url="http://www.ntp.org/">www.ntp.org</ulink>.</para>
-->
<para>
 ここではプロトコルについては触れませんが、
 このすばらしい発明とインターネットの普及とが、
 私たちにどのように役立ってくれるかは説明しましょう。
 <acronym>NTP</acronym> に関するより詳しい情報は
 <ulink url="http://www.ntp.org/">www.ntp.org</ulink>
 から得られるでしょう。
</para>
<!--O
			<para>Once your system is setup, <acronym>NTP</acronym> will manage to keep its time accurate, making very small adjustments to not impact the running applications.</para>
-->
<para>
 一度システムを設定すると、
 <acronym>NTP</acronym> は
 (動作しているアプリケーションには影響を及ぼさないような)
 非常に小さな修正を行いながら、
 その正確な時刻を保持しようとし続けます。
</para>
<!--O
			<para>People can get exact time using hardware based on atom's electrons frequency or cyclotrons. There is also a method based on <acronym>GPS</acronym> (Global Positioning System). The first is more accurate, but the second is pretty good also. Both require very special and expensive equipment, but their owners (usually universities and research labs) connects them to computers, that run an <acronym>NTP</acronym> daemon, that are connected to the Internet, that finally lets us access it for free. And this is how we'll synchronize our systems.</para>
-->
<para>
 原子に含まれる電子の振動数やサイクロトロンを利用したハードウェアを用いると、
 非常に正確な時刻が取得できます。
 また GPS (Global Positioning System) を用いる方法もあります。
 前者のほうがより正確ですが、後者も充分優れています。
 両者とも特殊で高価な装置を必要としますが、
 これらの装置の所有者 (たいてい大学か研究所) は、
 その装置をコンピュータに接続し、そのコンピュータで
 <acronym>NTP</acronym> デーモンを走らせ、インターネットにつなぎ、
 我々が無料でアクセスすることを許可してくれているのです。
 そして我々は、これを使って自分のシステムの時刻同期をしようというわけです。
</para>
		</section>
<!--O
		<section id="ntp.arch"><title>Building a Simple Time Synchronization Architecture</title>
-->
		<section id="ntp.arch"><title>簡単な時刻同期構造を構築する</title>
<!--O
			<para>You will need:</para>
-->
<para>
 必要なものは:
</para>
			<orderedlist numeration="arabic">
<!--O
				<listitem><para>A direct or indirect (through a firewall) connection to the Internet.</para></listitem>
-->
<listitem><para>
 直接または間接 (ファイアウォール経由) のインターネット接続。
</para></listitem>
<!--O
				<listitem><para>Choose some <acronym>NTP</acronym> servers. You can use the public server <ulink url="http://www.fortytwo.ch/time/">pool.ntp.org</ulink>, or choose some from the <ulink url="http://www.eecis.udel.edu/~mills/ntp/clock2a.html">stratum 2 public time servers</ulink> on <acronym>NTP</acronym> website. If you don't have an Internet access, your <acronym>WAN</acronym> administrator (must be a cleaver guy) can provide you some internal addresses.</para></listitem>
-->
<listitem><para>
 <acronym>NTP</acronym> サーバを選択します。
 公開サーバである
 <ulink url="http://www.fortytwo.ch/time/">pool.ntp.org</ulink>
 を利用することもできますし、
 <acronym>NTP</acronym> の web サイトにある
 <ulink url="http://www.eecis.udel.edu/~mills/ntp/clock2a.html">stratum 2 公開タイムサーバ</ulink> から選ぶこともできます。
 インターネットへ接続されていない場合は、
 あなたの WAN の管理者が適切な内部アドレスを教えてくれるでしょう
 (腕のいい管理者なら、ですけど)。
</para></listitem>
<!--O
				<listitem><para>Have the <acronym>NTP</acronym> package installed in all systems you want to synchronize. You can find RPMs in your favorite Linux distribution CD, or <ulink url="http://rpmfind.net/linux/rpm2html/search.php?query=ntp">make a search</ulink> on <ulink url="http://rpmfind.net/">rpmfind.net</ulink>.</para></listitem>
-->
<listitem><para>
 同期させたいシステムすべてに
 <acronym>NTP</acronym> パッケージをインストールすること。
 自分の使っている Linux ディストリビューションの CD に
 RPM があるでしょうし、なければ
 <ulink url="http://rpmfind.net/">rpmfind.net</ulink>
 で
 <ulink url="http://rpmfind.net/linux/rpm2html/search.php?query=ntp">検索</ulink>
 してみましょう。
</para></listitem>

			</orderedlist>
<!--O
			<para>Here is an example of good architecture:</para>
-->
<para>
 良い構成の例を次に示します。
</para>
<!--O
			<figure><title>Local Relay Servers for NTP</title>
-->
			<figure><title>NTP のローカルリレーサーバ</title>
<!--O
				<graphic srccredit="ntp.prz (Lotus Freelance Graphics), Avi Alkalay, 2002" fileref="ntp.png" label="NTP Architecture" align="center"/>
-->
				<graphic srccredit="ntp.prz (Lotus Freelance Graphics), Avi Alkalay, 2002" fileref="ntp.png" align="center"></graphic>
			</figure>
<!--O
			<para>If you have several machines to synchronize, <emphasis>do not</emphasis> make them all access the remote <acronym>NTP</acronym> servers you choosed. Only 2 of your server farm's machines must access remote <acronym>NTP</acronym> servers, and the other machines will sync with these 2. We will call them the <emphasis>Relay Servers</emphasis>.</para>
-->
<para>
 同期させたいマシンが複数ある場合、
 それらすべてを選択したリモートの <acronym>NTP</acronym> サーバに接続しては
 <emphasis>いけません</emphasis>。
 自分の管理しているサーバたちから 2 台だけを選び、
 リモートの <acronym>NTP</acronym> サーバへアクセスするマシンは
 この 2 台に限るのです。
 そして他のマシンは、この 2 台に対して同期させるのです。
 この 2 台のことを、
 これ以降では<emphasis>リレーサーバ</emphasis>と呼ぶことにしましょう。
</para>
<!--O
			<para>Your Relay Servers can be any machine already available in your network. <acronym>NTP</acronym> consumes low memory and CPU. You don't need to have a dedicated machine for it.</para>
-->
<para>
 リレーサーバはネットワークにつながっているマシンのどれでもかまいません。
 <acronym>NTP</acronym> の使うメモリや CPU はわずかですから、
 専用のマシンを用意する必要はありません。
</para>
<!--O

			<tip><para>It is a good idea to create hostname aliases for your local Relay Servers like ntp1.my.com and ntp2.my.com, and use only these names when configuring the client machines. This way you can move the <acronym>NTP</acronym> functionality to a new Relay Server (with a different IP and hostname), without having to reconfigure the clients. Ask your <acronym>DNS</acronym> administrator to create this aliases.</para></tip>
-->
<tip><para>
 これらのローカルなリレーサーバには、ntp1.my.com や ntp2.my.com
 のように、ホスト名のエイリアスをつけておくといいでしょう。
 こうしておけば、 <acronym>NTP</acronym> の機能を
 (IP アドレスとホスト名の違う) 別のリレーサーバに移動しても、
 クライアントでは変更を行わずにすみます。
 DNS の管理者に、これらのエイリアスを作成するよう頼んでみましょう。
</para></tip>
		</section>
<!--O
		<section id="ntp.configs"><title><acronym>NTP</acronym> Configurations</title>
-->
		<section id="ntp.configs"><title><acronym>NTP</acronym> の設定</title>
			<variablelist>
<!--O
				<varlistentry><term><emphasis>For Your Relay Servers</emphasis></term>
-->
<varlistentry><term><emphasis>リレーサーバでは</emphasis></term>
					<listitem>
<!--O
						<para>Edit <filename>/etc/ntp.conf</filename> and add the remote servers you choosed:</para>
-->
<para>
 <filename>/etc/ntp.conf</filename> を編集して、
 選択したリモートサーバを追加します。
</para>
<!--O
						<example><title>Relay machines' <filename>/etc/ntp.conf</filename></title>
-->
<example><title>リレーサーバの <filename>/etc/ntp.conf</filename></title>
							<programlisting>
.
.
server  otherntp.server.org	# A stratum 1 server at server.org
server  ntp.research.gov	# A stratum 2 server at research.gov
.
.</programlisting>
<!--O
						<para>Again, you can use the public server <ulink url="http://www.fortytwo.ch/time/">pool.ntp.org</ulink>, or get a list of <ulink url="http://www.eecis.udel.edu/~mills/ntp/clock2a.html">public time servers</ulink> from <acronym>NTP</acronym> website.</para>
-->
<para>
 前にも述べましたが、
 公開サーバ <ulink url="http://www.fortytwo.ch/time/">pool.ntp.org</ulink>
 も使えますし、
 <acronym>NTP</acronym> の web サイトから
 <ulink url="http://www.eecis.udel.edu/~mills/ntp/clock2a.html">公開タイムサーバ</ulink>
 のリストを取り寄せることもできます。
</para>
						</example>
					</listitem>
				</varlistentry>
<!--O
				<varlistentry><term><emphasis>For Your Clients</emphasis></term>
-->
<varlistentry><term><emphasis>クライアントでは</emphasis></term>
					<listitem>
<!--O
						<para>Edit <filename>/etc/ntp.conf</filename> and add your Relay Servers with a standard name:</para>
-->
<para>
 <filename>/etc/ntp.conf</filename> を編集して、
 リレーサーバの (<acronym>NTP</acronym> サーバであることを意味する方の)
 ホスト名を追加します。
</para>
<!--O
						<example><title>Client machines' <filename>/etc/ntp.conf</filename></title>
-->
<example><title>クライアントマシンの <filename>/etc/ntp.conf</filename></title>
							<programlisting>
.
.
server  ntp1.my.com		# My first local relay
server  ntp2.my.com		# My second local relay
.
.</programlisting>
						</example>
					</listitem>
				</varlistentry>
			</variablelist>
<!--O
			<para>If your machine has a UTC time difference bigger than some minutes comparing to the <acronym>NTP</acronym> servers, <acronym>NTP</acronym> will not work. So you must do a first full sync, and I recommend you to do it in a non-production hour. You need to do it only when you are making the initial <acronym>NTP</acronym> setup. Never more:</para>
-->
<para>
 もしマシンの UTC 時刻が
 <acronym>NTP</acronym> サーバに対して数分以上ずれていると、
 <acronym>NTP</acronym> は動作しません。
 従って最初に完全同期 (full sync) を行わなければなりません
 (システムで仕事が行われていない時間帯を選びましょう)。
 この作業は <acronym>NTP</acronym> の初期設定を行う時だけ必要とされます。
 それ以降は全く不要です。
</para>
<!--O
			<example><title>First sync</title>
-->
<example><title>最初の同期</title>
<!--O
				<screen><prompt>bash# </prompt><command>ntpdate otherntp.research.gov</command>	<co id="sync1"/>
<prompt>bash# </prompt><command>ntpdate otherntp.research.gov</command>	<co id="sync2"/>
-->
				<screen><prompt>bash# </prompt><command>ntpdate otherntp.research.gov</command>	<co id="sync1"/>
24 Mar 18:16:36 ntpdate[10254]: step time server 200.100.20.10 offset -15.266188 sec
<prompt>bash# </prompt><command>ntpdate otherntp.research.gov</command>	<co id="sync2"/>
24 Mar 18:16:43 ntpdate[10255]: adjust time server 200.100.20.10 offset -0.000267 sec</screen>
				<calloutlist>
					<callout arearefs="sync1">
<!--O
						<para>First full sync. We were 15 seconds late.</para>
-->
<para>
 最初の完全同期では、我々のシステムが 15 秒遅れていました。
</para>
					</callout>
					<callout arearefs="sync2">
<!--O
						<para>Second full sync, just to be sure. Now we are virtually 0 seconds late, which is good.</para>
-->
<para>
 二度目の完全同期は、単に確認のために行いました。
 ほとんどずれはゼロで、これで OK です。
</para>
					</callout>
				</calloutlist>
			</example>
<!--O
			<para>The last step is to start or restart the <acronym>NTP</acronym> daemons in each machine:</para>
-->
<para>
 最終段階は、各マシンでの <acronym>NTP</acronym> デーモンの起動
 (または再起動) です。
</para>
			<screen><prompt>bash# </prompt><command>service ntpd restart</command></screen>
		</section>
<!--O
		<section id="ntp.watch"><title>Watching Your Box Synchronizing</title>
-->
<section id="ntp.watch"><title>時刻同期の確認</title>
<!--O
			<para>Now you have everything setup. <acronym>NTP</acronym> will softly keep your machine time synchronized. You can watch this process using the NTP Query (<command>ntpq</command> command:</para>
-->
<para>
 以上で設定はすべて終わりです。
 <acronym>NTP</acronym> はそっとあなたのマシンの時刻を
 同期し続けてくれているはずです。
 この様子は、NTP Query コマンド (<command>ntpq</command>)
 で見ることができます。
</para>
<!--O
			<example><title>A time synchronization status</title>
-->
<example><title>時刻同期の状態</title>
				<screen>
<prompt>bash# </prompt><command>ntpq -p</command>
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
-jj.cs.umb.edu   gandalf.sigmaso  3 u   95 1024  377   31.681  -18.549   1.572
 milo.mcs.anl.go ntp0.mcs.anl.go  2 u  818 1024  125   41.993  -15.264   1.392
-mailer1.psc.edu ntp1.usno.navy.  2 u  972 1024  377   38.206   19.589  28.028
-dr-zaius.cs.wis ben.cs.wisc.edu  2 u  502 1024  357   55.098    3.979   0.333
+taylor.cs.wisc. ben.cs.wisc.edu  2 u  454 1024  347   54.127    3.379   0.047
-ntp0.cis.strath harris.cc.strat  3 u  507 1024  377  115.274   -5.025   1.642
*clock.via.net   .GPS.            1 u  426 1024  377  107.424   -3.018   2.534
 ntp1.conectiv.c 0.0.0.0         16 u    - 1024    0    0.000    0.000 4000.00
+bonehed.lcs.mit .GPS.            1 u  984 1024  377   25.126    0.131  30.939
-world.std.com   204.34.198.40    2 u  119 1024  377   24.229   -6.884   0.421</screen>
			</example>
<!--O
			<variablelist><title>The meaning of each column</title>
-->
<variablelist><title>各列の意味</title>
				<varlistentry><term><emphasis>remote</emphasis></term>
					<listitem>
<!--O
						<para>Is the name of the remote <acronym>NTP</acronym> server. If you use the <option>-n</option> switch, you will see the IP addresses of these servers instead of their hostnames.</para>
-->
<para>
 リモートの <acronym>NTP</acronym> サーバの名前です。
 <option>-n</option> スイッチを用いると、
 ホスト名の代わりに IP アドレスが表示されます。
</para>
					</listitem>
				</varlistentry>
				<varlistentry><term><emphasis>refid</emphasis></term>
					<listitem>
<!--O
						<para>Indicates where each server is getting its time right now. It can be a server hostname or something like <acronym>.GPS.</acronym>, indicating a Global Positioning System source.</para>
-->
<para>
 各サーバが現在どこから時刻を取得しているかを示します。
 サーバのホスト名や <acronym>.GPS.</acronym> のようなものが表示されます。
 後者は Global Positioning System から時刻を取得していることを示します。
</para>
					</listitem>
				</varlistentry>
				<varlistentry><term><emphasis>st</emphasis></term>
					<listitem>
<!--O
						<para><emphasis>Stratum</emphasis> is a number from 1 to 16, to indicate the remote server precision. 1 is the most accurate, 16 means server unreachable. Your Stratum will be equal to the less accurate remote server plus 1.</para>
-->
<para>
 <emphasis>Stratum</emphasis> は 1 から 16 までの数値で、
 リモートサーバの正確さ (precision) を示しています。
 1 は最も正確で、16 はサーバに接続できないことを意味します。
 あなたのマシンの Stratum は、
 最も正確なリモートサーバの Stratum に
 1 を加えたものになります。
 [訳注: GPS 時計などの時刻基準を備えたマシンに対する
 「接続段数」と考えるとよいと思います。]
</para>
					</listitem>
				</varlistentry>
				<varlistentry><term><emphasis>poll</emphasis></term>
					<listitem>
<!--O
						<para>The polling interval (in seconds) between time requests. The value will range between the minimum and maximum allowed polling values. Initially the value will be smaller to allow synchronization to occur quickly. After the clocks are 'in sync' the polling value will increase to reduce network traffic and load on popular time servers.</para>
-->
<para>
 ポーリングを行う時間間隔を秒単位で表したものです。
 値は許されている最小値・最大値の間になります。
 当初は高速に同期ができるよう、この値は小さくなっています。
 時計が同期状態になったら、ポーリング値はだんだん長くなっていき、
 ネットワークの通信量や、
 人気のある time サーバの負荷を減らすようになっています。
</para>
					</listitem>
				</varlistentry>
				<varlistentry><term><emphasis>reach</emphasis></term>
					<listitem>
<!--O
						<para>This is an octal representation of an array of 8 bits, representing the last 8 times the local machine tried to reach the server. The bit is set if the remote server was reached.</para>
-->
<para>
 8 ビット分のビット列を 8 進数で表現したもので、
 ローカルのマシンがサーバへの接続を試みた、最後の 8 回分の結果を示しています。
 サーバに到達した場合はビットが立ちます。
 [訳注: 従って全部成功していれば 377 となります。]
</para>
					</listitem>
				</varlistentry>
				<varlistentry><term><emphasis>delay</emphasis></term>
					<listitem>
<!--O
						<para>The amount of time (seconds) needed to receive a response for a "what time is it" request.</para>
-->
<para>
 「いま何時?」要求に対する返答が返されるまでに必要とされた時間 (秒単位) です。
</para>
					</listitem>
				</varlistentry>
				<varlistentry><term><emphasis>offset</emphasis></term>
					<listitem>
<!--O
						<para>The most important value. The difference of time between the local and remote server. In the course of synchronization, the offset time lowers down, indicating that the local machine time is getting more accurate.</para>
-->
<para>
 最も重要な値です。
 ローカルマシンとリモートサーバの時刻の違いです。
 同期している最中は、offset は小さくなっていきます。
 つまりローカルのマシンの時刻がだんだん正確になっていくわけです。
</para>
					</listitem>
				</varlistentry>
				<varlistentry><term><emphasis>jitter</emphasis></term>
					<listitem>
<!--O
						<para>Dispersion, also called Jitter, is a measure of the statistical variance of the offset across several successive request/response pairs. Lower dispersion values are preferred over higher dispersion values. Lower dispersions allow more accurate time synchronization.</para>
-->
<para>
 分散 (dispersion) とか揺らぎ (jitter) と呼ばれるものは、
 何回か要求・応答を行った際の、オフセット値の統計的な揺らぎを与えるものです。
 この値は低い方が好ましいです。
 値が低い方が、正確な時刻同期が可能になります。
</para>
					</listitem>
				</varlistentry>
			</variablelist>
<!--O
			<variablelist><title>The meaning of the signs before server hostname</title>
-->
<variablelist><title>サーバのホスト名の前に置かれる符号の意味</title>
				<varlistentry><term><emphasis>-</emphasis></term>
					<listitem>
<!--L
						<para>Means the local NTP service doesn't like this server very much</para>
-->
<para>
 ローカルの NTP サービスはこのサーバをあまり好んでいない
</para>
					</listitem>
				</varlistentry>
				<varlistentry><term><emphasis>+</emphasis></term>
					<listitem>
<!--O
						<para>Means the local NTP service likes this server</para>
-->
<para>
 ローカルの NTP サービスはこのサーバを好んで利用している
</para>
					</listitem>
				</varlistentry>
				<varlistentry><term><emphasis>x</emphasis></term>
					<listitem>
<!--O
						<para>Marks a bad host</para>
-->
<para>
 不良ホスト
</para>
				</listitem>
				</varlistentry>
				<varlistentry><term><emphasis>*</emphasis></term>
					<listitem>
<!--O
						<para>Indicates the current favorite</para>
-->
<para>
 現在利用している
</para>
					</listitem>
				</varlistentry>
			</variablelist>
		</section>
<!--O
		<section id="ntp.boot"><title>Configure to Automatically Run <acronym>NTP</acronym> at Boot</title>
-->
		<section id="ntp.boot"><title><acronym>NTP</acronym> がブート時に自動起動するよう設定する</title>
<!--O
			<para>You may want to have <acronym>NTP</acronym> running all the time even if you reboot your machine. On each machine, do the following:</para>
-->
<para>
 <acronym>NTP</acronym> はずっと動作させておきたいことが多いでしょう。
 マシンを再起動した場合でもそうですね。
 各マシンで以下の作業を行いましょう。
</para>
			<screen><prompt>bash# </prompt><command>chkconfig --level 2345 ntpd on</command></screen>
<!--O
			<para>This will ensure autostart.</para>
-->
<para>
 これで自動起動が確実になります。
</para>
<!--O
			<para>If your machine is up and running for a long time (months, years) without rebooting, you'll find a big discrepancy between the inaccurate hardware clock and the (now very accurate) system time. Modern Linux distributions copy OS time to the HC everytime the system is shutdown, using a <link linkend="set.hwclock">mechanism similar to the <command>setclock</command> command</link>. This way, in the next OS boot, you'll get date and time almost as accurate as it was when you shutdown.</para>
-->
<para>
 マシンを再起動しないまま長いこと (何ヶ月も何年も) 動かし続けると、
 本来正確でないハードウェアクロックと、(今や非常に正確となった)
 システム時刻との間には、大きなずれが生じるでしょう。
 最近の Linux ディストリビューションでは、
 システムをシャットダウンする際に、
 <link linkend="set.hwclock"><command>setclock</command> コマンドに
 似た仕組み</link>を使って OS 時刻を HC 時刻にコピーします。
 このようにして、次に OS を起動する際にも、
 シャットダウンの時とだいたい同じくらい、
 ほぼ正確な日付と時刻が得られるようになっているのです。
</para>
		</section>
	</section>

<!--O
	<appendix id="about"><title>About this Document</title>
-->
	<appendix id="about"><title>この文書について</title>
		<para>Copyright 2002, Avi Alkalay.</para>
		<para>This document must be distributed under the terms of <ulink url="http://www.gnu.org/copyleft/fdl.html">GNU Free Documentation License</ulink>.</para>
<para>
 参考訳: この文書の再配布にあたっては、
 <ulink url="http://www.gnu.org/copyleft/fdl.html">GNU Free Documentation License</ulink>
 に従わなければなりません。
</para>
<!--O
		<para>This document is published in the following locations:
-->
<para>
 この文書は以下で配布されています。
			<itemizedlist>
<!--O
				<listitem><para><ulink url="http://avi.alkalay.net/linux/docs/TimePrecision/">Official site</ulink> [<ulink url="http://avi.alkalay.net/linux/docs/TimePrecision/timeprecision.tar.gz">XML (DocBook) Source</ulink>]</para></listitem>
-->
				<listitem><para><ulink url="http://avi.alkalay.net/linux/docs/TimePrecision/">Official site</ulink> [<ulink url="http://avi.alkalay.net/linux/docs/TimePrecision/timeprecision.tar.gz">XML (DocBook) ソース</ulink>]</para></listitem>
<!--O
				<listitem><para><ulink url="http://en.tldp.org/HOWTO/TimePrecision-HOWTO/">LinuxDoc, as a HOWTO</ulink> [<ulink url="http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/html_single/TimePrecision-HOWTO.html">single page</ulink>] [<ulink url="http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/pdf/TimePrecision-HOWTO.pdf">PDF</ulink>]</para></listitem>
-->
				<listitem><para><ulink url="http://en.tldp.org/HOWTO/TimePrecision-HOWTO/">LinuxDoc の HOWTO 文書として登録</ulink> [<ulink url="http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/html_single/TimePrecision-HOWTO.html">1 ページ形式</ulink>] [<ulink url="http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/pdf/TimePrecision-HOWTO.pdf">PDF</ulink>]</para></listitem>
<!--O
				<listitem><para>Takeo Nakano &lt;nakano at apm.seikei.ac.jp&gt; <ulink url="http://www.linux.or.jp/JF/JFdocs/TimePrecision-HOWTO/">japanese translation</ulink> [<ulink url="http://www.linux.or.jp/JF/JFdocs/TimePrecision-HOWTO.txt">txt version</ulink>]</para></listitem>
-->
				<listitem><para>中野武雄 &lt;nakano at apm.seikei.ac.jp&gt; による <ulink url="http://www.linux.or.jp/JF/JFdocs/TimePrecision-HOWTO/">日本語訳</ulink> [<ulink url="http://www.linux.or.jp/JF/JFdocs/TimePrecision-HOWTO.txt">テキスト版</ulink>]</para></listitem>
<!--O
				<listitem><para>SHAKI &lt;sha-ki at narod.ru&gt; <ulink url="http://computerlib.narod.ru/html/linuxtime.htm">russian translation</ulink></para></listitem>
-->
				<listitem><para>SHAKI &lt;sha-ki at narod.ru&gt; による <ulink url="http://computerlib.narod.ru/html/linuxtime.htm">ロシア語訳</ulink></para></listitem>
			</itemizedlist>
		</para>
<para>
 翻訳は中野武雄が行いました。同じく再配布は GFDL
 (Invariant Section なし、Front-Cover Text なし、Back-Cover Text なし)
 に従います。
</para>
	</appendix>
</article>
