Windows TIPS
[System Environment]
  Windows TIPS TOPへ
Windows TIPS全リストへ
内容別分類一覧へ

bcdeditコマンドでブート・シーケンスを一時的に変更する

解説をスキップして操作方法を読む

デジタルアドバンテージ 小林 章彦
2010/07/09
対象OS
Windows Vista
Windows Server 2008
Windows 7
Windows Server 2008 R2
マルチブート環境において、指定のOSを一度だけ起動するように変更して、その後は既定のブート・シーケンスに戻したいことがある。
bcdeditコマンドに/bootsequenceオプションを付けて実行することで、再起動後に一度だけ指定したOSを起動するように変更できる。

解説

 システムに複数のOSがインストールされているマルチブート環境において、再起動時に特定のOSを一度だけ起動するように変更して、その後は既定のブート・シーケンスに戻したいことがある。例えば、普段あまり利用しないOSに対して、セキュリティ・パッチを適用するような場合だ。

 このような場合、bcdeditコマンドに/bootsequenceオプションを付けて実行することで、再起動後、一度だけ指定したOSを起動するように変更できる。その後、再起動すれば既定のブート・シーケンスに戻るため、ブート・シーケンスを再度修正する必要はない。本稿では、この一時的にブート・シーケンスを変更する方法を紹介する。

Windowsブート・マネージャの画面
この画面が表示されてから30秒(デフォルト)経過すると、選択されているOSが起動する。この画面を表示しないように設定している場合、起動するOSを切り替えるには、やはりbcdeditコマンドによるブート・マネージャの編集が必要になる。
デフォルトでこちらのOSが起動する。
デフォルト以外のOSの起動する場合は、[↓][↑]キーで目的のOSを選択して[Enter]キーを押す必要がある。

  操作方法

 bcdeditコマンドを実行するため、コマンド・プロンプトを起動する。ただしbcdeditコマンドは、管理者として実行したコマンド・プロンプトでなければ実行できない。そこで、[スタート]の[すべてのプログラム]−[アクセサリ]の[コマンド プロンプト]を右クリックして[管理者として実行]を選択してコマンド・プロンプトを起動する。

 ここで、まず引数を付けずにbcdeditを実行し、現在のBCDストアの情報を確認する。

Windows ブート マネージャー
--------------------------------
identifier              {bootmgr}
device                  partition=\Device\HarddiskVolume1
description             Windows Boot Manager
locale                  ja-JP
inherit                 {globalsettings}
default                 {current}
resumeobject            {7c2b44f3-3926-11de-99f4-bf6acdd7f858}
displayorder            {current}
                        {7c2b44fc-3926-11de-99f4-bf6acdd7f858}
toolsdisplayorder       {memdiag}
timeout                 30
displaybootmenu         Yes

Windows ブート ローダー
--------------------------------
identifier              {current} ……現在の起動OS
device                  partition=C:
path                    \Windows\system32\winload.exe
description             Windows 7
locale                  ja-JP
osdevice                partition=C:
systemroot              \Windows
resumeobject            {fa8e4917-8a91-11df-b9f3-806e6f6e6963}

Windows ブート ローダー
--------------------------------
identifier              {7c2b44fc-3926-11de-99f4-bf6acdd7f858} ……これを一時起動に設定してみる
device                  locate=\Windows\system32\winload.exe
path                    \Windows\system32\winload.exe
description             Windows 7 - VHD
locale                  ja-JP
osdevice                locate=\Windows
systemroot              \Windows
resumeobject            {bc540f53-8a70-11df-8855-806e6f6e6963}
detecthal               Yes
bcdeditコマンドの実行例

 ここで一時的に起動したいOSの「identifier」の値をコピーしておく。「{current}」は、現在の既定の起動OSなので、それ以外のOSということになる。この例では、2番目のエントリの「identifier」の値「{7c2b44fc-3926-11de-99f4-bf6acdd7f858}」をコピーする。

 次に、コマンド・プロンプトで以下のコマンドを実行する。<identifier>には、コピーした「identifier」の値(この例では{7c2b44fc-3926-11de-99f4-bf6acdd7f858})を入れる。

bcdedit /bootsequence <identifier>

 これで再起動後、自動的に<identifier>で指定したOSが一度だけ起動することになる。その後、再起動すれば、今度は以前と同様、{current}で指定されているOSが起動することになる。

 再起動時に表示されるブート・マネージャで選択する必要がないため、誤って目的とは異なるOSを起動させてしまうことも防げる。一時的に起動OSを変更したい場合は、この方法を試してみるとよい。End of Article

「Windows TIPS」


Windows Server Insider フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Windows Server Insider 記事ランキング

本日 月間