up

windows を grub の boot floppy にて 起動

これは さーっと 流しておいて下さい

# mount /dev/fd0 /mnt/
# cd /mnt/boot/grub/
# cp menu.lst 20081215_menu.lst 
# vi menu.lst 

ハードディスクの容量のみ 見ておいて下さい。

# fdisk -l

Disk /dev/hda: 255 heads, 63 sectors, 524 cylinders
Units = cylinders of 16065 * 512 bytes

   Device Boot    Start       End    Blocks   Id  System
/dev/hda1             1        43    345366   83  Linux
/dev/hda2   *        44       111    546210    c  Win95 FAT32 (LBA)
/dev/hda3           112       524   3317422+  83  Linux

Disk /dev/hdb: 255 heads, 63 sectors, 1216 cylinders
Units = cylinders of 16065 * 512 bytes

   Device Boot    Start       End    Blocks   Id  System
/dev/hdb1             1       201   1614501    c  Win95 FAT32 (LBA)
/dev/hdb2           202       237    289170   82  Linux swap
/dev/hdb3           238      1216   7863817+  83  Linux

上記の構成で

/dev/hda1 --->  (hd0,0) FreeDos
/dev/hda2 --->  (hd0,1) fake98
/dev/hda3 --->  (hd0,2) linux

/dev/hdb1 --->  (hd1,0) win2k
/dev/hdb2 --->  (hd1,1) linux : swap
/dev/hdb3 --->  (hd1,2) linux

上記の OS を 起動する事は 可能です。 ここでは独立ということでは無く windows 98 2000 は いずれかを 選択する事になるのですが

 
FreeDos 起動 
unhide (hd0,0)
hide (hd0,1)
hide (hd1,0)

fake98 + win2k 何方か 起動
hide (hd0,0)
unhide (hd0,1)
unhide (hd1,0)

これに 対応する grub の 起動 フロッピー の menu.lst は 以下のようにし て作成します。

# mount /dev/fd0 /mnt/
# cd /mnt/boot/grub/
# vi menu.lst 
# sed -e '/^#/d' menu.lst | uniq
timeout 8

default 0

fallback 1

color light-cyan/red

title  plamo 4.03 Nyan Nyan /dev/hdb3
root (hd1,2)
kernel /vmlinuz root=/dev/hdb3

title freedos  /dev/hda1 as C: unhide hide OK
        unhide (hd0,0)
        hide (hd0,1)
        hide (hd1,0)
        rootnoverify (hd0,0)
        chainloader +1 
        makeactive
title windows 2000 or 98 /dev/hda2 as C: unhide hide OK
        hide (hd0,0)
        hide (hd1,0)
        unhide (hd0,1)
        rootnoverify (hd0,1)
        chainloader +1 
        makeactive

# cd
# umount /mnt/

初期状態というか まあ 最初の 状態というか 元の状態にしておきます。

# fdisk /dev/hda
Command (m for help): t
Partition number (1-4): 1
Hex code (type L to list codes): c
Changed system type of partition 1 to c (Win95 FAT32 (LBA))
Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Re-read table failed with error 16: Device or resource busy.
Reboot your system to ensure the partition table is updated.

WARNING: If you have created or modified any DOS 6.x
partitions, please see the fdisk manual page for additional
information.
Syncing disks.
~# fdisk -l

Disk /dev/hda: 255 heads, 63 sectors, 524 cylinders
Units = cylinders of 16065 * 512 bytes

   Device Boot    Start       End    Blocks   Id  System
/dev/hda1             1        43    345366    c  Win95 FAT32 (LBA)
/dev/hda2   *        44       111    546210    c  Win95 FAT32 (LBA)
/dev/hda3           112       524   3317422+  83  Linux

Disk /dev/hdb: 255 heads, 63 sectors, 1216 cylinders
Units = cylinders of 16065 * 512 bytes

   Device Boot    Start       End    Blocks   Id  System
/dev/hdb1             1       201   1614501    c  Win95 FAT32 (LBA)
/dev/hdb2           202       237    289170   82  Linux swap
/dev/hdb3           238      1216   7863817+  83  Linux
# shutdown -h now

これで FreeDos か windows 系を 起動する毎に Id と System が 変わるの ですが まあ初期の状態ということにしておきます。

にゃんたろう 拝!

2008年12月22日 (月) 21:25:01 JST 作成


up

Copyright © 2006.-2007. nyantarou All Rights Reserved.