- 2021.4.1 移転しました...
- 
- このページの旧URLは
	- http://www10.plala.or.jp/palm84/fdboot_liveusb3.html
 
 
- このページの旧URLは
	
2008.9.7 作成
2009.7.2 【その1】【その2】を更新したのでそれに合わせて設定ファイルを修正。(※選択OSとか全然変わっていませんが...)
2009.7.4 reload.batについて追記、備考と注意点と関連リンクを整理しました。
- ご案内してみたり...
- 
- その1 === DOS用USBドライバでUSBデバイスを直接認識
- その2 === 分割ファイルをコピーした複数枚FDからブート
- 合体編 === 【その1】と【その2】を合体
	- ↑今ここ
 
- GRUB編 === 【合体編】をFDイメージへ、PLoP Boot Managerを追加
 内容が重複しまくっとります。恐れ入り奉りまする。Palm84的【設定ファイル詰め合わせ】については甚だ不完全なのでコロコロ修正すると思います。 
※あくまで、インストール・ファイル救出時などメンテナンス向けです。通常使用向けでは全くありません。...というか色物ワシ流起動ディスクなのかもしれま...(><)
下記ページの続き、かなーり私的な内容です...2つの起動ディスクの機能を合体!(おおげさな...)させてみました。
尚、チェックは念入りにしてます(つもり)けど、DOSについての知識はかなりあやしいので、内容は全く未保証だと思われます...ご容赦をば。
- USBブート非対応PC用起動ディスク
- 
こんなのありましたー。 - PLoP - Bootmanager - Free Boot Manager, boot different operating systems, cdrom, usb, freeware
- PLoP Boot Manager(USBブート非対応PC用起動ディスク)
 上記のページのやつが使えるなら(※USB CDは非対応)、このページに書いてるやつはいらないです...。orz 
【予備知識?】Linuxの起動について
おおまかにこんなかんじ
- BIOSがブートデバイスを認識
- ブートデバイスからブートローダ(GRUB,LILO,SYSLINUX など)が起動
- ブートローダ(カーネルローダー)が Linuxカーネル と initrd をロードして“小さな”Linux起動。デバイスの初期化・認識
- “大きな”ルートファイルシステム(イメージ)をマウントして“大きな”Linux起動
2,3,4 は別の場所でもイイってとこがミソ。initrd にはUSB対応モジュールなどが大抵含まれているので、“小さな”Linux起動後はUSBデバイスのマウントがほぼ可能になります。でも、最近の Linux はカーネルと initrd がFD1枚に収まるものが少ないのでFD1枚ではチョトツライというわけ。
- initrd とは
- 
initial ramdisk のこと。初期RAMディスク(イメージ)とかミニルートなんて言い方も。 
 Ext-Rootfs-mini-HOWTO: initrd とは?起動時にファ イルとして用意したファイルシステムを ramdisk 上に展開、そこを暫定的な ルートファイルシステムとしてカーネルを立ちあげ、必要な処理をしてから実 際のルートファイルシステムを再マウントする、という 2 段ロケット的なブー トを可能にします。 
これって何?
- 【DOS+RAMドライブ】
	- DOS上で24MBのRAMドライブ作成。RAMドライブへFDからLinuxブートに必要なファイルをコピー。
 
- 【DOS+USBドライバ】
	- USBドライバ組み込み。DOS上でUSBデバイスを直接利用。
 

USBメモリ、USB CDブートに対応していないPCにて、DOS起動FDからブートして、DOS版Linuxローダー(linld.com) からカーネルをロードさせてUSBデバイス上のルートファイルシステム(イメージ)をマウントさせます。
とりあえず下記のものについて確認。
- KNOPPIX Japanese edition産総研版 5.3.1 CD
- Knoppix 5.1.1/CD(高速起動版)(ライブCDの部屋さん版)
- slax-ja-5.1.8.1-3(slax-ja-5.1.8.1-3.iso)
- systemrescuecd-x86-1.0.4.iso
- Berry Linux(バージョンは0.90)
- Puppy Linux 日本語版(バージョンは4.1.2.1)
- INSERT+ 1.2.18 - ライブCDの部屋
■ RAMドライブ【DOS+RAMドライブ】
内容は下記ページと同じものです。というか、このページのやつから【DOS+USBドライバ】を抜いたのがそれだったりします。
RAMディスクドライバで 24 MB のRAMドライブを作成。RAMドライブ上にコピーしたファイルからLinuxをブート

- メリット
	- USBデバイスの検出・認識がまぁ確実と言っていいかと。
- 起動失敗があんまりないかな
 
- デメリット
	- FDの入替・コピーに時間がかなりかかる
- 分割ファイルの作成が面倒
 
※DOS起動後に、FDからRAMドライブへ“分割された”Linuxカーネル(と initrd)をコピーするので、後述の分割ファイルの作成が必要。
■ DOS用USBドライバ組み込み【DOS+USBドライバ】
う〜ん、こっちは対応ドライバがあれば設定しておくということで...【DOS+RAMドライブ】だけでもいいかも
内容は下記ページと同じものです。というか、このページのやつから【DOS+RAMドライブ】を抜いたのがそれだったりします(こればっかし)。

設定ファイルは、NOVAC製USBストレージ用ドライバ、Panasonic製USB CDドライブ用ドライバ、とかで一応書いてみました。
FDは起動ディスク1枚で済むので楽なのですが、きっちり対応してるドライバがなかなかないので難しいところ。あと、ライセンス的に微妙な話もあったり...
- メリット
	- FDはこの1枚のみでよし
- Linux起動前にDOS上で検索できるので設定ファイルを書いておけばかなり楽
 
- デメリット
	- USBドライバの入手が困難?
- 対応が不完全
- 延長ケーブルやハブ経由はだめだったり
- 機種によってはエラーでおかしくなったり
- DOS上でUSBキーボードが使えないかもしれない
- DOS上では全く認識できないUSBデバイスもあったりするし
 
Panasonic製USB光学ドライブならドライバ付属なのでかなり便利です。
- RAMFD.SYS 使用時の問題点
- 
USB側のディレクトリ構成が元のCDと同じではない場合は、FDにtemp.txtを作成しますが、RAMFD.SYS 使用時は書き込みができません。事前にtemp.txtの作成が必要になります。 ※または、【DOS+RAMドライブ】でブート後に、OS選択メニューを x でキャンセル、reload.bat の実行でいけるかも。 
■ GRUB for DOS
※DOS上のRAMドライブ、DOSで認識したUSBデバイスはGRUBでは認識しません。

ナニゲに便利なブートローダ。grub.exe はDOS上から直接起動できます。

HD上にコピーしたイメージからブートするのにも使えるし。Memtest86+ もついでに(GRUBから実行)。
ネットワークブート用起動ディスクとして

gPXE対応汎用カーネルをコピーしておけばいいのです。メジャーどころはほぼ対応してるかと(※Intel e100, Realtek 8139, VIA Rhine, tulip とか一応確認済み)。BIOSで対応していても切替が面倒だったりするのであると便利です。
ダウンロードしておくもの
- FDへ直接書き込む
- 
- FreeDOS起動ディスクイメージ
	- fdboot.img - FreeDOSオフィシャルから
- (FreeDOS | Files)
 
 
- FreeDOS起動ディスクイメージ
	
- イメージからファイルを取り出し
- 
- FDイメージからファイルを取り出すには(イメージをファイルに展開)
- 
下記の Universal Extractor が便利かも。 UniExtract Binary Archive はインストール不要で使えます(日本語表示も可)。 ※注意:対象ファイルのパスに‘デスクトップ’など日本語が含まれるとエラーになるみたいです。 
 FDに一旦書き込むか、展開する、仮想ドライブでマウントするなどしてファイルを取り出しておく - RAMディスクドライバなどを含むディスクイメージ
	- Fedora Core Floppy Install(FDイメージなのでFDに書き込むか展開する)
 
 fc5fd.tar.bz2を作者様への感謝の気持ちを込めてダウンロード。FC5-FloppyInstall-1.imgを展開 - xcopy.exe, edit.exe, keyb.exe, keyboard.sys, keybrd2.sys
	- balder10.img(FDイメージなのでFDに書き込むか展開する)
 
 
- ファイルのダウンロード
- 
- LINLD.COM
- grub.exe
 0.4.3.zip(または 0.4.4.zip)をダウンロード。0.4.4の方が機能が多いのでおすすめですが、サイズがやや大きいので入り切るかどうか。 - 0.4.3 grub.exe - 198 KB
- 0.4.4 grub.exe - 230 KB
 - ネットワークブート用カーネル
- 
- 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)は、185 KBと若干サイズが小さいです。 最新0.9.6 は 204 KB。旧バージョンでは、Choose NIC/ROM typeでgpxe:all-driversを選択、Choose ROM output formatでLILO/GRUB/SYSLINUX loadable Linux kernel format (.lkrn)を選択。- 0.9.7+ - 257 KB
- 0.9.6 - 204 KB
- 0.9.5 - 185 KB
- 0.9.3 - 174 KB
 
- Choose an output format
	
- Memtest86+ (memtest86+-2.01.bin)
- 
【Pre-Compiled Bootable Binary】をダウンロードして展開。ファイル名を memtest にリネーム。 ※旧バージョンは若干サイズが小さいです。 
 
- 設定ファイル詰め合わせ
- 
あくまでPalm84的なので内容の保証は全くありません(汗)。というか、大したものではないので改訂をおすすめ... 展開して内容をそのままFDへコピーするだけ... ※USBドライバを入れるとFDがパンパンになるかも。不要分を削除するか、memtestなど旧バージョンを使うとかしないといけないかもしれません...orz ※ config_filesディレクトリは見本ファイルなので不要です。
起動ディスク作成
- 起動ディスクイメージをFDへ書き込み
- コマンドなど必要ファイルを追加
- 設定ファイルコピー
- FreeDOS起動ディスクをFDへ書き込み
- 
- fdboot.imgをRawWrite for WindowsなどでFDへ書き込み
- 不要ファイル削除 - fdconfig.sys は必ず削除すること
 必要ファイルは下記のみ A:. | command.com | kernel.sys | +---driver | devload.com | himem.exe | shsucdx.com | \---freedos choice.exe- ブートセクタ
- 
MS-DOSフロッピーにファイルをコピーしただけでは、FreeDOSは起動しません。ブートセクタにFreeDOSのブートコードが必要なのです。(mkbt.exe や Linuxの ms-sys コマンドなんかでブートコードのみコピーすることもできたりしますけど) FDへイメージを直接書き込むか、仮想ドライブなどでイメージファイルとして操作するべし。 
 
- FC5-FloppyInstall-1.imgからファイルをコピー
- 
イメージから展開したファイルをコピーします - 上記の起動ディスクルートへ
	- appld.bat
- HOME.DAT
- LDFD.ZIP
- license.txt
- RDRIVE.BAT
- ReadMe.txt
- TDSK.EXE
- TURBO.DAT
- TURBODAT.exe
- UNZIP.EXE
- version.txt
 
 
- 上記の起動ディスクルートへ
	
- balder10.imgからファイルをコピー
- 
イメージから展開したファイルをコピーします - xcopy.exe,- edit.exeを A:\freedos へ
- keyb.exe,- keyboard.sys,- keybrd2.sysをA:\driverへ
 
- LINLD.COM, grub.exe, gPXEカーネル, memtest
- 
- ダウンロードしておいたLINLD.COMを A:\freedos に
- grub.exeをルートへ
- gpxe-git-gpxe.lkrnを- gpxe_all.krnにリネームしてルートへ
- memtestをルートへ
 
- ダウンロードしておいた
- ファイル一覧
- 
A:. | appld.bat | command.com | gpxe_all.krn | grub.exe | HOME.DAT | kernel.sys | LDFD.ZIP | license.txt | memtest | RDRIVE.BAT | ReadMe.txt | TDSK.EXE | TURBO.DAT | TURBODAT.exe | UNZIP.EXE | version.txt | +---driver | devload.com | himem.exe | keyb.exe | keyboard.sys | keybrd2.sys | shsucdx.com | \---freedos choice.exe edit.exe LINLD.COM xcopy.exe
- 設定ファイルを詰め合わせをコピー
- 
fdboot_liveusb3_filesディレクトリ内の内容をFDへすべてコピー
- ■【DOS+USBドライバ】USBドライバの組み込み
- 
下記ページは、このページのやつから【DOS+RAMドライブ】がない分だったりします。【DOS+USBドライバ】の内容は同じだったりしますので詳しくはそちらで。 ※【DOS+RAMドライブ】 では不要。 下記のもので一応(?)設定を書いてみた。 A:\driverにコピーUSB CD/DVDドライブ用 - Panasonic USB CD/DVDドライブ用
	- RAMFD.SYS- USB FDドライブでのブート時に必要なRAMディスクドライバ
- Usbaspi.sys- ASPIマネージャ?
- USBCD.SYS- USB CDドライバ
 
 USBメモリ用は下記のどちらかで。 - Iomega製 - USBメモリ・USB HD用(※Norton Ghost 2003 にも付属)
	- aspiehci.sys- USB 2.0
- aspiuhci.sys- USB 1.1(UHCI)
- aspiohci.sys- USB 1.1(OHCI)
- guest.exe- ディスクドライバ(ドライブレター割当)
 
 - NOVAC USBメモリ/USB HD用(※NOVAC HDケースに付属)
	- Usbaspi.sys- USB 1.1専用 ASPIマネージャ?
- di1000dd.sys- ディスクドライバ(ドライブレター割当)
 
 ※NOVAC分は A:\driver\novacにコピー。ドライバが入りきらない場合は、設定ファイル詰め合わせの config_filesディレクトリ(約 66KB)を削除しませう。
- Panasonic USB CD/DVDドライブ用
	
分割ファイル作成【DOS+RAMドライブ】
※INSERT+ 1.2.18 と BG-Rescue Linux は分割不要
- Linuxカーネルと初期RAMディスクイメージをzipで圧縮
	- KNOPPIX 5.3.1CD では(FDx4枚)、\boot\isolinuxのlinuxとminirt.gz
- Knoppix 5.1.1 CD では(FDx3枚)、\boot\isolinuxのlinuxとminirt.gz
- slax-ja-5.1.8.1-3 では(FDx3枚)、\bootのvmlinuzとinitrd.gz
- systemrescuecd-x86-1.0.4(FDx8枚+) では、\isolinuxのrescuecd(※など)とinitram.igz
- Berry Linux 0.90 では(FDx2枚)、\Setupの vmlinuzとinitrd.gz
- Puppy Linux 4.1.2.1 では(FDx2枚)、vmlinuzとinitrd.gz
 
- KNOPPIX 5.3.1CD では(FDx4枚)、
- FDサイズに分割
- ファイル名は順番にldfdraa,ldfdrab,ldfdrac,...にする
- それぞれをFDへそのままコピー
- 最終のFDに空ファイル end.txt 作成
- Linux上で実行
- 
※KNOPPIX 5.3.1CD の例 $ cp /cdrom/boot/isolinux/linux . $ cp /cdrom/boot/isolinux/minirt.gz . $ zip ldfd.zip linux minirt.gz ldfd.zipが作成されたのを確認して分割ファイル作成(※531通常版は4個、Remastered CD だと3個のファイル) $ split --verbose -b 1423k ldfd.zip ldfdr creating file `ldfdraa' creating file `ldfdrab' creating file `ldfdrac' 
- Windows XP上で実行
- 
※KNOPPIX 5.3.1CD の例 - CDの\boot\isolinuxフォルダを開く
- linuxとminirt.gzとHD上にコピー
- linuxとminirt.gzを選択
- 右クリック→送る→圧縮(zip 形式)フォルダ
- 圧縮・解凍ソフトでzipファイルを開き、1423(1423.5)KBで分割
- ファイル名を順に、ldfdraa,ldfdrab,ldfdrac,...にする
 
- CDの
■ 分割不要な場合
カーネルと初期RAMディスク(initrd)がそれぞれFDに収まるサイズなら分割不要。
- INSERT+ 1.2.18
- 
【DOS+RAMドライブ】では、isolinuxディレクトリ内のvmlinuzとminiroot.gzをFDへそれぞれコピー 【DOS+USBドライバ】ではUSBメモリから直接カーネルをロード 
- BG-Rescue Linux 0.9.1
- 
【DOS+RAMドライブ】では、vmlinuz と initrd.img をFDへそれぞれコピー 【DOS+USBドライバ】ではUSBメモリから直接カーネルをロード 
スクリーンショット
【DOS+RAMドライブ】でのブートの流れ
※【DOS+USBドライバ】の方は、スクリーンショット -【その1】とほぼ同じです。

※0 が【DOS+RAMドライブ】です。
- 【DOS+USBドライバ】では...
- 
USBドライブが正常に認識(ドライブレター割当)されれば、カーネルとinitrdは自動検索するので、ディレクトリの指定など(※もちろんFDからファイルのコピーも)不要。 
RAMドライブが D: に作成されました。

OS選択メニュー表示。番号を入力してEnter。

FD入替指示のメッセージ。順番通りゆっくりと入換えてEnter。

end.txt のある最終FDまで繰り返しコピーを実行。

ディレクトリの指定。CDの内容そのままの場合は default の【1】(※10秒放置で1が選択される)

ブートオプション設定メニュー。USB CDとUSBメモリとでオプション指定がやや違う場合があります。

SLAXがブートしましたー。

- ※ルートイメージをサブディレクトリに保存している場合
- 
SLAXでは from=/dev/sda1/slaxな形式でデバイス(ファイル)名の指定が必須らしい(?)ので、。slax.bat内の/dev/sda1を環境に合わせて/dev/sda2,/dev/sdb1,dev/sdc1などに修正する必要があるかもしれません※ from=slax/とサブディレクトリ名の指定だけでいけました...
GRUB for DOS
ネットワークブート、Memtestや、イメージをHDに保存して起動する際などに使う。

起動の流れ
- 【DOS+RAMドライブ】
- 
※SLAXの場合 - A:\autoexec.bat
	- A:\bin\auto_ram.batへ
 
- A:\bin\auto_ram.bat
	- A:\TURBODAT.EXE- RAMディスクドライバをロード
- A:\RDRIVE.BAT- RAMドライブへ移動
- DOSコマンドなどをRAMドライブへコピー
-  set path=%ramdrv%\bin;%ramdrv%\freedos
-  keyb.exe- キーボード設定
-  start.batへ
 
- %ramdrv%\bin\start.bat (A:\bin\start.bat)
	- OS選択メニュー表示 (%ramdrv%\menu.txt)
- 選択OSのブート設定ファイルをRAMドライブへコピー
- copyb.batへ
 
- OS選択メニュー表示 (
- %ramdrv%\bin\copyb.bat (A:\bin\copyb.bat)
	- FD入替で分割カーネルをRAMドライブへコピー
- appld.batをコールしてファイル結合
- 結合ZIPファイルを展開
- slax.batへ
 
- %ramdrv%\bin\slax.bat (A:\bin\slax.bat)
	- SLAXディレクトリの選択表示
		- 10秒表示で[【default】自動選択(※ここで間違った場合は、xでキャンセルして、slax実行)
 
- SLAXブートオプションメニュー表示
- 選択のオプションファイルの設定でブート
 
- SLAXディレクトリの選択表示
		
 
- A:\autoexec.bat
	
- 【DOS+USBドライバ】
- 
※SLAXの場合 - A:\autoexec.bat
	- set path=a:\bin_usb;a:\freedos
- ※RAMFD.SYSを選択した場合は、差換えのための待機メッセージを表示、ここでASPIマネージャをロード
- ドライブレター割り当て
- start.batへ
 
- A:\bin_usb\start.bat
	- OS選択メニュー表示(A:\menu_usb.txt)
- A:\bin_usb\slax.batへ
 
- OS選択メニュー表示(
- A:\bin_usb\slax.bat
	- ルートイメージの場所とカーネルを検索
- カーネルのディレクトリへ移動
- SLAXブートオプションメニュー 表示
		- キャンセルすると start.batへ戻る
 
- キャンセルすると 
 
 
- A:\autoexec.bat
	
設定ファイル【DOS+RAMドライブ】
【DOS+USBドライバ】でのDOS用USBドライバについては、Panasonic + NOVAC のものとなってます。
- A:\config.sys
!switches=/f /n menucolor=0,3 REM menudefault=0,10 menu menu =========================================== menu FreeDOS USB support -- LiveUSB boot menu =========================================== menu menu 0 - DOS+RAMドライブ TURBO.DAT menu 1 - USB-Flash - 2.0 EHCI menu 2 - USB-Flash - 1.1 menu 3 - USB-CD - 2.0 EHCI menu 4 - USB-CD - 1.1 menu 5 - USB-Flash - 2.0 EHCI + RAMFD.SYS menu 6 - USB-Flash - 1.1 + RAMFD.SYS menu 7 - USB-CD - 2.0 EHCI + RAMFD.SYS menu 8 - USB-CD - 1.1 + RAMFD.SYS menu 9 - == GRUB for DOS or FreeDOS == menu menu =========================================== menu 9?shell=command.com command.com /P REM 012345678?shell=command.com /e:1024 /p 012345678?DEVICE=a:\driver\himem.exe 5678?DEVICE=A:\driver\RAMFD.SYS REM ################################################################ REM === USB Flash === Panasonic + novac === REM ################################################################ REM ===== Panasonic USB ASPI driver ( USB 2.0 EHCI only ) 1?DEVICE=A:\driver\USBASPI.SYS /E 5?DEVICE=A:\driver\USBASPI.SYS /W /E REM ===== Novac USB storage driver (USB-Flash 2.0) 15?DEVICE=A:\driver\novac\DI1000DD.SYS REM ##################################### REM ===== Novac USB ASPI driver ( USB 1.1 only ) 2?DEVICE=A:\driver\novac\USBASPI.SYS 6?DEVICE=A:\driver\novac\USBASPI.SYS /W REM ===== Novac USB storage driver (USB-Flash 1.1) 26?DEVICE=A:\driver\novac\DI1000DD.SYS REM ################################################################ REM ################################################################ REM === USB CD === REM ################################################################ REM ===== Panasonic USB ASPI driver ( USB 2.0 EHCI only ) 3?DEVICE=A:\driver\USBASPI.SYS /E 7?DEVICE=A:\driver\USBASPI.SYS /W /E REM ===== Panasonic USB ASPI driver ( USB-CD driver ) 37?DEVICE=A:\driver\USBCD.SYS /D:USBCD001 REM ##################################### REM ===== Panasonic driver ( USB 1.1 only ) 4?DEVICE=A:\driver\USBASPI.SYS 8?DEVICE=A:\driver\USBASPI.SYS /W REM ===== Panasonic USB ASPI driver ( USB-CD driver ) 48?DEVICE=A:\driver\USBCD.SYS /D:USBCD001 REM ################################################################ 012345678?DOSDATA=UMB 012345678?DOS=HIGH,UMB !FILES=20 !BUFFERS=20 !LASTDRIVE=Z 0?stacks=9,256 0?DEVICE=A:\TDSK.EXE 24576
- A:\autoexec.bat
@ECHO OFF if %CONFIG% == 9 goto FREEDOS if %CONFIG% == 0 goto load_ram set path=a:\bin_usb;a:\freedos if %CONFIG% == 1 goto usbfm if %CONFIG% == 2 goto usbfm if %CONFIG% == 5 goto usbfm if %CONFIG% == 6 goto usbfm if %CONFIG% == 3 goto usbcd if %CONFIG% == 4 goto usbcd if %CONFIG% == 7 goto usbcd if %CONFIG% == 8 goto usbcd REM ################################################################ REM === USB Flash === Panasonic + novac === REM ################################################################ :usbfm pause echo. goto menu REM ################################################################ REM ################################################################ REM === USB CD REM ################################################################ :usbcd a:\driver\shsucdx /D:USBCD001 echo. pause goto menu REM ################################################################ :menu a:\driver\keyb jp start.bat goto END :load_ram a:\bin\auto_ram.bat goto END :FREEDOS REM ######################## FREEDOS ######################### cls echo ============================================================ echo ================ FreeDOS boot options ==================== echo ============================================================ echo. echo ==== 1. GRUB for DOS -- grub.exe ==== echo. echo ==== 2. FreeDOS -- load HIMEM,KEYB ==== echo. echo ==== 3. FreeDOS -- clean boot ==== echo. echo ============================================================ echo. a:\freedos\choice.exe /C:1234X Type Number: if ERRORLEVEL 4 GOTO END if ERRORLEVEL 3 GOTO END if ERRORLEVEL 2 GOTO HIMEM if ERRORLEVEL 1 GOTO GRUB :HIMEM a:\driver\devload.com a:\driver\himem.exe set path=a:\bin_usb;a:\freedos a:\driver\keyb jp goto END :GRUB a:\grub.exe goto END :END
- 【DOS+USBドライバ】では...
- 
【DOS+USBドライバ】では、この後 A:\bin_usb\start.batでOS選択メニュー表示
- 【DOS+RAMドライブ】A:\bin\auto_ram.bat
@ECHO OFF if %CONFIG% == 9 goto END A:\TURBODAT.EXE copy TURBO.DAT RDRIVE.BAT call RDRIVE.BAT copy nul ramdrive.txt for %%y in ( C D E F G H I J ) do if exist %%y:\ramdrive.txt set ramdrv=%%y: copy a:\UNZIP.EXE copy a:\APPLD.BAT copy a:\LDFD*.* copy a:\menu.txt copy a:\reload.bat a:\freedos\xcopy.exe /i /s a:\bin %ramdrv%\bin a:\freedos\xcopy.exe /i /s a:\freedos %ramdrv%\freedos if exist a:\options.txt copy a:\options.txt set path=%ramdrv%\bin;%ramdrv%\freedos a:\driver\keyb jp :END start.bat
■ choice.exeでメニュー表示
- 【DOS+USBドライバ】
- 【DOS+RAMドライブ】%ramdrv%\bin\start.bat(A:\bin\start.bat)
@echo off cls type %ramdrive%\menu.txt choice /C:123456789X boot: IF ERRORLEVEL=10 GOTO END GOTO %ERRORLEVEL% :1 xcopy /i /s a:\knop53 %ramdrv%\knop53 set boot=knoppix3 cls copyb.bat GOTO END :2 xcopy /i /s a:\knop5 %ramdrv%\knop5 set boot=knoppix cls copyb.bat GOTO END :3 xcopy /i /s a:\slax5 %ramdrv%\slax5 set boot=slax cls copyb.bat GOTO END :4 xcopy /i /s a:\sysres1 %ramdrv%\sysres1 set boot=sysres cls copyb.bat GOTO END :5 xcopy /i /s a:\berry90 %ramdrv%\berry90 set boot=berry cls copyb.bat GOTO END :6 xcopy /i /s a:\puppy400 %ramdrv%\puppy400 set boot=puppy cls copyb.bat GOTO END :7 xcopy /i /s a:\inse12 %ramdrv%\inse12 set boot=insert cls insert.bat GOTO END :8 xcopy /i /s a:\bgrescue %ramdrv%\bgrescue set boot=bgrescue cls bgrescue.bat GOTO END :9 if not exist a:\grub.exe goto nogrub a: a:\grub.exe goto END :nogrub echo. echo A:\GRUB.EXE not found !!! echo Insert boot floppy in drive A: ... and press a key pause >nul goto 9 :END cls
- 【DOS+RAMドライブ】%ramdrv%\menu.txt(A:\menu.txt)
      ================================================================
                          Linux LiveCD Boot Menu
      ================================================================
                     Type one of the following numbers:
               1 :     Knoppix 5.3.1 CD - SSK  --- from Floppy +4
               2 :     Knoppix 5.1.1 CD - LCR  --- from Floppy +3
               3 :     SLAX Live CD 5.1.8.1-3  --- from Floppy +3
               4 :     SystemRescueCd 1.0.4    --- from Floppy +8?
               5 :     Berry Linux 0.90        --- from Floppy +2
               6 :     Puppy Linux 4.00 JP     --- from Floppy +3
               7 :     INSERT+ 1.2.18          --- from Floppy +2
               8 :     BG-Rescue Linux 0.9.1   --- from Floppy +2
               9 :     GRUB for DOS
- 【DOS+RAMドライブ】%ramdrv%\bin\copyb.bat(A:\bin\copyb.bat-fedora.batを編集)
@echo off REM Copy all files to RAM Drive :docopy if exist A:\end.txt goto done pause Insert next floppy and press a key... copy a:\LDFD*.* goto docopy :done REM Now reconstruct the zipfile for %%f in (LDFDR*.*) do call appld.bat %%f del ldfdr*.* unzip ldfd GOTO %boot% :puppy puppy.bat GOTO END :berry berry.bat GOTO END :sysres sysres.bat GOTO END :slax slax.bat GOTO END :knoppix knoppix.bat GOTO END :knoppix3 knoppix3.bat GOTO END :END
- 【DOS+RAMドライブ】%ramdrv%\appld.bat(A:\appld.bat- 元のまま)
copy ldfd.zip /b + %1 /b ldfd.tmp copy ldfd.tmp ldfd.zip del ldfd.tmp del %1
- 【DOS+RAMドライブ】%ramdrv%\bin\knoppix3.bat(A:\bin\knoppix3.bat)
@echo off echo. echo =================================================================== echo Type Number echo. echo 1 : knoppix_dir=/KNOPPIX/KNOPPIX/ *** default *** echo. echo 2 : knoppix_dir=/knoppix3/KNOPPIX/ *** rename *** echo. echo =================================================================== choice /C:12X /T:1,10 Type Number: REM choice /C:12X Type Number: if ERRORLEVEL 3 GOTO END if ERRORLEVEL 2 GOTO RENAME if ERRORLEVEL 1 GOTO DEFAULT :DEFAULT set param1= GOTO MENU :RENAME set param1=knoppix_dir=knoppix3 knoppix_name=KNOPPIX GOTO MENU :MENU cls set menudir=%ramdrv%\knop53 type %menudir%\menu.txt choice /C:12345678X boot: IF ERRORLEVEL=9 GOTO END GOTO %ERRORLEVEL% :1 set opt=default set vga=791 if not "%param1%"=="" GOTO TEMP GOTO LINLD :2 set opt=vesa set vga=normal if not "%param1%"=="" GOTO TEMP GOTO LINLD :3 set opt=text set vga=normal if not "%param1%"=="" GOTO TEMP GOTO LINLD :4 set opt=fb800 set vga=788 if not "%param1%"=="" GOTO TEMP GOTO LINLD :5 set opt=fb1024 set vga=791 if not "%param1%"=="" GOTO TEMP GOTO LINLD :6 set opt=fb1280 set vga=794 if not "%param1%"=="" GOTO TEMP GOTO LINLD :7 set opt=failsafe set vga=normal if not "%param1%"=="" GOTO TEMP GOTO LINLD :8 set opt=test set vga=normal if not "%param1%"=="" GOTO TEMP GOTO LINLD :LINLD linld image=linux initrd=minirt.gz vga=%vga% cl=@%menudir%\%opt%.txt GOTO END :TEMP copy %menudir%\%opt%.txt %menudir%\temp.txt echo %param1%>>%menudir%\temp.txt linld image=linux initrd=minirt.gz vga=%vga% cl=@%menudir%\temp.txt GOTO END :END
- %ramdrv%\knop53\menu.txt(- A:\knop53\menu.txt)
     ===================================================================
                    Knoppix Live CD SSK 5.3.1 Boot Menu
     ===================================================================
                     Type one of the following numbers:
               1 :     default
               2 :     vesa
               3 :     text mode
               4 :     fb 800x600
               5 :     fb 1024x768
               6 :     fb 1280x1024
               7 :     failsafe
               8 :     test (desktop=fluxbox)
               X :      * cancel * 
- %ramdrv%\knop53\default.txt(- A:\knop53\default.txt)
ramdisk_size=100000 init=/etc/init lang=ja apm=power-off nomce highres=off loglevel=0 libata.atapi_enabled=1 quiet SELINUX_INIT=NO nmi_watchdog=0 BOOT_IMAGE=knoppix
ファイル一覧
A:. | appld.bat ** ファイル結合バッチ ** | autoexec.bat | command.com | config.sys | gpxe_all.krn | grub.exe | HOME.DAT | kernel.sys | LDFD.ZIP | license.txt | memtest | menu.lst ** GRUB for DOS ブート設定ファイル ** | menu.txt ** OS選択 ブートメニュー (【DOS+RAMドライブ】)** | menu_usb.txt ** OS選択 ブートメニュー (【DOS+USBドライバ】)** | RDRIVE.BAT | ReadMe.txt | reload.bat ** 【DOS+RAMドライブ】で起動後にUSBドライバをロード ** | TDSK.EXE | TURBO.DAT | TURBODAT.exe | UNZIP.EXE | version.txt | +---berry90 ** Berry Linux ブートオプションファイル ** | default.txt | default2.txt | dynabook.txt | expert.txt | menu.txt ** Berry Linux ブートメニュー ** | onram.txt | safe.txt | vaio.txt | vesa.txt | vesa2.txt | +---bgrescue | menu.txt ** BG-Rescue Linux ブートメニュー ** | menu_usb.txt ** BG-Rescue Linux ブートメニュー (【DOS+USBドライバ】) ** | +---bin ** 【DOS+RAMドライブ】用バッチ ** | auto_ram.bat | berry.bat | bgrescue.bat | copyb.bat ** 分割FDコピー バッチ ** | insert.bat | knoppix3.bat | knoppix.bat | other.bat | puppy.bat | slax.bat | start.bat | sysres.bat | +---bin_usb ** 【DOS+USBドライバ】用バッチ ** | berry.bat | bgrescue.bat | insert.bat | knoppix3.bat | knoppix.bat | other.bat | puppy.bat | slax.bat | start.bat | sysres.bat | +---driver | | devload.com ** DOSブート後にドライバロード ** | | himem.exe | | keyb.exe ** キーボードドライバ ** | | keyboard.sys ** キーボードドライバ ** | | keybrd2.sys ** キーボードドライバ ** | | RAMFD.SYS ** DOS USBドライバ ** | | shsucdx.com ** CD-ROM 用プログラム ** | | Usbaspi.sys ** DOS USBドライバ ** | | USBCD.SYS ** DOS USBドライバ ** | | | \---novac | di1000dd.sys ** DOS USBドライバ ** | usbaspi.sys ** DOS USBドライバ ** | +---freedos ** FreeDOSコマンド ** | choice.exe | edit.exe | LINLD.COM | xcopy.exe | +---get_iso ** isoイメージのダウンロードURL ** | download.txt | +---grub ** HDDブート用GRUB設定ファイル ** | berry.conf | insert.conf | insertfd.conf | knoppix.conf | knoppix3.conf | puppy.conf | slax.conf | sysres.conf | +---inse12 ** INSERT ブートオプションファイル ** | default.txt | expert.txt | failsafe.txt | fb1024.txt | fb1280.txt | fb800.txt | menu.txt ** INSERT ブートメニュー ** | menu_usb.txt ** INSERT ブートメニュー (【DOS+USBドライバ】) ** | text.txt | vesa.txt | +---knop5 ** KNOPPIX LCR 5.1.1 ブートオプションファイル ** | default.txt | failsafe.txt | fb1024.txt | fb1280.txt | fb800.txt | menu.txt ** KNOPPIX LCR 5.1.1ブートメニュー ** | test.txt | text.txt | vesa.txt | +---knop53 ** KNOPPIX 5.3.1 ブートオプションファイル ** | default.txt | failsafe.txt | fb1024.txt | fb1280.txt | fb800.txt | menu.txt ** KNOPPIX 5.3.1ブートメニュー ** | test.txt | text.txt | vesa.txt | +---puppy400 | menu.txt ** Puppy ブートメニュー ** | +---slax5 ** SLAX ブートオプションファイル ** | default.txt | menu.txt ** SLAXブートメニュー ** | safe.txt | vesa.txt | xconf.txt | \---sysres1 menu.txt ** SystemRescueCD ブートメニュー **
Linuxローダ
LINLD.COM については下記ページにて。
別の Linux を起動
※いまいちかもしれない...
- options.txtを作成(※必要な場合)
- 
対象アイテムの syslinux.cfg,isolinux.cfg,menu.lstなどを参照してブートオプション(カーネルパラメータ)を書いた options.txt を(※必要なら)作成する。※Linuxインストーラなど不要な場合もあります。 - ※linld コマンドの書式
 linld image=filename initrd=filename vga=normal cl=@A:\options.txt 書式はこんなかんじなので、vgaオプションと、initrdファイル名を除いたファイルを作成。 - 対象アイテムの isolinux.cfg を参照してみる(※これはKNOPPIX 5.3.1の例)
 LABEL knoppix KERNEL linux APPEND ramdisk_size=100000 init=/etc/init lang=ja apm=power-off vga=791 initrd=minirt.gz nomce highres=off loglevel=0 libata.atapi_enabled=1 quiet SELINUX_INIT=NO nmi_watchdog=0 BOOT_IMAGE=knoppix - options.txt の一例
- 
APPEND行の指定をコピー、initrd=xxx と vga=xxx を消すだけ。 ramdisk_size=100000 init=/etc/init lang=ja apm=power-off nomce highres=off loglevel=0 libata.atapi_enabled=1 quiet SELINUX_INIT=NO nmi_watchdog=0 BOOT_IMAGE=knoppix 
 
■ from 【DOS+RAMドライブ】
- 分割FD準備
- (※必要なら)options.txt作成、起動FD(※起動時にRamdriveへコピーされる)、または最終FDへ保存(上記ZIPに入れてもいい)
- OS選択メニューは x でキャンセル
- other.bat 実行
- FDを入換えてコピー
- options.txt の場所を選択
※カーネルと initrd は、ありがちな名前で検索します。ありがちじゃないとエラーになります。

[none]以外を選択すると options.txt の存在確認します。ない場合はエラーを表示してやり直しとなります。
追加したいオプション(パラメータ)があれば入力。なければそのままEnter。

- other.bat(.txt)
■ from 【DOS+USBドライバ】
- (※必要なら)options.txt作成、USBメモリ上カーネルのあるディレクトリ、またはFDにコピー
- OS選択メニューは x でキャンセル
- other.bat 実行
- ドライブレターを入力
	- Cとか- dとか
 
- ディレクトリ名を入力
	- knoppixとか- boot\isolinuxとか
 
- options.txt の場所を選択
※カーネルと initrd は、ありがちな名前で検索します。ありがちじゃないとエラーになります。

ディレクトリ・ファイル名など検索して確認するので、ない場合はエラー表示してやり直しとなります。
[none]以外を選択すると options.txt の存在確認します。ない場合はエラーを表示してやり直しとなります。
追加したいオプション(パラメータ)があれば入力。なければそのままEnter。

【※注意】options.txt  があり、かつ追加オプションを指定した場合、 options.txt のコピーに追記されます。この場合の options.txt の場所について、RAMFD.SYS 使用時は Floppy がだめ、USB CDでは  Same ..  がだめ
- other.bat(.txt)
■ 備考
- LiveCDのファイルを変更している場合
- 
サブディレクトリにまとめてるとか、マルチブートの為ディレクトリ名を変えてるとか。下記はデフォルト以外の指定対象 【DOS+USBドライバ】では自動で検索します。【DOS+RAMドライブ】ではLINLD実行前に選択画面が表示されます。 - KNOPPIX 5.3.1
	- knoppix3\KNOPPIX
 
- SLAX 5.1.8.1-3
	- slax\livecd.sgn
- myslax\livecd.sgn
- slax5\livecd.sgn
 
- SystemRescueCd 1.0.4
	- sysres10\sysrcd.dat
 
- Berry Linux 0.90
	- berry90\BERRY
 
- Puppy Linux 4.1.2.1
	- 元々サブディレクトリも検索してくれるらしい?(/puppyなんとかな名前にしとけばいいのかな?)
 
 【※注意】【DOS+USBドライバ】では、Aドライブにオプションを追記した temp.txtを書き込みます。KNOPPIX5.3.1なら コピーされたオプションファイルA:\knop53\temp.txtにknoppix_dir=knoppix3を追記します。RAMFD.SYS使用時はAドライブは書き込み不可となるので事前に オプションを追記した temp.txtをFDへ作成する必要があります。書き込みエラーとなった場合でもtemp.txtがあればそのまま使用されます。ややこしいかなぁ。。【DOS+RAMドライブ】から reload.batを実行の方がいいかなぁ。【DOS+RAMドライブ】ではRAMドライブ上なので問題ありません( temp.txtは消えちゃうけど)。
- KNOPPIX 5.3.1
	
■ 注意点
【DOS+USBドライバ】でのUSBドライバ使用時の注意点などは下記にて。
- 故障デバイスがあると...
- 
(一概に断言はできませんが)故障あるいは不良デバイスがあるとBIOSで無効にしないと初期化中に止まってしまうことがあります。 
- なるべく新しいフロッピーで
- 
古いものでは読み込みでエラーが出たり、エラー発生後にファイルが壊れたりすることも。 - フロッピーを確認しませう!
- 
いぁ、新品でもおかしい時ありますから。 Windows上では不良セクタがあっても使えてしまったりしますから、 formatコマンド打つべし。format a: 1,457,664 バイト : 全ディスク領域 1,024 バイト : 不良セクタ 1,456,640 バイト : 使用可能ディスク領域不良セクタがないか、「パオーパオーン」な雄叫び(笑)が1,2回じゃなく数十回も発生しないかとか確認しませう。 
 
- Linux LiveCD側の注意点?
- 
- 「Linux起動後に」USBデバイスが認識されない
- 
いわゆる「シェルに落ちる〜」ってやつですね。「 /KNOPPIX/KNOPPIXが見つからないYO!」です。 Linux起動後の初期化中にUSBデバイスが認識されない場合は、 Linux起動直後、または「Checkin for USB...」などのメッセージが表示されている時にUSBポートを挿し直すと認識されることがあります。 USB CDだとあんまり問題ないのになぁ。(あくまでウチでは) 
- シャットダウン
- 
- SLAXでは、acpi=offを指定してるので自動で電源は切れない。「Power Down」などのメッセージで止まったら電源ボタンを押す
- SystemRescueCdでもそうかも。
- 他のLinuxでも acpi=offやnoacpi“とか”を指定しないと起動できないことがあるかも。
 
- SLAXでは、
- USB FDドライブ
- 
USB FDドライブでブートする際は、カーネルとinitrdロード後にUSBポートを抜いてしまった方がいいかも。デバイスの検出で時間がかかるので。 
 
■ reload.bat
DOS起動時にUSBドライバの読み込みエラーとなる場合などに試してみる価値があるかもしれませぬ(ないかもしれませぬ。)私の環境ではこちらでやっとこさ認識したことがありますです。
FreeDOS起動後にデバイスドライバのロードが可能な devload.com を使いUSBドライバを読み込みます。
起動時に選択した環境によって若干違いがありますです。
- 【DOS+USBドライバ】から実行
- 
下記【その1】編と同様。 
- 【DOS+RAMドライブ】から実行
- 
- USB FDドライブ使用時でもRAMFD.SYSが不要になり、USBドライバ読み込み前に取り外しが可能に。
- RAMFD.SYS使用時はAドライブが書き込み不可になるけど、これのRAMドライブはおk
	- USB側のディレクトリ変更してる場合とか、Aドライブにtemp.txtの作成が必要になるし
 
 実行時の流れはこんなかんじ。 - 【DOS+RAMドライブ】のOS選択メニュー画面を【x】でキャンセル
- コマンドラインからreload.batを実行
- ドライバなど必要なファイルがRAMドライブへコピーされる
- 【DOS+USBドライバ】のOS選択メニューに切り替わる(環境がRAMドライブ上の【DOS+USBドライバ】に変更される)
- 番号を選択すると選択OSのオプションファイルがRAMドライブへコピーされる
- ドライバを選択
- ドライバの読み込み、USBデバイスの検出とドライブレター割り当て
- 選択OSのメニュー画面が表示される
 OS選択メニュー画面でキャンセルして、コマンドラインから reload.bat を実行  【DOS+USBドライバ】の必要ファイルがRAMドライブへコピーされますー  環境がRAMドライブ上の【DOS+USBドライバ】に変更されて、【DOS+USBドライバ】のメニューになりますた。  KNOPPIXの【1】を入力すると、オプションファイルがRAMドライブへコピーされますー  ドライバを選択しませう  USB FD ドライブは外した方が安全だと思います(?)ので警告画面など出してみたり。ここで外せます。  ドライブレターが、キター!です。(※これはIomegaドライバの例)  【DOS+USBドライバ】用 knoppix3.batが実行されてメニューが出ますた! もし、ドライブレター来ないYO!な時は、「同じKNOPPIXなら」ですが、【x】でキャンセルしてもいっかい reload.batの実行でキター!になることもあるかもしれません(私はあったけどないかもしれません...)。
■ 関連リンク
- Linux LiveCD
- FreeDOS
- LINLD.COM
- GRUB for DOS
