最終更新:2016-07-15 (金) 03:01:43 (3171d)
MBR
Top / MBR
Master Boot Record
ハードディスクドライブの先頭セクタ。
構造
- PC/AT互換機の場合ここの長さは512バイト
開始アドレス 名称 サイズ 説明 0x0000 マスタ・ブートストラップ・ローダ 446バイト パーティションのPBR(Partition Boot Record)を読み込むプログラム 0x01BE パーティション・テーブル1 16バイト パーティション1(区画、領域)に関する情報 0x01CF パーティション・テーブル2 16バイト パーティション2(区画、領域)に関する情報 0x01DE パーティション・テーブル3 16バイト パーティション3(区画、領域)に関する情報 0x01EE パーティション・テーブル4 16バイト パーティション4(区画、領域)に関する情報 0x01FE ブート・シグネチャ 2バイト 固定値(0xAA55)
メモ
- 一つの物理ディスクには、一つのマスタ・ブート・レコードがあります。
- 一つの物理ディスクには、4つの基本パーティションを作成出来ます。
バックアップ
$ sudo dd if=/dev/sda bs=512 count=1 of=mbr.backup $ sudo cat mbr.backup > /dev/sda
パーティションテーブルを含めない場合、bs=466とします
PBR
- パーティションのない記憶媒体の第一セクタか、または個々のパーティションの第一セクタ
- その媒体(またはパーティション)にインストールされたオペレーティングシステム(またはその他のスタンドアロンのプログラム)をロードして起動するコードが格納されている
- ブートセクタ
- The code stored in the boot sector searches, loads, and runs the NTLDR found in the root directory of the boot partition.
GRUB
boot.img
- MBRにインストールされる
- カーネルをロードするcore.imgをロード
メモ
- MS-DOS、PC DOS?、そして Windows® オペレーティング・システムが使用する標準的なハード・ディスクの MBR は、パーティションテーブルを調べて、アクティブとしてマークが付けられたブート・ドライブのプライマリー・パーティションを見つけます。
- そしてそのパーティションから最初のセクターをロードし、ロードしたコードの先頭に制御を渡します。この新しいコードは、「パーティション・ブート・レコード」(PBR)としても知られています。パーティション・ブート・レコードは、実際にはもう 1 つのステージ 1 ブート・ローダーですが、これにはパーティションからブロック一式をロードするだけのインテリジェンスしかありません。
Windows
Windows XP
Windows Vista/Windows 7
- bootrec /fixmbr
ツール
DOS
Windows上でいじれるツール
リカバリ環境
Linux
ソースコード
- grub-core/boot/i386/pc/boot.S