最初に Plan9 を試す場合には local ディスクをベースにした Plan9 端末から
始める。使用されるカーネルは 9pcdisk である。
ネットワークを使用するには
IP アドレス
IP マスク
IP ゲートウェイ
を設定する必要がある。
これらの設定は /bin/termrc の中で ipconfig によって行なわれるが
配布版の
/bin/termrc
の中では次の様になっている。
ip/ipconfig >/dev/null >[2=1]
この設定は必要な IP を DHCP サーバから受け取る場合のものである。
DHCP サーバが動作していない場合、あるいは自分で設定したい場合には
ipconfig に必要なデータを引数によって渡す必要がある。
例えば
IP=202.250.160.40 IPMASK=255.255.255.0 IPGW=202.250.160.254の場合には
ip/ipconfig >/dev/null >[2=1]の代わりに
ip/ipconfig -g 202.250.160.254 ether /net/ether0 add 202.250.160.40 255.255.255.0を実行してやればよいが、
/bin/termrcでホストに依存する IP の設定データを明示的に持ち込むのは気がきかない。
ホスト名と IP の対応は
/lib/ndb/localの中で例えば
ipnet=arlab ip=202.250.160.0 ipmask=255.255.255.0 ipgw=202.250.160.254 ip=202.250.160.40 ether=00105a9f9404 sys=ar dom=ar.aichi-u.ac.jp bootf=/386/9pcdisk proto=ilの様に行われているのだから、ここで指定されているデータをそのまま ipconfig に
plan9.iniの中で
ipconfig=localの行を入れる。plan9.ini でのこの設定は環境変数として /bin/termrc に渡されるのである。そこで
switch($ipconfig){ case local eval `{ndb/ipquery sys $sysname ip ipgw ipmask} ip/ipconfig -g $ipgw ether /net/ether0 add $ip $ipmask case dhcp ip/ipconfig >/dev/null >[2=1] }で置き換えるがよい。
plan9.ini で ipconfig=dhcpを指定しておけばよい。
なお
$sysnameは /bin/termrc の中の
ndb/cs sysname=`{cat /dev/sysname}によって設定される。
/lib/ndb/localからシステム名(ホスト名)を設定しているのである。
plan9.ini の中での sysname の設定は特殊であり、単なる環境変数ではない。
例えば
sysname=arの様に設定すれば、これが /dev/sysname に設定され(従って正当なシステム名としての