綾小路龍之介の素人思考

debootstrapでセットアップした場合の初期設定

どのようなシステムをからセットアップを行ったとしても、debootstrapを使った場合はセットアップ直後はまっさらな状態でほぼ何もされていないので、使える状態まで持っていくにはいくつかの設定が必要である。設定のいろはについてはD.3. Unix/Linux システムからの Debian GNU/Linux のインストールに詳しい。

ハードウェアクロックの時系をシステムに伝える

まずは/etc/default/rcSを編集してハードウェアクロック(マザーボードにあるCMOSの時間)の1秒の基準(GMT or UTC)をマシンに伝える。ハードウェアクロックの基準は不明だったがUTCと考えることにしよう。また、上のようにインストールした場合はデフォルトでUTC=yesなので、編集する必要は無かった。しかし、debianのクロスインストールの手引きには書いてあるので一応確認。古めの情報だが、Linux Debian 2.0 でのrcS.dの動作についてによれば、/etc/default/rcSは起動時にS10checkroot.shから呼ばれて環境変数の初期設定を行うためのファイルのようだ。

# echo UTC=yes >> /etc/default/rcS
# grep -n UTC /etc/default/rcS
13:UTC=yes
18:UTC=yes

本来、この作業にはコンピュータのハードウェアクロックがUTCとGMTのどちらの基準で1秒を刻んでいるか知っていなければならない。ただ実際問題として、どこにでもある汎用のコンピュータこの設定を行う場合は、ハードウェアクロックがGMTとUTCのどちらを基準にしているかを知る必要は無く、単純にUTCを採用すればよいと思われる。なぜなら、どちらにしてもハードウェアクロックが基準に対してずれずに動くのはかなり難しそうな気がするからだ。GMTの場合は地球の自転を考慮して、UTCの場合はセシウム原子時計を基準にして、1秒を決めねばならず現実的ではない。どこかにあるGMTやUTC基準の時計から情報をもらうにしても、そのためのデバイス(電波時計)と汎用コンピュータの価格の比較から、現実的でない選択肢となってしまうと思うからである。

  1. Linux はどのように時間を計っているのか
  2. GMT と UTC の違いは何 ?
  3. 産総研・サイエンス・タウン 世の中の基準を創って守るために 「世界でいちばん正確な1秒!」

システムの時間帯をAsia/Tokyoに

初期状態ではタイムゾーンがUnknownなので、dateコマンドで表示される時間やlsのタイムスタンプも日本時間の9時間後。使いにくいかもしれないので、日本時間に変えておく。

# tzconfig

IPアドレスとデフォルトゲートウェイの設定

coLinuxからどのネットワークに接続したいのかによって設定は変化する。eth0に割り当てるアドレスを192.168.0.2とし、

まずは、eth0に割り振ったIPアドレスが所属するネットワークの外のネットワークにパケットを送るための出口(デフォルトゲートウェイ)を設定しなければ外のネットワークと通信できない。ここでは、192.168.0.1をデフォルトゲートウェイとした。一時的にゲートウェイを設定するには下のようにコマンドを打つ。この場合、再起動後に設定は消える。

# route add -net 0.0.0.0 network 0.0.0.0 gw 192.168.0.1 eth0

永続的にゲートウェイを設定するには下のように/etc/network/interfacesを編集して、eth0のブロックにgateway 192.168.0.1を追加する。このようにすると起動時に自動的にルーティングテーブルにデフォルトゲートウェイが追加される。このあたりの解説はデフォルトゲートウェイの設定が詳しい。

# vi /etc/network/interfaces
>auto eth0
>iface eth0 inet static
>    address 192.168.0.2
>    network 255.255.255.0
>    gateway 192.168.0.1

下のようにしてupとpre-downを使って設定することも可能だが、煩雑。

# vi /etc/network/interfaces
>auto eth0
>iface eth0 inet static
>    address 192.168.0.2
>    network 255.255.255.0
>    up route add -net 0.0.0.0 network 0.0.0.0 gw 192.168.0.1 eth0
>    pre-down route add -net 192.168.0.0 network 255.255.255.0 eth0

ルーティングテーブルの確認は下のようにして行う。ルーティングテーブルの読み方は、他のネットワークのコンピュータとはどうやって通信しているの?が詳しい。gateway 192.168.0.1を追加したことで、一番下の行が追加され、192.168.0.0/255.255.255.0のネットワークに所属しないアドレスを宛先に持つパケットは全て、eth0を通して192.168.0.1へ送られることになった。

# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.0.0     *               255.255.255.0   U     0      0        0 eth0
default         192.168.0.1     0.0.0.0         UG    0      0        0 eth0

「外のネットワークにパケットを送ることができる」とかいたが、注意がある。この場合なら、自分の所属するネットワーク192.168.0.0/255.255.255.0に属するアドレスを持つコンピュータがデフォルトゲートウェイの外にあってもパケットを送ることが出来ないということだ。ということで、最終的な設定ファイルは下のようになる。

# vi /etc/network/interfaces
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
        address 192.168.0.2
        network 255.255.255.0
        gateway 192.168.0.1

ロケールのインストールと設定

まずはインストール。

# apt-get install locales

其の後、設定。とりあえずja_JP.UTF-8のロケールを作成して、システムのデフォルトをこれにしておく。

# dpkg-reconfigure locales

ソーシャルブックマーク

  1. はてなブックマーク
  2. Google Bookmarks
  3. del.icio.us

ChangeLog

  1. Posted: 2006-06-12T00:46:37+09:00
  2. Modified: 2006-06-12T12:39:58+09:00
  3. Generated: 2017-09-03T23:09:18+09:00