Contents
PC-UNIX tips

Vine Linux on C3 1GHz
C-1ZoomとLinux
LinuxでHotSync 更新!
グラフィックに挑戦
Laser5 Linux 7.1
FMVをADSLルーターに
300GLで遊ぶ
Cyrixで静音マシン
98NoteでADSLルーター
我が家のPC環境
Hurdを使ってみる

ぶたのアイコン子豚館に戻る

Hurdを使ってみる

日常使用していないIBM PC-300GL(Pentium 166MHz)があるので、使ったことのないOSを試してみようということで、Hurdを入れてみることにしました。
 
 
Debian GNU/Linuxのインストール
 
現段階でHurdをインストールするには、Debian GNU/Linuxを踏み台にしてそこからインストールする方法と、HurdのCDイメージをダウンロードしてブータブルCDを作成してそこからインストールする方法があります。
今回は前者の方法を採用しました。 そこでとりあえずDebian GNU/Linuxをインストールします。 Debianのサイトからrescue.bin、root.bin、driver-1.binをダウンロードして、フロッピーにddして、普通にDebianをインストールします。 この時のDebianはただの踏み台なのでパーティッションは分けずに/dev/hda1を512MとってそこにDebianを入れることにしました。
あとswapに64MとHurd用のパーティッションに512Mとりました。 Hurd用のパーティッションはext2で作るのですが、fdiskしたあとmke2fsするときに、-o hurdというオプションを付けなくてはいけません。
# mke2fs -o hurd /dev/hda2
付け忘れるとあとでnative-installを実行するときにエラーがでます。
この時のディスク構成は以下のようになっています。
hda1   linux native 512M(Debian用)
hda2   linux native 512M(Hurd用)
hda5   linux swap 64M

Hurdの入手からシングルユーザーモードでの起動まで
 
alpha.gnu.org/gnu/hurd/contrib/marcus/からhurdの最新版を入手します。 私の場合はgnu-20010308.tar.gzが最新でした。
Linux上でHurd用のパーティッションをマウントして、そのパーティッション上で入手したHurdのtarファイルを解凍します。
# tar --same-owner -xpzf <path>/gnu-20010308.tar.gz
Grubもalpha.gnu.org/gnu/grub/から入手して、起動フロッピーを作成しておきます。 grub-<version>.ext2fsをダウンロードして、
# dd if=grub-<version>.ext2fs of=/dev/fd0
としておけばよいでしょう。
いったんリブートして、作成した起動フロッピーを使用して、Grubを起動します。 プロンプト上で、
root=(hd0,1)
kernel=/boot/gnumach.gz root=hd0s2 -s
module=/boot/serverboot.gz
boot
のように入力してシングルユーザーモードで起動します。 Linux、Grub、Hurdそれぞれでパーティッションの呼び方が違うことに注意してください。 私の環境ではLinuxでのhda2はGrubでは(hd0,1)、Hurdではhd0s2となります。 詳しくはThe easy guide to installing Hurd on a Linux boxのFirst - Understand Hurd partition nameを参照してください。
起動したあと./native-installを実行すると、地域を訊いてくるのでAsia/Tokyoを選択します。 その後指示にしたがってrebootしたあともう一度./native-installします。 これでインストール作業自体は終了なのであとはいろいろ設定していきます。
 
 
デバイスファイルの作成
 
/devに移動して、フロッピードライブ、CD-ROMドライブ用、スワップパーティッション、Linuxパーティッション用のデバイスファイルを作ります。
# ./MAKEDEV fd0 hd2 hd0s1 hd0s3
HurdからLinuxパーティッションにアクセスできるようにします。 まず、/linuxを作って、そのあとsettransします。
# mkdir /linux
# settrans -a /linux /hurd/ext2fs /dev/hd0s1
TERM=machを実行してからaeを使って/etc/fstabを以下のように編集します。
/dev/hd0s2      /       ext2fs  rw      1       1
/dev/hd0s3      swap    swap    default 0       0
/dev/hd0s1      /linux  ext2fs  rw      1       2

ネットワークの設定
 
どうもHurdには300GLオンボードLANのcs89x0用のドライバがないようです。 とりあえずDuronマシンからLaneed CD-10/100Sを借りてきて使用してみました。 これのチップはrtl8139なのでちゃんと認識されます。 チップが認識されていればあとはトランスレータの設定をするだけです。 シェル上で以下のように入力します。
# settrans /servers/socket/2 \
/hurd/pfinet --interface=eth0 --address=<address> \
--gateway=<gateway> --netmask=<netmask>
/etc/hostname、/etc/resolv.confをLinuxと同じように編集します。
再起動して、login rootでログインしてルートのパスワードの設定とユーザーの追加を行います。これで基本的なインストール作業は終わりです。
 
 
参考サイト:
Debian GNU/Hurd

webmaster@kobuta.org