
Ubuntu日本語フォーラム

ログインしていません。
ブータブルUSBメモリを作ろうと、fdiskとmkdosfsを使ってUSBメモリをフォーマットし、SYSLINUXをインストールしました。
再起動後、BIOSの起動デバイスに設定したUSBメモリが表示されていたので選択したのですが、Boot Errorとなり起動できませんでした。
使用しているPC(ET1710-02j)はUSB-ZIP、USB-HDDの2タイプのUSBデバイスに対応しており、今回はUSB-ZIP0と認識されていました。
しかし、Windows上でフォーマット/インストールをすると問題なく起動します。しかも、BIOSでの認識はUSB-HDD0になっています。
Windows上ではフォーマットのみで、パーティション構成はいじっていません。(fdiskでの構成のまま)
MBRは正常なのに、mkdosfsではZIP扱いでエラー、format.exeではHDD扱いで起動。SYSLINUXをインストールせず、素の状態のFAT32でも同じでした。
そこで対象パーティションの先頭512バイト(PBR)について調べていくと、
オフセット40hにあるメディアタイプの値がmkdosfsでは00h、format.exeでは80hになっていました。
バイナリエディタで無理やり80hにして再起動してみるとHDDとして認識され起動もしました。
どうやらmkdosfsではこの値が設定されず、結果BIOSでHDD認識出来なかったようです。
(他にUSBメモリや対応PCを持っていないので比較が十分出来ず、単なる相性問題なのかもしれませんが...)
manpageにある "BUGS mkdosfs can not create boot-able file systems." とはこのことなのでしょうか?
それともオプション設定で変えられるのでしょうか?
質問と言うよりレポートになってしまいましたが、mkdosfs等に詳しい方、お願いします。
オフライン