[用意したもの]
USBメモリ:BUFFALO ClipDrive TypeGP 1GB (RUF2-GP1G-K)
KNOPPIX 4.0.2 CD版
USB-KNOPPIX-20041001R001
SYSLINUX-3.11
(Windows XP)
[手順]
1.パーティション再作成
購入したままの状態では何故かブートしてくれなかった。
一度パーテションを削除してから再度作成した。
(パーティションを作り直したら容量が少し減った)
Windows XP ではUSBメモリのパーティションを変更する事ができなかったので、KNOPPIXで実施した。
作成した結果は以下(デバイスは環境によって異なる)
------------------------------------------------------------------
# fdisk -l /dev/sda
Disk /dev/sda: 1031 MB, 1031798784 bytes
32 heads, 62 sectors/track, 1015 cylinders
Units = cylinders of 1984 * 512 = 1015808 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 1015 1006849 6 FAT16
------------------------------------------------------------------
2.ブートローダの書き込み(ブート可能にする)
以下のどちらかまたは両方
・USB-KNOPPIX-20041001R001 を利用
・SYSLINUX-3.11 を利用
うまくブートしてくれなかったら違う方を試してみる。
2−1.USB-KNOPPIX-20041001R001 でブートローダを書き込み
まずは、FAT16でフォーマット
# mkdosfs -F 16 /dev/sda1
そして、USB-KNOPPIX のインストール
# /cdrom/tools/install
2−2.SYSLINUX-3.11 でブートローダを書き込み
FAT16でフォーマット後、
Windows ならSYSLINUXを展開したディレクトリの下の win32\syslinux.exe を使用して、
....\win32>syslinux -ma f:
(f: はUSBメモリが割り当てられているドライブ。環境によって異なる)
KNOPPIX なら、
# unix/syslinux /dev/sda1
(デバイスは環境によって異なる)
3.ファイルのコピー
KNOPPIX 4.0.2 CD版のCD-ROMまたはISOイメージから必要なファイルをコピー
・boot\isolinux の下のファイル全て(ファイルのみをUSBのルート直下に)
・KNOPPIX をディレクトリごと
そして cfg ファイルの名前を変更
isolinux.cfg → syslinux.cfg
(お好みに応じて syslinux.cfg の内容を変更してあげる)
とりあえずこれで完成。
【2006年09月15日追記】
Windows の syslinux で "-m" オプションを付けるとMBRも書いてくれる事が分かったので、2−2項に"-ma"オプション追加("-a"オプションでアクティブにしてくれる)。
詳細は、SYSLINUXに添付されている syslinux.doc 参照。
バビル2さん、Ryosukeさんアドバイスありがとうございました。


使用しているUSBメモリや環境によって異なるかもしれませんが、私の環境では以下の手順を実施するとboot出来るようになります。
1.USB-KNOPPIX-20041001R001 をCDから立ち上げ
2.fdiskでパーティション再作成(fdisk /dev/sda)
3.FAT16でフォーマット(mkdosfs -F 16 /dev/sda1)
4.USB-KNOPPIX のインストール(/cdrom/tools/install)
5.Windows XP を立ち上げ
6.再度FAT16でフォーマット
7.SYSLINUX書き込み(syslinux f: ← f:は割り当てられているドライブ)
ご使用のLinux環境や具体的な操作(実行したコマンドとそのレスポンス)などが分からないので何とも言えませんが、私の環境では USB-KNOPPIX-20041001R001 で自動認識して問題なく読み書きできております。
もし、USBメモリを正しく認識していないのであれば、Linuxの環境を変更する、他のLinuxで試してみる、マシンを替えてみる、あたりを試してみてはいかがでしょうか。
何故WinXPだけでbootできるようにならないのかはまだ不明です。
ブートセクタあたりを覗けば何か分かるのかもしれませんが、時間も無くて調べていません。
それでは、ご検討を祈ります。
いろいろネットをさがしたのですが、ここのHPの説明が一番わかりやすく素人の
私にも簡単にできました。 最近は2GBのUSBメモリドライブが$25前後で手に
入るようになりました。でも、いくらやすくてもそのドライブがBOOT可能かどうかが
心配ですね!!
私が使ったものは以下です。
USBメモリ:MEMOREX TravelDrive 1GB
KNOPPIX 5.0.1 CD版
SYSLINUX-3.20
私も先日 KNOPPIX 5.0.1 を入れてみましたが、起動が早くて良いですよね。
それにしても、2GB で $25 とは安いですね。
念のためそちらでも試したところ、MEMOREX社のときとは違い、
USB−KNOPPIX-20041001R001が必要で、上記、手順1〜7を
行いました。
いまとなっては確認できませんが、私が推察しますに、
USB DRIVEによっては、MBRがあらかじめ書き込まれているもの
とそうでないもの、があるのではないでしょうか?
MBRがなくても、読み書きはできると思いまして。
それで、MBRありの場合、SYSLINUXだけでうまくいき、
MBRなしの場合、USB−KNOPPIX-20041001R001とSYSLINUX
の両方が必要になるのではないかと。
USB−KNOPPIX-20041001R001のINSTALLスクリプトをのぞいて
みたところ、そのなかにMBRの書き込みのステップがあるような
感じでした。
今回、試してうまくいったのは、
PQI社製 Traveling Disk Series U190 です。
今度機会があったらMBRをダンプして確認してみようと思います。
この記事すごく参考にさせていただいてます
MBRだとしたら、syslinuxについてるmbrをつかって
cat /usr/lib/syslinux/mbr.bin > /dev/sda
なんて感じでいけそうですね
SYSLINUXに添付されている syslinux.doc をちょっと見てみたら、
syslinux -ma c:
でMBR書いてくれると書いてありますね。
って事で確認してみました。
まずは、KNOPPIXが起動可能になっているUSBメモリのMBRを削除
dd if=/dev/zero of=/dev/hda bs=446 count=1
USBメモリから起動しなくなった事を確認後、
DOS窓で
syslinux f:
では起動せず、
syslinux -ma f:
でちゃんと起動するようになる事を確認しました。
バビル2さん、Ryosukeさんアドバイスありがとうございました。