[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[plamo:12657] 海外にLinuxを持ってきて、タイムゾーンの設定



神戸大学の辰己です。

notePCに Plamo Linux 2.2 を導入しています。

現在海外出張中なのですが、海外で notePC を使う時の tips がどこかにある
と嬉しいのですが、あまりみかけないと思いますので、ちょっとここにメモを
残します。

どうも mini-HOWTO っぽいですね。

■準備

●タイムゾーンの検索

まず、

  find /usr/share/zoneinfo | less

をして、どんなタイムゾーンがあるかを調べて下さい。私は今、 Paris にいますので、

  /usr/share/zoneinfo/Europe/Paris

が適当であろうということがわかります。

●現在の設定の確認

まず、現在の設定を確認します。

  date

として、

  tatsumi@tt[~]% date
  2002年 1月18日 (金) 13:42:31 JST
  tatsumi@tt[~]%

などと出てきたら OK です。一番右が JST ですね。

■短期的に変更する場合

●タイムゾーンの設定

次に、私は tcsh を使っているので、~/.tcshrc に TZ の設定を書きます。書き方は、

----ここから----
setenv TZ /usr/share/zoneinfo/Europe/Paris
----ここまで----

のようにします。bash の場合はどうするんでしたっけ? ~/.profile に書くのかな?

----ここから----
export TZ=/usr/share/zoneinfo/Europe/Paris
----ここまで----

●設定の確認

この状態で、新たに shell を起動します。X-Window 環境ならば、kterm なん
ぞを立ち上げてみると良いでしょう。立ち上がったら、さりげに

  date

としてみます。そうして

  tatsumi@tt[~]% date
  2002年 1月18日 (金) 05:41:31 CET
  tatsumi@tt[~]%

と出てきたら OK です。一番右が CET(ヨーロッパ中央時間)です。

●ログアウト・ログイン

システムを reboot する必要はないです。いったんログアウトしてログインし
直して下さい。今度はすべてのウインドウが、目的の設定になっているはずで
す。

●帰国したら

先ほどの .tcshrc の TZ の設定を消して、もう一度ログインしなおします。

■長期的に変更する場合(この場合は、PCの内部時計も変更します。)

まず、/usr/share/zoneinfo/localtime というシンボリックリンクの行き先を、
滞在場所にします。通常は、Plamo 2.2 のインストール直後は、

  /usr/share/zoneinfo/Japan

へのシンボリックリンクになっています。これを変えます。rootになって

 rm /usr/share/zoneinfo/localtime
 ln -s /usr/share/zoneinfo/Europe/Paris /usr/share/zoneinfo/localtime

とします。次に、system をシャットダウンしてください。そのあと、Linux 
がbootするまえの BIOS 設定の時に、 PC の内部時計の時間を現地時間に合わ
せます。これで OK です。

■日本の時間を知りたい

X11環境を仮定しますが、ウインドウを一つ開いて、

  setenv TZ /usr/share/zoneinfo/Japan

とします。そのあと、そのウインドウで、date をしてください。

また、例えば

  asclock -shape -position -65+0 -24 &

でもしてみると、日本の時間が常にわかります。
(他のウインドウで同じことをして、結果を比較してみると面白いです。)

■要するにどういうことか?

最初は、 /etc/localtime をいじるのかと思っていろいろやりましたが、これ
は違います。/etc/localtime は、PCの内部時計の時間が、どこの都市の時間
にあっているかを設定します。

そして、ここの shell がどの時間帯で動作するかは、TZ 環境変数で決まりま
す。TZ 環境変数は、/etc 以下を調べると

>  /etc/csh.login:        setenv TZ /etc/localtime
>  /etc/profile:TZ=/etc/localtime

で設定されています。/etc/localtime は /usr/share/zoneinfo/localtime へ
のシンボリックリンクでした。ということで、tcsh利用者の私は、 ~/.tcshrc 
に

  setenv TZ /usr/share/zoneinfo/Europe/Paris

と書くことでこれを実現しました。

(おわり)


[検索ページ] [メール一覧]
Plamo ML 公開システム