電波指令1:NetBSD/X68k 1.3.1 OS、基本セットインストール(1998.05.01)

[Back] [Home Page]
==================================================================

STEP 1

先づは、伊藤さんの所 から、以下のファイルをGET。 ※ 1998.05.17 comp.tgz の修正パッチがアップされています。
※ 1998.06.01 NetBSD 1.3.2 バイナリがアップされています。

STEP 2

INSTALL.x68k を覗いてみる。英語。「INSTALLATION NOTES for NetBSD/x68k 1.3.1」か ... ふむふむ ... ? ... 何かおかしいぞ ... Oh my God! ... 中身は 1.2 のままやんけ! ブツブツブツブツ (注:これは伊藤さんの責任では無い)。 しょうがない。ディスクパーティションの推奨サイズだけチェックしておこう。

+-----------------------------------------------------------------------+
| Here is a table of recommended HD partition sizes for a full install: |
|       partition:      advise, with X, needed, with X                  |
|       root (/)        15M     15M     10M     10M                     |
|       user (/usr)     65M     100M    45M     80M                     |
|       swap            ----- 2M for every M ram -----                  |
|       local (/local)  up to you                                       |
+-----------------------------------------------------------------------+

STEP 3

パーティション計画。My X68 の機器構成を書いておこう。

+-----------------------------------------------------------------------------------+
| 本体      :X68030 + 060turbo 、30/60共に FC12対応済み。                          |
| メモリ    :内臓4M + SH-5BE4-8M(I-O DATA) + 060turboローカルメモリ32M = 合計 44M  |
| HD0       :240M、Panasonic製、型番不明(おそらく SCIS2 準拠)。 SCIS-ID 0        |
| HD1       :2G、I-O DATA HDVS-2G。 SCIS-ID 1                                      |
| MOドライブ:230M、Logitec LMO-480H。 SCIS-ID 2                                    |
| CD-ROM    :2倍速ジャンク品(おそらく SCIS2 準拠)。 SCIS-ID 6                   |
| モデム    :US-Robotics Sportster Voice 56k(US仕様)                             |
|             但し、X68 本体の SCC は 5MHz のまま。                                 |
| プリンタ  :Canon BJC-420J                                                        |
+-----------------------------------------------------------------------------------+
※その他、NetBSDに関係無い(使用する予定の無い)デバイスは省略。

HD0(240M) に、NetBSD/Human の起動と、最小限のシステムファイルを放り込む ... という方針で 以下の様な構成をイメージする。

HD0 (240M) - sd0
+-------------------------------+
| sd0a :   15M --> NetBSD /     |
| sd0b :   80M --> NetBSD swap  |
| sd0d :   80M --> NetBSD /usr  |
| sd0e :   65M --> Human        |
+-------------------------------+

HD1 (2G) - sd1
+-------------------------------+
| sd1a :  217M --> Human        |
| sd1b :  217M --> Human        |
| sd1d :  217M --> Human        |
| sd1e :   80M --> NetBSD /tmp  |
| sd1f : 1269M --> NetBSD /home |
+-------------------------------+

※ 以上は、あくまで概算。
※ sd0b の swap 80M は、将来メモリを増やす場合も考えるとちょっと厳しい。
※ sd0d の /usr 80M ... 大丈夫か? インストール後リンクを張り直すつもりだけど ...。
※ sd1f の /home 1269M ... 追加ソフト、ユーザーデータは、全部ここにぶち込むつもり。
                           バックアップを全然考えていない。良い子は真似しないように。
※ Human用パーティションを 217M にしているのは、MO へのバックアップを考えて。

STEP 4

上記パーティション計画に則って、ハードディスクを準備しよう。 ここ(STEP4)からSTEP6 までは、Human での作業。 HD0 (240M) を format.x で「装置初期化」する。 「領域確保」はしない。

※ これは後で解る事だが、NetBSD1.3/1.3.1 のインストーラは、ディスク装置全体を、 NetBSD 用パーティションで埋め尽くさないと先へ進んでくれない。 従って、NetBSD のインストール前に、Human のパーティションを確保していても、 消されてしまう事になる。(NetBSD 1.2 ではどうか知らない)

HD1 (2G) は、インストール作業には必用が無いし、先に Human 用パーティション を作っていても大丈夫なので、今の段階で、STEP3 の通り Human 用パーティションを作っておく。(217M X 3) 但し、NetBSD 用の領域は今の段階では確保しない。


STEP 5

「distribution sets」用メディアとして、MO を使おう。このバージョン(1.3.1) では、「X68k Programing Series #4 NetBSD/X68k 1.0」(SOFT BANK) に含まれていた Human ファイルシステムには対応していない。 MO を IBMフォーマットにする必用があるようだ。 FIM.X(1.03A)で MO をフォーマットする (Thanx > GORRYさん)。

STEP1 で GET したファイルを MO の \X68K\BINARIES ディレクトリ に全部コピーする。
※ 後で解ったけど、ディレクトリ名、ファイル名は全て大文字にする必用がある(case.x 使用)。
※ netbsd-all.gz 、netbsd-generic.gz は、8.3 のファイル名制限の為、 それぞれ NETBSD-A.GZ 、NETBSD-G.GZ と、リネームしておく。


STEP 6

インストール用ブートフロッピーを作成しよう。 ブートフロッピーイメージを FD に転送するツール rawrite 1.2(Thanx > 沖さん) を用意する。 STEP1 で GET した boot131.fs.gz を解凍する。 rawrite で boot131.fs を FD に書き込む。

ここで、Human の作業環境は以下の通りとしよう。

Human の具体的なコマンド操作は、以下の様になる。

-------- ここから --------
A:\> cd \foo
A:\foo> gzip -d boot131.fs.gz
A:\foo> format b:/5  <-- FD0ドライブに未使用 FD を入れてフォーマット
A:\foo> rawrite
RaWrite 1.2 - Write disk file to raw floppy diskette
Enter source file name: boot131.fs
Enter destination drive: b
Please insert a formatted diskette into drive b: and press -ENTER- :
Reading image
Writing image to drive b:
Done.
A:\foo>
-------- ここまで --------

STEP 7

インストール用ブートフロッピーを起動しよう。 ここ(STEP7)からSTEP10 までは、このフロッピーで起動した NetBSD での作業。 STEP5 で作成した MO と、 STEP6 で作成した FD をドライブにいれて、 030 モードで FD起動する。 (060 モードではインストール用ブートフロッピーが動作しない)
Loading netbsd.gz ...
と、表示された後、しばし待つ。

しばらくすると、あれこれメッセージが出て、ディスクのジオメトリ情報等が表示される。 これは、後で必要な情報なので、紙にメモする。

この時のジオメトリ情報(要点だけ)
+---------------------------------------------------------------------------------+
| sd0: 234MB, 1818 cyl, 4 head, 65 sec, 512 bytes/sect x 479350 sectors     (HD0) |
| sd1: 2014MB, 4092 cyl, 16 head, 63 sec, 512 bytes/sect x 4124736 sectors  (HD1) |
| sd2: 217MB, 217 cyl, 64 head, 32 sec, 512 bytes/sect x 446325 sectors     (MO)  |
+---------------------------------------------------------------------------------+
※ インストールに必用なのは sd0 の情報のみ。

STEP 8

システムが起動して、 Welcomメッセージと、プロンプトが表示される。

+-------------------------------------------------------+
| Welcome to the NetBSD 1.3.1 installation floppy.      |
|                                                       |
| enter "install" to install NetBSD,                    |
|       "upgrade" to upgrade an existing NetBSD system, |
|    or "shell" for a shell prompt.                     |
|                                                       |
| your choice?                                          |
+-------------------------------------------------------+

"your choice? " の問には、もちろん install と答える。 以下はインストーラとの質疑応答を、途中の出力メッセージを適宜省略しながら記録したもの。

+--------------------------------+
| Proceed with installation? [n] |
+--------------------------------+
もちろん y と答える。

+-------------------------------------------------------------+
| NetBSD can be installed on ST506, ESDI, IDE, or SCSI disks. |
| What kind of disk will you be installing on? [SCSI]         |
+-------------------------------------------------------------+
もちろん SCSI と答える。[] の中はデフォルトなので、単にリターンでも可。

+---------------------------------------------+
| Which disk would like to install on? [sd0]  |
+---------------------------------------------+
sd0 と答える。

+----------------------------------------------------+
| What kind of disk is it? (one word please) [mysd]  |
+----------------------------------------------------+
特に変える理由も無いので mysd と答える。

+------------------------------------+
| View the boot messages again? [n]  |
+------------------------------------+
既にメモしているので、n と答える。 メモし忘れた人は、ここで y と答えると、再度ジオメトリ情報等を見る事ができる。

+---------------------------------------------------+
| You will now enter the disk geometry information  |
|                                                   |
| Number of bytes per disk sector? [512]            | (1)
| Number of disk cylinders?                         | (2)
| Number of disk tracks (heads) per disk cylinder?  | (3)
| Number of disk sectors per disk track?            | (4)
+---------------------------------------------------+
と答える。

+----------------------------------------------------------------------+
| Your disk has a total of 472680 512 byte sectors,                    |
| arranged as 1818 cylinders which contain 260                         |
| sectors (133210 bytes) each.                                         |
|                                                                      |
| You can specify partition sizes in cylinders ('c') or sectors ('s'). |
| What units would you like to use? [cylinders]                        |
+----------------------------------------------------------------------+
パーティションのサイズをシリンダ数で指定するか、セクタ数で指定するかを聞いてくる。 セクタ数の方が計算し易いけど、シリンダ数で指定した方がディスクパフォーマンスが良い。 ここは、シリンダ数で指定する事にする。計算は1回だけの事。 c と答える。

+-----------------------------------------------------+
| There are 1817 cylinders left to allocate.          |
|                                                     |
| Root partition size (in cylinders)?                 | (1)
|                                                     |
| 1701 cylinders remaining in NetBSD portion of disk. |
| Swap partition size (in cylinders)?                 | (2)
+-----------------------------------------------------+
と答える。ここでの計算のし方は忘れた(ゴメン!) とにかく、15M = 116シリンダ、80M = 616シリンダという計算。(自信度20%)

+-----------------------------------------------------+
| 1085 cylinders remaining in NetBSD portion of disk. |
| Next partition size (in cylinders)?                 | (1)
| Mount point?                                        | (2)
+-----------------------------------------------------+
と答える。/usr 用に 80M 確保。

+----------------------------------------------------+
| 469 cylinders remaining in NetBSD portion of disk. |
| Next partition size (in cylinders)?                | (1)
| Mount point?                                       | (2)
+----------------------------------------------------+
と答える。これは、本来 Human 用に割り当てるつもりのパーティションだが、 残りエリアを全部喰い尽くさないとインストーラが先に進まないので、ダミーとして /xx を 割り当てる。

+----------------------------------------------------------------------+
| THIS IS YOUR LAST CHANCE!!!                                          |
|                                                                      |
| Are you SURE you want NetBSD installed on your hard drive? (yes/no)  |
+----------------------------------------------------------------------+
yes と答える。ここで yes と答えたが最期、全自動でディスクフォーマット されるので、自信がなければためらわず no と答えよう。

+--------------------------------------------------------------------+
| OK!  The preliminary work of setting up your disk is now complete. |
|                                                                    |
| The remaining tasks are:                                           |
|                                                                    |
| To load and install the NetBSD distribution sets.                  |
| Currently the hard drive's root filesystem is mounted on /mnt      |
|                                                                    |
| To copy a NetBSD kernel to the hard drive's root filesystem.       |
| Once accomplished, you can boot off the hard drive.                |
|                                                                    |
| Consult the installation notes which will describe how to          |
| install the distribution sets and kernel.  Post-installation       |
| configuration is also discussed therein.                           |
|                                                                    |
| GOOD LUCK!                                                         |
| #                                                                  |
+--------------------------------------------------------------------+
ディスクフォーマットが終了した後、このようなメッセージが出て、シェルプロンプトが表示される。 要約すると、「/mnt の下にインストール先ディスクのルートツリーがマウントされているから、 そこに distribution sets をインストールして、カーネルファイルをコピーせよ。」 という事らしい。本当に LUCK! が必用だな、こりゃ。

STEP 9

「distribution sets をインストールせよ」という指令に服従しよう。 確か以前 Extract というコマンドを使用した記憶があるので、色々探ってみる。 結果解ったコマンド操作を記録しておく。

+-----------------------------------------------------------------+
| # mount_msdos /dev/sd2c /mnt2                                   | (1)
| # Extract base                                                  |
| What directory should be used to find and/or store installtion  |
| files? [xxxx]                                                   | (2)
| Would you like to list the files as they're extracted? [n]      | (3)
|                  (以下出力メッセージは省略)                   |
| # Extract comp                                                  |
| # Extract etc                                                   |
| # Extract games                                                 |
| # Extract man                                                   |
| # Extract misc                                                  |
| # Extract text                                                  |
+-----------------------------------------------------------------+
(1) ---- STEP5 で用意した MO を /mn2 にマウントする。
(2) ---- 「distribution sets ファイルがあるディレクトリを指定せよ」という 事なので /mnt2/X68K/BINARIES と答える。xxxx の部分の表示は忘れた。
(3) ---- 「展開経過を出力するか?」 念のため y と答える。

STEP 10

「カーネルファイルをコピーせよ」という指令に服従しよう。 MO(/mnt2)に入っている NETBSD-A.GZ 、NETBSD-G.GZ (STEP1STEP5 を参照) を展開して、インストール先ディスクにコピーする。 コマンド操作を記録しておく。

+-----------------------------------+
| # cd /mnt2/x68k/binaries          |
| # gunzip netbsd-a.gz              | 
| # gunzip netbsd-g.gz              |
| # cp netbsd-a /mnt/netbsd-all     |
| # cp netbsd-g /mnt/netbsd-generic |
+-----------------------------------+
これで、一応「インストール用ブートフロッピー」を使用した作業は終了。 FD を抜き取って、060モードにしてリブートする。

+-----------+
| # reboot  |
+-----------+
※簡単にリブートすると書いてしまったが、正確に言うと、 「HD0 の先頭パーティション (sd0a) から起動する」という意味。 この辺は、マシン環境によってやり方が色々あるので、詳細は省略。
060モードで起動できるのは、伊藤さんが netbsd-all.gz を 用意してくれたお陰(Thanx > 伊藤さん)。
※ここまでやって気付いたけど、x68k 以外のインストールドキュメントを 見てみれば良かったんでは? ... まあいいや。ここまで来たんだから、 意地でも手探りでインストールしてやる!
WARNING:'ln /mnt/netbsd-all /mnt/netbsd' というコマンド もしておいた方がいいみたいだ。 (電波指令3 参照)

STEP 11

060 モードで、sd0aから起動する。 これ以降は、HD起動した NetBSD での作業。 特にエラーメッセージも無く、順調に起動するようだ。んが、最後の最後に なにやら怪しげなメッセージが出て、シングルユーザーモードでプロンプトが表示されてしまう。

+---------------------------------------------------------+
| /etc/rc.conf is not configures. Multiuser boot aborted. |
+---------------------------------------------------------+
「rc.conf が確定されていないから動かしてやらないよ (:-P 」という事らしい。 問題の rc.conf を覗いてみる。ファイルの先頭の方に

+--------------------------------------------------------------------------+
| # If this is not set to YES, the system will drop into single-user mode. |
| rc_configured=NO                                                         |
+--------------------------------------------------------------------------+
という記述がある。こいつを、YES に書き直せば良いわけだ。

vi でこいつを編集しようと思ったが、/usr がマウントされていないので駄目。 'mount /dev/sd0d /usr' とやって、 再度 vi を起動してもやっぱり駄目。(エラーを出して終了する)。 何か環境が足りないようだ。vi が動くように設定を調べるのも良いが、ここはてっとり早く、 ed(unix のラインエディタ) を使おう ... って、ed なんか使うのは何10年ぶりだ? 憶えてるかな〜〜〜 ... って、しっかり憶えてるお前は一体何者やねん?! > 俺。

rc.conf では、各種デーモンを自動起動するかどうか等の指定ができるようだが、 今はマルチユーザーモードで起動する事が優先事なので、 「rc_configured=YES」と書変えるだけに留めておく。そんでもって、reboot。

再起動後、めでたくマルチユーザーモードで起動して、login プロンプトが表示された。 root でログインしてみる。/usr もオートマウントされていて、問題無し。 vi を動かしてみる。問題無し。 忘れないうちに、STEP8 で作成してしまったダミーパーティション の情報を消しておこう。 "rmdir /xx" として、/etc/fstab を以下の様に書き直す。

+----------------------------+
| /dev/sd0a / ffs rw 1 1     |
| /dev/sd0b none swap sw 0 0 |
| /dev/sd0d /usr ffs rw 1 2  |
+----------------------------+

以上、おしまい。


STEP 12(1998.5.12 追加)

「インストール後、'Configure' すべし」という情報を戴きました(Thanx > 箕浦さん)。 さっそく確認したところ、ホスト名の設定や、'/dev/MAKEDEV all' によるスペシャルファイルの生成等をしてくれるシェルプロシージャーが用意されていたみたいです。 恐らく、STEP10 でリブートする前に、以下の様な操作をするべきなのでしょう。 STEP11 の操作は必用無いかも。 (※これは、推測なので注意して下さい。もう一度インストールからやり直す元気が無いもので ...)

+-----------------------------------------------------------------------+
| # Configure                                                           |
| You will now be prompted for information about this                   |
| machine.  If you hit return, the default answer (in                   |
| brackets) will be used.                                               |
|                                                                       |
| What is this machine's hostname? [unknown.host.domain] dzland.foo.jp  | (1)
|                                                                       |
| What domain is this machine in (this is NOT its YP                    |
| domain name)? [foo.jp]                                                | (2)
|                                                                       |
| WARNING: A default sendmail.cf exists, and probably                   |
| needs to be tuned and/or replaced, to work properly at                |
| your site!                                                            |
|                                                                       |
| Configure network interfaces? [y]                                     | (3)
|                                                                       |
| Making device nodes (may take a while)... done.                       |
+-----------------------------------------------------------------------+

(1) ホスト名を聞いてくるので、例えば dzland.foo.jp のような形で答える。
(2) ドメイン名を聞いてくるので、例えば foo.jp のような形で答える。
(3) 一応 Y と答える。

蛇足:楽屋裏話

なんだかすんなりインストール出来たような文章になっていますが、 実際には、もっと試行錯誤しています。特に僕の X68030+060turbo では、 何故か伊藤さんのインストール用ブートフロッピーがうまく動かないので、 STEP7STEP10 は、 X68000XVI+Xellent30 で作業しています。 NetBSD用の HDパーティションを確保する為に、 Human のパーティション再構成の作業も発生しています。 従って、上記のインストール記のバックグラウンドでは、マシンをとっかえひっかえしたり、 パーティションをとっかえひっかえしたり、というドタバタが展開されています。

この辺の記録を書くと無意味に長い文章になってしまうし、本質的な問題ではないので、 ここでは全てカットしています。但し、情報として価値があると思われる試行錯誤は、上記文章 に含まれています。今後のインストール記もこの姿勢で書くつもりです。 この文章を参考にして NetBSD をインストールしようと思われている方は、 その辺を適宜解釈した上で参考にして下さい。

==================================================================
[加筆修正履歴]

==================================================================
ご意見、ご感想などは、draconianz@geocities.co.jp まで。 ==================================================================

ジオシティーズの入り口へ このコミュニティの入り口へ ご近所を訪問する