adjkerntz(8) FreeBSD 一般コマンドマニュアル

adjkerntz

前のページ 上に戻る 次のページ

adjkerntz


     adjkerntz -i
     adjkerntz -a [-s]


解説

     adjkerntz は、UTC がいつも設定されているカーネルクロックと、ローカル時間
     が設定されているかもしれない CMOS クロックとの間の適切な関係を扱います。
     adjkerntz は、また MS-DOS ファイルシステムのようなローカル時間ファイルシ
     ステムのための適切なタイムスタンプを扱うために、カーネルに機械のタイムゾ
     ーンのシフトを教えます。この主要な目的は、最初から壊れている MS-DOS ファ
     イルタイムスタンプの考え方を全面的に直すためではなく、同じタイムスタンプ
     を同じ機械上の FreeBSD の MS-DOS ファイルシステムと MS-DOS オペレーティン
     グシステムで保つためのものです。ファイル /etc/wall_cmos_clock がある場
     合、 CMOS クロックは (MS-DOS や MS-Windows 互換モードの) ローカル時間を保
     持していることを意味します。このファイルが無い場合、 CMOS クロックは UTC
     時間を保持していることになります。 adjkerntz は、この状態をカーネル変数の
     machdep.wall_cmos_clock に通知します。

     時間調整はシステムの立ち上げとシャットダウン時、そしてタイムゾーンの変更
     が起きた時はいつでも必要になります。これらのことなった状況を扱うために、
     adjkerntz は二つの方法で立ち上げられます。

     -i    この形式は、システムの立ち上げとシャットダウンを取り扱います。マル
           チユーザモードの先頭で、 adjkerntz/etc/rc からこのオプションを
           つけて呼び出されます。これは他のデーモンが実行される前に行われま
           す。 adjkerntz は自分自身をバックグラウンドで実行します。その後、ロ
           ーカル時間 CMOS クロックのために、 adjkerntz は、ローカル時間をそこ
           から読み込み、カーネル時間を正しい UTC 時間に設定します。 adjkerntz
           は、これ以降での 'adjkerntz -a' 呼び出しでの利用のためや、ローカル
           ファイルシステムでの利用のために、ローカルタイムゾーンオフセットを
           machdep.adjkerntz カーネル変数に設定します。

           ローカル時間 CMOS クロックのために、 'adjkerntz -i' は、一時停止
           し、バックグランドのデーモンとして活動を停止します。このデーモン
           は、 SIGTERM シグナルを受け取るまでそのままです。 SIGTERM はふつ
           う、システムがマルチユーザモードを終了する時に init(8) によって送ら
           れます (普通、システムがシャットダウンされる時です)。 SIGTERM を受
           け取った後で adjkerntz は、 UTC カーネル時間クロックを読み込み、必
           要であれば現在のローカルタイムゾーンを反映するように CMOS クロック
           を更新します。その後、 adjkerntz は終了します。

     -a [-s]
           この形式は、タイムゾーンの変更が起こった時に、ローカル時間 CMOS ク
           ロックとカーネル machdep.adjkerntz 変数を更新するために使われます。
           例えば、夏時間に入ったり、終了したりした時に使われます。 adjkerntz
           は、カーネルクロックの UTC 時間・以前に保存したタイムゾーンオフセッ
           ト・新しいタイムゾーンを計算するためのタイムゾーン変更規則を使いま
           す。これは、新しいオフセットを machdep.adjkerntz カーネル変数に保存
           し、 CMOS クロックを新しいローカル時間に更新します。 'adjkerntz -a'
           が、(タイムゾーン変更中に) 存在しない時間で実行された場合、 -s オプ
           ションが使われていない場合は警告診断を出し、終了します。 -s オプ
           ションが使われている場合は、 30 秒間スリープしてもう一度試します。


関連ファイル

     /etc/localtime        現在のゾーン情報ファイルです。 tzsetup(8)zic(8)
                           を見てください。
     /etc/wall_cmos_clock  空のファイルです。これは、機械の CMOS クロックがロ
                           ーカル時間に設定されていることを示しています。反対
                           にこれが存在しないと、 UTC の CMOS クロックに設定さ
                           れています。


関連項目

     tzset(3), crontab(5), mount_msdos(8), rc(8), sysctl(8), tzsetup(8),
     zic(8)


診断

     診断はありません。エラーが起こった場合は、 adjkerntz はエラーメッセージを
     syslog(3) を使って記録し、ゼロでない値を返して終了します。


作者

     Andrey A. Chernov <ache@astral.msk.su>


歴史

     adjkerntz コマンドは、 FreeBSD 1.0 から導入されました。

FreeBSD 4.4                      April 4, 1996                     FreeBSD 4.4

ABELNET VPSサービス