bootdisk は 今まで Simple Prototype 、Saving Space 、Some Basic Utilities、Checking and Mounting Disks の 段階まで なんら 変更せずに 使 用してきました 、 今回は その bootdisk を改造します。
bootdisk を計算機の フロッピディスクに 挿入します。
# mount /dev/fd0 /mnt/ # df | sed 2,3d Filesystem 1k-blocks Used Available Use% Mounted on /dev/fd0 1412 988 424 70% /mnt # cd /mnt/boot/grub # ls -a ./ ../ stage1* stage2 # vi menu.lst # cat menu.lst default 0 timeout 3 title Pocket Linux Boot Disk kernel (fd0)/boot/vmlinuz root=/dev/fd0 load_ramdisk=1 prompt_ramdisk=1
後かたずけ
# pwd /mnt/boot/grub # ls -l| sed 1d -rw-r--r-- 1 root root 121 Aug 29 21:55 menu.lst -rwxr-xr-x 1 root root 512 Aug 21 21:44 stage1* -rw-r--r-- 1 root root 104082 Aug 21 21:44 stage2 # df | sed 1,2d /dev/hda8 20641788 1096368 18496780 6% /var/data /dev/fd0 1412 989 423 71% /mnt # cd - # umount /mnt/
これで立ち上げる事が出来ます。
いわば こういう事のようです。
3秒待つ間に 何もしないと フロッピディスクの vmlinuz が 起動します こ れのルートファイルシステムは フロッピ ディスクに有ります。(当然 今動い ている bootdiak には 有りません rootdisk に ルート ファイルシステムがあ るのです。両方とも フロッピーディスクであることには 間違いは無いのです。)ラムディスクは ロードしないといけません。またラムディスクをロードする前に プロンプトを 出しなさい。(そうしないと フロッピディスクの交換する時期が わかりませ ん。)
今回は init=/bin/sh は有りません 後で作成する init を 含む rootdisk に 今回は それを 設けます。
手で入力した時には 別途 ”boot ”と 入力しましたが これの必要は無いよ うです。
これで カーネルが動き始めます、その後ルートファイルシステムを 云々す るのが 後後半の rootdisk の役割です。カーネルは 通常 /sbin/init を 実行 しようとします。
にゃんたろう 拝!
2010年 8月29日 (日) 21:01:32 JST 作成