「Master Boot Record」の版間の差分
表示
削除された内容 追加された内容
ページの作成:「Category:ブートプロセス Category:メインボードと BIOS (日本語) Category:システムリカバリ en:Master Boot Record es:Master Boot Re...」 |
Blackteahamburger (トーク | 投稿記録) リダイレクトに変更 タグ: 新規リダイレクト |
||
| (他の1人の利用者による、間の5版が非表示) | |||
| 1行目: | 1行目: | ||
| ⚫ | |||
[[Category:ブートプロセス]] |
|||
[[Category:メインボードと BIOS (日本語)]] |
|||
[[Category:システムリカバリ]] |
|||
[[en:Master Boot Record]] |
|||
[[es:Master Boot Record]] |
|||
[[it:Master Boot Record]] |
|||
[[ru:Master Boot Record]] |
|||
{{Related articles start (日本語)}} |
|||
{{Related|Arch ブートプロセス}} |
|||
{{Related|GUID Partition Table}} |
|||
| ⚫ | |||
{{Related|Unified Extensible Firmware Interface}} |
|||
{{Related articles end}} |
|||
マスターブートレコード (MBR) はストレージデバイスの最初の 512 バイトのことです。MBR はパーティションではありません; OS のブートローダとストレージデバイスのパーティションテーブルのために予約された領域です。MBR を置き換える比較的新しいものに [[GUID Partition Table]] があり、[[Unified Extensible Firmware Interface]] の仕様の一部になっています。 |
|||
== ブートプロセス == |
|||
ブートには複数の段階があります。今日多くの PC は [[Wikipedia:ja:BIOS|BIOS]] と呼ばれる、一般にシステムボード上の ROM チップ内にあるファームウェアによってシステムデバイスを初期化します。システムデバイスが初期化されると、BIOS は最初に認識されるストレージデバイス (ハードディスクドライブ、ソリッドステートドライブ、CD/DVD ドライブ、USB ドライブ...) の MBR にあるブートローダか、デバイスの最初のパーティションを読み込みます。それからプログラムを実行します。ブートローダはパーティションテーブルを読み込み、OS のロードを始めます。一般的な GNU/Linux ブートローダには [[GRUB]] や [[Syslinux]] などがあります。 |
|||
== 歴史 == |
|||
MBR は短いアセンブリコード (イニシャルブートローダ – 446 バイト)、4つのプライマリパーティション (それぞれ 16 バイト) を持つパーティションテーブルと''標識'' (ブートシグニチャ、0xAA55) によって構成されています。 |
|||
"形式的な" Windows/DOS MBR ブートローダは唯一の ''active'' パーティションを持つパーティションテーブルをチェックし、パーティションの X セクタを読み込んでから OS にコントロールを移します。Windows/DOS ブートローダは Linux カーネルをロードできるように設計されていないので、Arch Linux パーティションをブートすることは''できません''。(GRUB が安全に無視する) ''active'' な ''primary'' パーティションだけ動作します。 |
|||
[[GRUB|GRand Unified Bootloader (GRUB)]] は GNU/Linux のデファクトスタンダードであるブートローダであり、ユーザーは MBR に GRUB をインストールして''全ての''パーティション(プライマリパーティションか論理パーティション)からブートできるようにすることが推奨されます。 |
|||
== バックアップとリストア == |
|||
MBR はディスクにあるため、バックアップとリカバリができます。 |
|||
MBR をバックアップするには: |
|||
# dd if=/dev/sda of=/path/mbr-backup bs=512 count=1 |
|||
MBR をリストアするには: |
|||
# dd if=/path/mbr-backup of=/dev/sda bs=512 count=1 |
|||
{{Warning|間違ったパーティションテーブルで MBR をリストアすると、あなたのデータが読み込めなくなりほとんど修復できなくなります。ブートローダを再インストールするだけならば [[GRUB (日本語)|GRUB]] や [[Syslinux (日本語)|Syslinux]] を見て下さい。}} |
|||
(他の OS のフルインストールが必要な時などに) MBR を消去するには最初の 446 バイトだけをゼロで埋めます(その後のデータにはパーティションテーブルが含まれます): |
|||
# dd if=/dev/zero of=/dev/sda bs=446 count=1 |
|||
== Windows ブートレコードをリストアする == |
|||
Windows は慣例として(インストールを楽にするために)初めのパーティションにインストールされ、パーティションの最初のセクタにあるブートローダにパーティションテーブルとリファレンスをインストールします。GRUB などのブートローダを偶然にも Windows のパーティションにインストールしてしまうなど何らかの理由でそのブートレコードを破壊すると、それを修復するためのユーティリティを使う必要があります。Microsoft はブートセクタの修復ユーティリティである {{Ic|FIXBOOT}} や {{Ic|FIXMBR}}という名前の MBR の修復ユーティリティを彼らのリカバリ CD に (時にはインストール CD にも) 入れています。これを使えば最初のパーティションのブートセクタにあるリファレンスと最初のパーティションの MBR にあるリファレンスを修復できます。その後 MBR に [[GRUB (日本語)#インストール|GRUB を再インストール]]する必要があります (GRUB ブートローダに Windows ブートローダをロードさせることができます)。 |
|||
もし Windows だけを使うように戻したいならば、{{Ic|FIXBOOT}} コマンドを使って MBR とパーティションのブートセクタに鎖をかけて、自動で Windows OS がロードするように戻すことができます。 |
|||
また、{{Ic|ms-sys}} という名の Linux ユーティリティ (AUR の {{AUR|ms-sys}} パッケージ) で MBR をインストールすることができます。しかしながらこのユーティリティは今のところ新しい MBR (全ての OS とファイルシステムがサポート) とブートセクタ (別名ブートレコード、つまり {{Ic|FIXBOOT}} と同じ機能) を FAT ファイルシステムでしか書き出せません。ほとんどの LiveCD にはこのユーティリティはデフォルトでは入っていませんので、まず LiveCD にインストールするか、[http://partedmagic.com/ Parted Magic] などのレスキュー CD を使う必要があります。 |
|||
まず、パーティション情報(テーブル)をもう一度書き出します: |
|||
# ms-sys --partition /dev/sda1 |
|||
次に Windows 2000/XP/2003 MBR を書き込みます: |
|||
# ms-sys --mbr /dev/sda # Read options for different versions |
|||
それから新しいブートセクタ(ブートレコード)を書き込みます: |
|||
# ms-sys -(1-6) # Read options to discover the correct FAT record type |
|||
また、{{Ic|ms-sys}} は Windows 98, ME, Vista, 7 の MBR を書き込むことができます、{{Ic|ms-sys -h}} を見て下さい。 |
|||
==参照== |
|||
* [http://kb.iu.edu/data/aijw.html What is a Master Boot Record (MBR)?] |
|||