Minix/X68kをインストールした時の記録です。

参照回数[

  1. ハードウェア環境
    1. 機種 X68000 ACE HD(内蔵SCSI HD(1GB ID=0) -- NetBSD/X68k用(内蔵 SASI HD 20Mは廃棄))
    2. 外付けSASI HD(40MB) -- Human68k用
    3. 外付けSCSI HD(2GB,ID=1) -- Minix/X68k用
    4. MEMORY 12M

  2. Minix/X68kの用意
    1. bootscsi.img.Z
    2. root.img.Z
    3. usr1.img.Z
    4. usr2.img.Z
    5. ksrc.img.Z
    6. ack.img.Z
    上記のファイルを Linux 上の uncompress で圧縮を解き、 fdformat /dev/fd1h1200 でフォーマット(Human68kでのformat /5に相当) したフロッピーに、 dd でコピーした。

  3. 手順
    1. パーティション設定
      HUMAN上のFORMATコマンドで以下のように設定。後々、インストール課程で パーティションは削除&再設定を行うが、このFORMAT作業でHDの先頭に 「X68000 HARD DISK IPL MENU」プログラムが書き込まれる(たぶん...)。
      1. bootimage1 1M -- /dev/sd11 通常時のbootカーネル
      2. bootimage2 1M -- /dev/sd12 緊急時のbootカーネル
      3. root 64M -- /dev/sd13
      4. usr 64M -- /dev/sd14

    2. Hard disk に root,usr1,usr2 をコピーする
      1. フロッピーベースでMinix起動
        • 起動時のusrマウント要求にはusr1をマウントする
        • rootのパスワードはGeheim
      2. SCSI ID=1用に/dev/sdxxを作成する
        • mknod /dev/sd10 b 7 16 0 (<-- SCSI ID=1のハードディスク全体)
        • mknod /dev/sd11 b 7 17 0 (<-- SCSI ID=1の第1パーティション)
        • mknod /dev/sd12 b 7 18 0 (<-- SCSI ID=1の第2パーティション)
        • mknod /dev/sd13 b 7 19 0 (<-- SCSI ID=1の第3パーティション)
        • mknod /dev/sd14 b 7 20 0 (<-- SCSI ID=1の第4パーティション)
      3. rootフロッピー上にも、SCSI ID=1用に/dev/sdxxを作成する
        • mkdir /fd1
        • mount /dev/fd1 /fd1 -- rootフロッピーをマウント
        • mknod /fd1/dev/sd10 b 7 16 0
        • mknod /fd1/dev/sd11 b 7 17 0
        • mknod /fd1/dev/sd12 b 7 18 0
        • mknod /fd1/dev/sd13 b 7 19 0
        • mknod /fd1/dev/sd14 b 7 20 0
      4. パーティションを再作成する(HD IPL MENUの表示をMinixにする為)
        • xscsi -r 1/1 (<-- 第1パーティション削除)
        • xscsi -r 1/2 (<-- 第2パーティション削除)
        • xscsi -r 1/3 (<-- 第3パーティション削除)
        • xscsi -r 1/4 (<-- 第4パーティション削除)
        • xscsi -a 1/1 1024 (<-- 第1パーティション追加)
        • xscsi -a 1/2 1024 (<-- 第2パーティション追加)
        • xscsi -a 1/3 65536 (<-- 第3パーティション追加)
        • xscsi -a 1/4 65536 (<-- 第4パーティション追加)
      5. /dev/sd13 にrootフロッピーをコピー
        • mkfs /dev/sd13 65535 (MINIX-FS ver1.0の最大ブロック数の制限で65535KB以上のファイルシステムは構築できないとの事です)
        • mkdir /mnt
        • mount /dev/sd13 /mnt
        • cpdir -msv /fd1 /mnt
        • sync;sync;sync
        • umount /dev/fd1
        • umount /dev/sd13
      6. /dev/sd14 にusr1,usr2フロッピーをコピー
        • mkfs /dev/sd14 65535
        • mount /dev/sd14 /mnt
        • cpdir -msv /usr /mnt
        • sync;sync;sync
        • mount /dev/fd1 /fd1 -- usr2フロッピーをマウント
        • cpdir -msv /fd1 /mnt
        • sync;sync;sync
        • umount /dev/fd1
        • umount /dev/sd14

    3. rootフロッピーの /etc/rc をHard disk(usr)マウント対応に修正
      1. mount /dev/fd1 /fd1 -- rootフロッピーをマウント
      2. cp /fd1/etc/rc.hd /fd1/etc/rc
      3. elvis /fd1/etc/rc で `/etc/mount /dev/hd6 /usr' を `/etc/mount /dev/sd14 /usr' に修正
      4. sync;sync;sync
      5. umount /dev/fd1

    4. 修正したrootフロッピーを使ってMinix再起動(/usrには /dev/sd14がマウントされる)

    5. カーネルのコンパイル
      1. カーネルソースの展開
        • mkdir /fd1
        • mount /dev/fd1 /fd1 -- ksrcフロッピーをマウント
        • cpdir -msv /fd1 /usr
        • sync;sync;sync
        • umount /dev/fd1
      2. C compilerの展開
        • mount /dev/fd1 /fd1 -- ackフロッピーをマウント
        • cpdir -msv /fd1 /usr
        • sync;sync;sync
        • umount /dev/fd1
      3. ヘッダーファイルの修正(rootパーティションの指定)
        elvis /usr/include/minix/boot.h で `#define DROOTDEV (DEV_FD0 + 0)' を `#define DROOTDEV (DEV_SD0 + (1 * 16) + 3)' に修正(「1」はSCSI ID、「3」はパーティション番号)
      4. コンパイル&ブートパーティション書き込み
        • cd /usr/src/fs
        • make clean;make
        • cd /usr/src/mm
        • make clean;make
        • cd /usr/src/kernel
        • elvis Makefile
          `BOOTVOL = 1/1' に修正
          `WINI = wini' 以降の空白を含めてコメント行を削除
          `WINI2 = x6scsi' 以降の空白を含めてコメント行を削除
        • make clean;make sd -- ここで boot が /dev/sd11 に書きこまれる。
        • dd if=/dev/sd11 of=/dev/sd12 -- 第2パーティションにもコピーしておく

    6. Hard disk ブート対応に /etc/rc を修正
      • mkdir /mnt
      • mount /dev/sd13 /mnt
      • cp /mnt/etc/rc.hd /mnt/etc/rc
      • elvis /mnt/etc/rc で
        • `/bin/rm /bin/printroot' を `#/bin/rm /bin/printroot' に修正
        • `/etc/mount /dev/hd6 /usr' を `/etc/mount /dev/sd14 /usr' に修正
      • sync;sync;sync
      • umount /dev/sd13

    7. BM(freeのブートメニュー)で bootパーティションを選択し再起動 &動作確認

Return
introduction of kyoto internet people
[更新]