USB デバイスにブートセクタがありません。

USB デバイスにブートセクタがありません。

ここから最小CentOS 32ビットISOイメージをダウンロードしました。

http://mirror1.hs-esslingen.de/pub/Mirrors/centos-altarch/7.9.2009/isos/i386/

$ curl -O http://mirror1.hs-esslingen.de/pub/Mirrors/centos-altarch/7.9.2009/isos/i386/CentOS-7-i386-Minimal-2009.iso -C -

ISOイメージをUSBドライブに書き込むには:

  • ddLinuxでコマンドを試しました。
  • WindowsでFedoraMediaWriterを試してみることをお勧めします。ここ
  • 8GB USBドライブを試してみました。
  • 別の2GB USBドライブを試してみました。

すべての場合でUSBから起動すると、次のエラーが発生します。

USB デバイスにブートセクタがありません。

ISO イメージには以下が含まれます。

ISOイメージコンテンツ

ISOイメージを使用する理由いいえ開始できますか?私は何を逃したことがありませんか?

ベストアンサー1

このISOイメージは(物理または仮想)CD-ROMでのみ起動でき、有効な起動可能なハードディスクイメージとして表示される追加の構造はありません。

BIOSを搭載したシステムのUSBドライブからの起動は通常、USBドライブをハードディスクとしてマークすることによって処理されます。最初のブロックに有効なマスターブートレコード(MBR)がある場合、ハードドライブはBIOSを介して起動可能です。

一方、ISO 9660ファイルシステム拡張子にEltoritoブートヘッダーが含まれている場合は、CD-ROMを起動できます。これらの拡張子は通常、ディスクの最初の部分ではなく、位置決め9660ファイルシステム構造の

.ISO イメージファイルを生成できます。返品ディスクの先頭にMBRを追加し、ISO9660ファイルシステムの内容を互換性のある方法でソートすると、有効なハードディスクイメージに解析できます。ただし、これはデフォルト設定ではありません。ほとんどの最新のLinux ISOインストールイメージはこのように準備されていますが、すべてではありません。

ISOイメージの最初の512バイトをダンプし、0のみが含まれていることを確認できるため、この特定のISOは確かにそうではありません。

$ dd if=CentOS-7-i386-Minimal-2009.iso bs=512 count=1 | od -t x1z -A x
1+0 records in
1+0 records out
512 bytes copied, 7.6959e-05 s, 6.7 MB/s
000000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  >................<
*
000200

ISOイメージの最初の512バイト持つBIOS 起動可能なハードドライブのイメージがより複雑に見える場合がありますので、準備して使用する準備をしてください。例:

$ dd if=/usr/lib/ipxe/ipxe.iso bs=512 count=1 | od -t x1z -A x
1+0 records in
1+0 records out
512 bytes copied, 0.00298604 s, 171 kB/s
000000 33 ed 90 90 90 90 90 90 90 90 90 90 90 90 90 90  >3...............<
000010 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90  >................<
000020 33 ed fa 8e d5 bc 00 7c fb fc 66 31 db 66 31 c9  >3......|..f1.f1.<
000030 66 53 66 51 06 57 8e dd 8e c5 52 be 00 7c bf 00  >fSfQ.W....R..|..<
000040 06 b9 00 01 f3 a5 ea 4b 06 00 00 52 b4 41 bb aa  >.......K...R.A..<
000050 55 31 c9 30 f6 f9 cd 13 72 16 81 fb 55 aa 75 10  >U1.0....r...U.u.<
000060 83 e1 01 74 0b 66 c7 06 f3 06 b4 42 eb 15 eb 02  >...t.f.....B....<
000070 31 c9 5a 51 b4 08 cd 13 5b 0f b6 c6 40 50 83 e1  >1.ZQ....[...@P..<
000080 3f 51 f7 e1 53 52 50 bb 00 7c b9 04 00 66 a1 b0  >?Q..SRP..|...f..<
000090 07 e8 44 00 0f 82 80 00 66 40 80 c7 02 e2 f2 66  >[email protected]<
0000a0 81 3e 40 7c fb c0 78 70 75 09 fa bc ec 7b ea 44  >.>@|..xpu....{.D<
0000b0 7c 00 00 e8 83 00 69 73 6f 6c 69 6e 75 78 2e 62  >|.....isolinux.b<
0000c0 69 6e 20 6d 69 73 73 69 6e 67 20 6f 72 20 63 6f  >in missing or co<
0000d0 72 72 75 70 74 2e 0d 0a 66 60 66 31 d2 66 03 06  >rrupt...f`f1.f..<
0000e0 f8 7b 66 13 16 fc 7b 66 52 66 50 06 53 6a 01 6a  >.{f...{fRfP.Sj.j<
0000f0 10 89 e6 66 f7 36 e8 7b c0 e4 06 88 e1 88 c5 92  >...f.6.{........<
000100 f6 36 ee 7b 88 c6 08 e1 41 b8 01 02 8a 16 f2 7b  >.6.{....A......{<
000110 cd 13 8d 64 10 66 61 c3 e8 1e 00 4f 70 65 72 61  >...d.fa....Opera<
000120 74 69 6e 67 20 73 79 73 74 65 6d 20 6c 6f 61 64  >ting system load<
000130 20 65 72 72 6f 72 2e 0d 0a 5e ac b4 0e 8a 3e 62  > error...^....>b<
000140 04 b3 07 cd 10 3c 0a 75 f1 cd 18 f4 eb fd 00 00  >.....<.u........<
000150 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  >................<
*
0001b0 48 07 00 00 00 00 00 00 c4 7a ef 12 00 00 80 00  >H........z......<
0001c0 01 00 17 3f 20 01 00 00 00 00 00 10 00 00 00 00  >...? ...........<
0001d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  >................<
*
0001f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 55 aa  >..............U.<
000200

最初の部分はMBRのブートコードです(この場合は明らかにSYSLINUXブートローダファミリのISOLINUXを使用しています。これはディスクイメージの主要部分にあるファイルシステムの種類がISO9660なので意味があります)。その後、実際のMBRパーティションです。表の最後の2バイトには、0x55 0xaa署名バイトが含まれています。

この特別なケースでCentOS Deployment BuilderがISOイメージ準備フェーズを省略したのはなぜですか?彼ら自身が知っているかもしれません:多分それはバグかもしれませんし、誰かが32ビット最小インストールメディアのリリースプロセスにそれを含めることを忘れてしまったかもしれません。あるいは、何らかの理由でこれを選択した可能性があります。


完全性のために:

ISOイメージがUEFI基本起動プロセス(BIOS互換性サポートメカニズムの代わりに)を使用してUEFIファームウェアから起動する必要がある場合は、他の要件セットが適用されます。イメージの先頭にあるパーティションテーブル(MBRまたはGPT)には、特別なフラグを持つ1つ以上のFAT32パーティションを含める必要があります。EFIシステムパーティションタイプ識別子(MBRパーティションの場合は0xef、GPTパーティションの場合は特定のパーティションタイプのGUID)。このパーティションには、特に名前付きファイルであるブートローダが必要です。 32ビットx86アーキテクチャの場合、これは\EFI\BOOT\BOOTIA32.EFIWindowsスタイルのパス名で表示されます。 64ビットx86アーキテクチャの場合、UEFIブートパス名はです\EFI\BOOT\BOOTX64.EFI

実際、一部のUEFIファームウェアの実装では、これらの要件をある程度軽減します。リムーバブルメディア可能UEFIファームウェアは、正しいパスに適切な名前のブートローダファイルが含まれている場合、起動可能と見なされます。特定のUEFIファームウェア実装で読み取ることができるすべてのファイルシステムで。すべてのUEFIファームウェア実装はFAT32をUEFI仕様の一部として理解する必要がありますが、実装によっては異なるファイルシステムタイプが追加されることがあります。たとえば、AppleのUEFIはデフォルトでHFS +ファイルシステムを理解しています。

おすすめ記事