- 2021.4.1 移転しました...
-
- このページの旧URLは
http://www10.plala.or.jp/palm84/grub4dos_bootdisk.html
- このページの旧URLは
2009.9.16 作成
最終更新日 2010.9.7
【ご注意】尚、Palm84レベルということで安全性はこれっぽっちも保障されていないと思われます(信用ない人だからなぁ...w)。緊急時に使う【取り扱い注意】ツールということで。あしからず。
これってなに? 3
GRUB (for DOS) 起動フロッピーです。
そのまんまでも便利ですが、レスキューやメンテナンス用に便利なツール類など詰め込んでおくのじゃ、ということで。
ハッキリ言って、レトロなPC向けなのでありんす。
使用目的 4
障害時の原因の切り分けにも使えるかもしれない。
- ブートセクタのチェインロード
-
MBR内のブートストラップが飛んじゃった場合に。
- Windows XP/2000 の ntldr のチェインロード
-
ブートセクタ内のIPLとかが飛んじゃった場合に。
Vista の bootmgr もチェインロードできます。
- FD内の ntldr のチェインロード
-
Windows XP/2000 緊急起動ディスクとして。
boot.ini がおかしいとか、ntldr そのものがおかしいとか。ntfsdos や LiveCD などで直接HD上のファイルを弄るより、とりあえず Windows をブートさせて Windows 上で編集した方がいいかなと。(※回復コンソール使う手もありますけどね)
また、これでもブートしないとなるとHDの異常なのか、Windows の問題なのか判断が付くかも。
- FreeDOS
-
BIOSアップデートとか、DOSが必要な時に。
FD内の boot.ini の確認・修正用にテキストファイル編集の edit.exe を入れといてと。FDISKとかも入れといてもいいかも。
- ネットワークブート用起動ディスクとして
-
ネットワークブート非対応PC用。汎用イメージを使います。BIOS対応に比べ若干制限ありますが...
- PLoP Boot Manager
-
人気急上昇中?(w)。USB(フラッシュメモリ・HDD)非対応PC用の起動用イメージ。完璧じゃないけれども。
- Memtest86+
-
メモリーテスト。
- Linuxカーネルのロード
-
これが本業やん(笑)。Knoppix などの LiveCD をCDドライブを使わずHDにコピーして試したい時とかにも使えるし。(結構簡単w)
Windows の再インストールで MBR の GRUB 消えちゃったな時でも、これがあれば心配ないのです。これで Linux を起動して GRUB を再インストールすればよいのです。
- Windows PE 起動ディスクとして
-
通常の手段(※ CD, USBメモリブート)が使えない時に。HD上にいずれかの方法でPEをコピーしておきます。
- PE の isoイメージ をHD(ドライブ)のルートへ
- PE CD内のファイルをそのままHD(ドライブ)のルートへ (※ Vista の bootmgr があるドライブにコピーしてはいけない!)
- Linux LiveCD 起動ディスクとして
-
通常の手段(※ CD, USBメモリブート)が使えない時に。HD上にファイルをコピーしてGRUBから起動させます。
他には、FDしか使えない場合に BG-Rescue Linux の起動用にするとか(FDが +2枚必要)。
【注意】NOD32 など一部のウイルス対策ソフトでFDのブートセクタが「ウイルスの可能性:TSR.BOOT ウイルス」などとして検出されることがあります。面倒ですが除外設定するしかないかなぁ。(※ 何度も提出してますねんけど...)
【基本的】起動ディスク作成 5
FD書き込みツールは、RawWrite for Windows がお手軽かな?
grub_for_dos-0.4.2.zip
とgrub4dos-0.4.4.zip
をダウンロード- 0.4.2 の
fat12grldr.img
をFDへ書き込む - 0.4.4 の
grldr
を上書きコピー - ファイル
default
は削除
基本的なGRUB起動ディスクとしてなら、これだけでおk!
- grubinst.exe で作成するなら...
-
- grubinst.exe(grubinst-1.1-bin-w32-xxx.zip)
grubinst.exe --pause --floppy (fd0)
この後、0.4.4 の grldr , menu.lst をFDへコピー
FDドライブが無い場合はVirtual Floppy Driveを使うとか。
追加ダウンロード 6
- FreeDOSのファイル群
-
- Balder - Finnix
balder10.img
をダウンロード
FDイメージなのでFDへ書き込むかマウントするなどしてファイルを取り出せる状態にしておく。
- Balder - Finnix
- ネットワークブート用カーネル
-
- Choose an output format
Linux kernel (SYSLINUX/GRUB/LILO) loadable image (.lkrn)
を選択
- Choose a NIC type
all-drivers
を選択
- [Get Image] をポチっと
- gpxe-0.9.x+-gpxe.lkrn は gpxe_all.krn にリネーム
※ ずっと 0.9.5 使ってたので最新版はどうなのかわかりません。。。旧バージョン(0.9.4, 0.9.5)は、184 KBと若干サイズが小さいです。
最新0.9.6 は 206 KB。旧バージョンでは、Choose NIC/ROM type
でgpxe:all-drivers
を選択。 - Choose an output format
- PLoP Boot Manager
-
- PLoP Boot Manager Downloads
- plpbt-x.x.x.zip をダウンロード
必要なのは、
plpbt.bin
だけ。 - PLoP Boot Manager Downloads
- Memtest86+
-
- Memtest86+ - Advanced Memory Diagnostic Tool
- 【Pre-Compiled Bootable Binary】をダウンロードして展開、ファイル名を memtest にリネーム。
※旧バージョンは若干サイズが小さいです。
- Memtest86+ - Advanced Memory Diagnostic Tool
追加コピー 7
(GRUB for DOSの)FDへファイルをコピーしませう。
A:. | autoexec.bat | boot.ini | bootfont.bin | command.com | config.sys | edit.exe | gpxe_all.krn | grldr | himem.exe | kernel.sys | keyb.exe | keyboard.sys | keybrd2.sys | memtest | menu.lst | more.exe | NTDETECT.COM | ntldr | plpbt.bin | \---grub ディレクトリ * 必要ならここから下も * berry.conf bgrescue.conf insert.conf insertfd.conf knoppix.conf knoppix3.conf knoppixs.conf puppy.conf slax.conf sysres.conf
- 【私的】設定ファイル
- fd_hd_menu.lst
- ※
menu.lst
にリネームする
- ※
- boot.ini
- config.sys
- autoexec.bat
- fd_hd_menu.lst
- 上記でダウンロードしたファイルをFDへコピー
-
- gPXE version git -
gpxe_all.krn
- PLoP Boot Manager -
plpbt.bin
- Memtest86+ -
memtest
- gPXE version git -
- Windows(XP,2000)のブート関連ファイル
-
通常はCドライブのルートにある。XP SP2のntldrで2000のブートも可能。
- bootfont.bin
- NTDETECT.COM
- ntldr
- boot.ini のサンプル
echo f| xcopy C:\ntldr A:\ntldr /h/r/y xcopy C:\NTDETECT.COM A:\ /h/r/y xcopy C:\bootfont.bin A:\ /h/r/y xcopy C:\boot.ini A:\ /h/r/y attrib -s -h -r A:\boot.ini
※ boot.iniは上記のサンプルの方がオススメ
- サービスパックから取り出す場合は?
-
ntldr
,ntdetect.com
はWindows XP Service Pack 3 のアップデートプログラムを展開して取り出すことも可能。bootfont.bin
はありませんが(※セットアップ起動ディスクの1枚目に入ってます)選択画面が英語になるだけで使用はできます。- (コマンド プロンプトから)D:\tmp にすべて展開する例(※
/x
オプション)
WindowsXP-KB936929-SP3-x86-JPN.exe /x:D:\tmp
- (コマンド プロンプトから)D:\tmp にすべて展開する例(※
- FreeDOSのファイル
-
- command.com
- edit.exe
- himem.exe
- kernel.sys
- keyb.exe
- keyboard.sys
- keybrd2.sys
- more.exe
FDに空きがあるなら、fdisk.exe, xcopy.exe sys.com なんかも。
スクリーンショット 8
※ 画像の内容が古いです。menu.lst の内容と違いがあります。すみません。
- 【注意】【私的】menu.lst使用時のキーマップ
-
【私的】menu.lst のキーマップ \
バックスラッシュ 半角 |
バーチカル・バー Shift-半角 _
アンダースコア Shift-0
※HD上のファイルが読み込まれた場合は、cキーでコマンドモードから configfile (fd0)/menu.lst
と入力。
「私的」なのでごちゃごちゃすぎだったりします。
configfile /boot/grub/menu.lst
- インストール済み Linux の GRUB
menu.lst
を表示
- インストール済み Linux の GRUB
Network Boot === gPXE kernel
- ネットワークブート
Windows PE 2.0 (from /recovery.iso)
tools WinPE == Windows PE (from WinPEx86.iso)
- HD上の Windows PE isoイメージからブート(※ ファイル名は WinPEx86.iso)
Windows PE 2.0 (chainloader /bootmgr)
tools WinPE == Windows PE / RE (chainloader /bootmgr)
- HD上の Windows PE bootmgr をチェインロード
load FD NTLDR (Windows XP / 2000)
- FD内の ntldr をロード
find and load NTLDR of Windows NT/2K/XP
- HD上の ntldr を検索してロード
FreeDOS === from FD
- FDからFreeDOSをブート
chainload -
- (※BIOSで認識している)CD,HD のMBR/ブートセクタをチェインロード
map (hd0) (hd1) -(fd0)/menu.lst
- HD順序を入れ替える(※ 第2HDから Windows が起動できない場合とか)
boot from HDD ===
Linux Live ==
- HD上にコピーした Linux LiveCD のファイルから起動(※後述)
- load FD NTLDR (Windows XP)
-
Windows XP/2000 緊急起動ディスクとして。
FD内の ntldr をロードして Windows XP/2000 を起動。boot.ini はFD内のもの。
F8キー押しで「拡張オプションメニュー」表示。「セーフモードとコマンドプロンプト」からタスクバーなどを出すには“explorer”を入力。
- load FD FreeDOS
-
FD内のファイル (kernel.sys) から FreeDOS 起動。
- PLoP Boot Manager
- ネットワークブート
- find and load NTLDR of Windows NT/2K/XP
-
HD上の ntldr を検索してロード。boot.ini はHD上のもの。
- find and load CMLDR of Windows NT/2K/XP
-
HD上にインストールされた回復コンソールの起動。
などなど...
設定ファイル 9
- menu.lst
-
こんなかんじで
- 【私的】menu.lst
FDにコピーする際は、
menu.lst
にリネームするべし - boot.ini
-
10行しか書けないようなのでこんなかんじでいいかな。
- 【私的】boot.ini
[boot loader] timeout=100 default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS [operating systems] multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP SP3 from Partition 1" /fastdetect /NoExecute=OptIn multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="XP SP3 from Partition 2" /fastdetect /NoExecute=OptIn multi(0)disk(0)rdisk(0)partition(3)\WINDOWS="XP SP3 from Partition 3" /fastdetect /NoExecute=OptIn multi(0)disk(0)rdisk(1)partition(1)\WINDOWS="XP SP3 from disk2 Partition 1" /fastdetect /NoExecute=OptIn multi(0)disk(0)rdisk(0)partition(1)\WINNT="2000 pro from Partition 1" /fastdetect multi(0)disk(0)rdisk(0)partition(2)\WINNT="2000 pro from Partition 2" /fastdetect multi(0)disk(0)rdisk(0)partition(3)\WINNT="2000 pro from Partition 3" /fastdetect multi(0)disk(0)rdisk(1)partition(1)\WINNT="2000 pro from disk2 Partition 1" /fastdetect
- FreeDOS
-
こんなかんじでいいかな。
- 【私的】config.sys
menucolor=7,0 menudefault=0,100 menu menu FreeDOS menu menu 0 - Clean boot menu 1 - load HYMEM.EXE menu 0?shell=command.com command.com /P 1?DEVICE=A:\HIMEM.EXE 1?DOSDATA=UMB 1?DOS=HIGH,UMB 1?FILES=20 1?BUFFERS=20 1?LASTDRIVE=Z
- 【私的】autoexec.bat
@ECHO OFF SET PATH=A:\ A:\KEYB JP
HDにコピーしたLinux LiveCDのブート
タイトルそのまんまですが、このGRUB for DOSはNTFSも読めるので使える場面があるかもしれないということで。
- 見本(?)ファイル
-
以下はFDに grub ディレクトリを作成、コピーして使用
- berry.conf(Berry Linux 0.90用)
insert.conf(INSERT+ 1.2.18 用)- knoppix3.conf(Knoppix 5.3.1CD 産総研版用)
- knoppixs.conf(Knoppix 5.1.1CD 産総研版用)
- knoppix.conf(Knoppix 5.1.1/CD高速起動版 ライブCDの部屋さん版用)
- puppy.conf(Puppy Linux 日本語版用)
- slax.conf(slax-ja-5.1.8.1-3.iso 用)
- sysres.conf(systemrescuecd-x86-1.0.4, 1.1.x 用)
※ 私が試した限りでは、NTFS上のINSERT+ 1.2.18 は駄目(※所謂「シェルに落ちる」)でした。他はNTFS上のファイルから起動できましたが、FAT32, ext3 の方が確実かもしれません。
※ BG-Rescue Linux 0.9.1 ならHDからではなく、+FD2枚で起動できます。
- bgrescue.conf
- vmlinuz , initrd.img をFDへコピー
CD内のファイルをパーティション直下ではなくサブディレクトリに保存する場合は下記のディレクトリ名にしておけばメニューから選択できます。
- Berry Linux 0.90 -
/BERRY
- Knoppix 5.1.1CD, 5.3.1CD -
/KNOPPIX
- Puppy Linux 日本語版 -
/puppy
- slax-ja-5.1.8.1-3 -
/slax
- systemrescuecd-x86-1.0.4 -
/sysres10
参考リンク
- イメージ作成・書き込みツール
- 仮想FDドライブ - マウント、イメージの展開
- FDイメージの展開
- Universal Extractor | LegRoom.net(UniExtract Binary Archive)
- GRUB for DOS
- FreeDOS
- ネットワークブート
- PLoP Boot Manager
- Windows PE (2.0)
- Linux LiveCD