初めて Alpha に Debian のインストールを試みた。 慣れない機械だけに、分からないことだらけで非常に苦労する。 インストールガイドで使われている単語の中にも、知らない専門語が出てくるくらいだから…。
後述する様々な問題のため、初日は無惨にも敗退。
午前中一杯かかって、ようやくインストールに成功した。 こんなに時間がかかったのは、初めて Debian をインストールしたとき以来だろう。 具体的な手順は以下の通り。
wget ftp://dennou-k.gaia.h.kyoto-u.ac.jp/library/Linux/debian/dists/potato/main/disks-alpha/2.2.20-2000-12-03/images-1.44/rescue.bin wget ftp://dennou-k.gaia.h.kyoto-u.ac.jp/libraru/Linux/debian/dists/potato/main/disks-alpha/2.2.20-2000-12-03/images-1.44/root.bin sudo /etc/init.d/volmgt stop sudo dd if=rescue.bin of=/dev/fd0 bs=512 conv=sync sudo dd if=root.bin of=/dev/fd0 bs=512 conv=sync
P00> show dev
引数の意味は次の通り。P00> boot dva0 -file linux.gz -flags "root=/dev/fd0 load_ramdisk=1"
dva0
-file linux.gz
vmlinux.gz
を探しに行き、起動に失敗する。
-flags "root=/dev/fd0 load_ramdisk=1"
root=
オプションを指定しないと、/dev/sda0
を使って起動しようとするため、やはり起動に失敗する。
後の load_ramdisk=1
を指定しないと、
kernel panic が発生して起動に失敗する。
i386 とは異なり、BSD ディスクラベル形式を使う。 また、aboot はディスクの最初の数セクタに書き込まれるため、 ディスクの先頭部分に十分な空きスペースを残しておかなければならない。 とりあえず、以下のようにしてみた。
a: | 4 | 423 | swap |
---|---|---|---|
b: | 424 | 8972 | ext2 |
c: | 1 | 17522 | unused |
h: | 8973 | 17522 | ext2 |
現時点(2001年2月1日)に配布されている drivers disk set は、インストーラの予期しないバージョン不整合があり、 フロッピー経由でインストールすることが出来ない。 実際には、次のようなエラーメッセージが出力される。
This is disk 1 of 2 in the drv14alpha_generic series of 25-Nov-2000 20:04 EST. Wrong disk. This is from series drv14alpha_generic. You need disk 1 of series the driver series.
この問題は、debian-alpha ML でも報告 されているのだが、解決されていない。
そこで、以下の手順に従い、ネットワーク経由でインストールを行う。
drivers.tgz
を入手して展開する。
wget ftp://dennou-k.gaia.h.kyoto-u.ac.jp/library/Linux/debian/dists/potato/main/disks-alpha/current/drivers.tgz tar xzf drivers.tgz tar xzf modules.tgz
tulip.o
など)を tar で固めてフロッピーに書き込み、インストールを行うマシンに持って行く。
cd lib/modules/2.2.18pre21/ tar czf ethers.tgz net/ sudo dd if=ethers.tgz of=/dev/fd0 bs=512
cd /target/tmp dd if=/dev/fd0 of=ethers.tgz bs=512 zcat ethers.tgz | tar -x insmod net/tulip.o ifconfig eth0 XXX.XXX.XXX.XXX netmask YYY.YYY.YYY.YYY route add -net default gw ZZZ.ZZZ.ZZZ.ZZZ eth0
この操作をしておかないと、次のステップ "Configure Device Driver Modules" で、インストーラのバグにより無限ループに陥る。ifconfig eth0 down rmmod tulip.o
ここで tulip.o
を組み込もうとしても、何故か失敗するので、
このステップが終了してから tulip.o
を手動で組み込むことによって回避する。
ネットワーク経由でインストールしようとしたが、 前段階 "Configure the Network" で適切な DNS を設定しているにも関わらず、 ホスト名の解決に失敗した。 これも IP address を直接指定することによって回避する。
更に、再起動時に SRM のコンソールに入って、以下の設定をしておく。
P00> set bootdef_dev dkc0 P00> set boot_osflags "root=/dev/sda2" P00> set boot_file vmlinuz
この設定をしておくと、単に
boot
コマンドを実行するだけで起動できるようになる。
FAQ
に記述されている「日付が 20 年ずれる」問題が発生。
RedHat 用の対策は記述されているが、Debian についてはどうなるのか、
と調査してみたところ、その設定をする項目がない…。
仕方がないので、/etc/init.d/hwclock.sh
にパッチをあてて対策した。
emcws パッチを適用した Emacs20 パッケージを作成したところ、segmentation fault
で落ちてしまう。原因は良く分からないが、最適化レベルを -O2
に下げると、落ちなくなった。
三菱製 UPS の導入を検討。
RAID の設定について研究。
Software-RAID HOWTO
の記述とは異なるが、
最新 kernel 用の RAID パッチは ftp.kernel.org
ではなく、people.redhat.com
にあるようだ。
RAID の設定についての検討の続き。 これまでまったく情報を集めていなかった分野について設定することになると、 こんなに苦労するとは思わなかった。 成程、コンサルタント会社がはやるわけだよ。
結局、パッチとしては Andrea さんが保守されている aa patch を使用した。このパッチは、RAID の他にも幾つかのパッチが統合されている。 このパッチを使って、通常の kernel 再構築を行った(指定したオプション)。 これで、ようやく RAID が使えるようになったので、 bonnie を使ってベンチマークを取ってみた。
昨日作成した RAID は 200GB と極端に大きいので、ext2 での利用は無理があるかなあ、 と思って、最近流行の RaiserFS についての調査を開始した。 必要な tool と kernel の構築には成功した(これも散々苦労したが)ものの、 mount できない。なんでだ。
stable な環境で unstable なパッケージを利用するための支援スクリプトを書いた。
最近の学会発表論文の大半は PDF 形式で入手できる。
そうすると、それらを検索するツールが欲しくなる。
というわけで、PDF をテキスト形式に変換するツールを求めているのだが、
まともなものがないんですね…。
xpdf に付属している pdftotext だと、正常に変換してくれる PDF の方が少ない感じだし。
量が少なければ、ファイルを添付して pdf2txt@adobe.com
に送るという手段もあるのだけれど。
この問題に関連して、最近の ghostscript 日本語化事情の調査に着手するも、 なかなか様子がつかめない。とりあえず分かったことは、以下の通り。
研究室の router + DNS server + DHCP server
を担当しているマシンが故障したらしい。
そのため、研究室内部のマシンから ssh
でログインするのに非常に時間がかかるようになった。
ネットワーク的には届いているのだが、sshd が名前解決のために DNS
を検索しようとしてタイムアウトを待っているようだ。
このような場合にも robust なシステムにするには、
NIS で管理されている研究室内部のホスト情報を /etc/hosts
に書いておくべきなのだろう。
Alpha BIOS を操作するために M/B に組み込まれている環境。
P00>
は、そのプロンプト。
[Top] / [Debian Tips] / [Alpha Install Log]