トップ 一覧 置換 検索 ヘルプ RSS ログイン

Vista の起動の仕組みの変更点

  • 追加された行はこのように表示されます。
  • 削除された行はこのように表示されます。
http://itpro.nikkeibp.co.jp/article/COLUMN/20090113/322746/?ST=win&P=1

!仕組み
XP
{{ref_image zu05.jpg}}
Vista
{{ref_image zu07.jpg}}

!BOOTMGR
d:\boot\bootsect.exe -nt60 all

 d:\boot\bootsect.exe -nt60 all
 ここで指定している「BOOTSECT.EXE」というファイルが,Vista用のMBR修復プログラムである。このプログラムを,例で示したように「-nt60」というオプションを指定しながら実行すると,BOOTMGRをマスター・ブートのIPLとする形にMBRが動作するよう変更される。ちなみに,このオプションを「-nt52」にすると,逆にWindows XPのNTLDRをマスター・ブートとする形に変更される。もしWindows Vistaを完全に削除したいような場合は,このコマンドでMBRの呼び出し先をNTLDRに戻して,VistaのパーティションとCドライブのboot フォルダを削除すればよい。

BCDEDITでBCDにWindows XP用のエントリを作成するコマンドは以下のようになる。

c:\windows\system32\bcdedit -create {ntldr} -d "Windows XP Professional"

 c:\windows\system32\bcdedit -create {ntldr} -d "Windows XP Professional"
 これは,CドライブがWindows Vistaのパーティションで,システム・フォルダが\windows\system32という場合のコマンドである。もし異なっている環境の場合は,自分の環境に合わせて変えてほしい。この中にある「{ntldr}」がエントリの識別子で,通常は{ntldr}を指定する。すでにそのエントリがあると,

指定された作成操作を実行中にエラーが発生しました。
指定されたエントリは既に存在します。

 指定された作成操作を実行中にエラーが発生しました。
 指定されたエントリは既に存在します。
という表示が出るが問題はない。

 なお,「-d」オプションの後ろにある「"Windows XP Professional"」というダブル・クォーテーション(")で囲まれた文字列は,起動時の選択メニューに表示される選択文字列である。実行時にエラーとなった場合は適用されない。XPにVistaを追加インストールした場合には起動時の選択メニューに「以前のバージョンのWindows」と表示される。この表示がイヤなら,以下のようにオプションを変えてコマンドを実行すれば,エラーとならずにメニューに表示される選択文字列を変更できる。

c:\windows\system32\bcdedit -set {ntldr} description "Windows XP Professional"
{{category Windows}}
 c:\windows\system32\bcdedit -set {ntldr} description "Windows XP Professional"

 続いてNTLDRのエントリに,Windows XPを起動のための情報をセットしていく。まず,以下のコマンドを入力する。
 c:\windows\system32\bcdedit -set {ntldr} device partition=c:
 {ntldr}は情報を追加するエントリで,先ほど指定したエントリ識別子を指定している。末尾の「device partition=c:」の「c:」でIPLのNTLDRが存在するドライブを指定しており,通常はCドライブになる。

 続いて,NTLDRが存在するパスの指定についての情報を追加する。NTLDRは通常ルート・フォルダにあるので「\ntldr」とする。
 c:\windows\system32\bcdedit -set {ntldr} path \ntldr
 最後に,以下のようにNTLDRのエントリを起動メニューに追加するコマンドを実行する。
 c:\windows\system32\bcdedit -displayorder {ntldr} -addlast

{{category2 OS,Windows}}