| [System Environment] | |||||||||||
bcdeditでVista/Windows Server 2008のブートOSメニューを変更する
|
|||||||||||
|
|||||||||||
| 解説 |
Windows Server 2003以前のOSでは、システムがブートする場合にはシステム・ドライブのルートに置かれた\boot.iniというテキスト・ファイルを参照していた。これに対してWindows VistaやWindows Server 2008では、Windows OSのブート・メカニズムが抜本的に変更され、ブート時に使用する情報はBCD(ブート構成データ)ストアに格納されている。
これに伴い、ブート情報を変更する方法も以前とはまったく異なっている。通常はこれらの情報を変更する必要はないだろうが、例えば1台のコンピュータに複数のOSをインストールした場合には、変更したくなるだろう。例えば、実験などの目的で32bit版のWindows Vistaと64bit版のWindows Vistaを1台のコンピュータにインストールした場合、システム起動時には次のようなメニューが表示される。
このようにどちらのOSも「Microsoft Windows Vista」と表示されており、区別が付かない。これ以外にも、エディションや言語の異なるOSを導入したり、ベータ版やRC版などをインストールしたり、それらを削除したりすると、メニュー項目はさらに増えるため、デフォルトの名称のままでは非常に使いづらいだろう。
このような場合、従来のOSならばboot.iniファイルを編集するのだが(TIPS「システムのブート情報ファイルBOOT.INIを編集する」参照)、BCDストアの場合はデータが完全にバイナリ・データベース化されているので、テキスト・エディタで簡単に編集するというわけにはいかない。BCDストアの内容を操作するためにはBCDEDIT.EXEというツールを利用する。これはコマンド・プロンプト上で操作するツールなので、Server Coreでも利用できるが、慣れないとやや使いづらいかもしれない。本TIPSでは、bcdeditの一番基本的な使い方として、ブート・メニューに表示されるOS名を変更する方法について解説する。より高度な使い方については、今後別TIPSで取り上げる。
| 操作方法 |
管理権限のあるコマンド・プロンプト上で起動する
bcdeditはシステムの重要なファイルを変更するツールである。そのため、管理者として実行したコマンド・プロンプト上でのみ利用できる。通常のコマンド・プロンプト上で起動すると次のようなエラーが表示され、利用できない。
![]() |
| 権限不足の場合のエラー |
| 管理者権限のあるコマンド・プロンプト以外で起動すると、このようなエラーが表示され、実行できない。 |
管理者権限のあるコマンド・プロンプトを起動させるには、[スタート]の[すべてのプログラム]−[アクセサリ]の[コマンド プロンプト]を右クリックして[管理者として実行]を選択する。
bcdeditの基本的な使い方は「bcdedit /?」とすると、表示される。
現在のBCDストア情報の列挙(表示)
引数を付けずにbcdeditを実行すると、現在のBCDストアの情報が一覧表示される。これは「bcdedit /enum」を実行するのと同じである。今回はブート・メニューを変更するため、ブートされるOSの名前の部分(description)に注目する。
![]() |
|||||||||||||||||||||||||||||||||
| BCDストアの情報の例 | |||||||||||||||||||||||||||||||||
| これは2つのWindows Vistaがインストールされている場合の例。2つのパーティション(C:とD:)にそれぞれOSがインストールされている。 | |||||||||||||||||||||||||||||||||
|
この例では、2つの「Windows ブート ローダー」という項目があるが、これらが各OSのブート情報を表している。そしてその2つのうちからどちらを選ぶか、その表示順序はどうするかなどを記述しているのが最初にある「Windows ブート マネージャ」項目である。
bcdedit /setでメニューの文字列を変更する
2つのブート項目にはそれぞれ固有のID数値が付けられており(「{99eba38a-……」と「{99eba38a-……」)、それらを使って識別される。ただし現在のデフォルト・ブート項目に限っては「{current}」という別名でも参照できるようになっているし、省略することも可能である。
BCDでは、各ブート項目の中にある「description」の値をOS選択のためのメニュー名として表示するようになっている。この例ではいずれも「Microsoft Windows Vista」となっているので、同じ名前が表示されているが、これらを変更して、分かりやすい名前にしてみよう。
まず現在のデフォルトのOSの名称を「Microsoft Windows Vista」から「Vista Ultimate x64」に変更してみる。このためにはbcdedit /setコマンドを利用する(使い方は「bcdedit /set /?」で表示される)。引数には変更する変数名(description)と変更後の文字列を指定する。
![]() |
| OS名の変更(1) |
| bcdedit /setコマンドでデフォルトのブート・メニュー項目のメニュー名を変更する。 |
デフォルトでない項目を変更するには、/setの後にブート項目のID数字列を指定すればよい。
![]() |
| OS名の変更(2) |
| 最初にインストールsたOSの名前を変更する。デフォルトのブート項目でない場合は、ID文字列を指定する。 |
もう1度bcdeditもしくはbcdedit /enumで内容を確認後、システムを再起動すればブート・メニューが変更されているはずである。![]()
![]() |
|||
| 新しく設定されたOS名 | |||
| 2つのOSが異なるメニュー名で表示されている。 | |||
|
|
||||||||||||||||||||||||||||
| 「Windows TIPS」 |
ホワイトペーパー(TechTargetジャパン)
- 第207話 究極の人事システム (2010/2/9)
部長、わが人事部が開発した究極の人事評価システムがついに完成しました! これで不要な社員が一発で分かります! - WindowsTIPS (2010/2/5)
− netshコマンドでTCP/IPのパラメータを設定する
− Virtual PC 2007の共有NATで利用可能なアドレス範囲
− スタンバイ復帰でパスワード入力を要求されないように - 仮想環境でActive Directoryを利用する (2010/2/4)
仮想環境にADをインストールすれば、自由にActive Directoryドメイン・ネットワークを構築して実験できる - 第206話 バナー広告案 (2010/2/2)
いまどきWebマーケティングが不可欠なのは分かるが、強烈な競合に並べてバナーなんか出して、勝ち目はあるのか?
|
|
スキルアップ/キャリアアップ(JOB@IT)
スポンサーからのお知らせ
- - PR -
- - PR -
お勧め求人情報

**先週の人気講座ランキング**
〜CCNA編〜
| ◆ | 企業の仮想化に足りない“発想”とは? 仮想化運用管理のキモは意外なところに! New! |
| ◆ | 操作もマニュアルも分かりやすい! ユーザー視点で開発されたPC管理ツール New! |
| ◆ | 仮想化すればコストは削減できるか? 仮想化に必要な「3つの視点」を解説する |

| ◆ | セキュリティを知り尽くす上野氏が登壇! @ITメールソリューションLive! in Tokyo |
| ◆ | 運用管理の課題を“2つの観点”から分析 ユーザー満足度の高い「仮想環境」とは? |
| ◆ | 世界に通用するストレージの作り方とは? 製品に込めた思いを富士通の開発者に聞く |

| ◆ | OSSで手間も時間も、障害も減った―― 「マピオンの事例」オープンソース活用法 |
| ◆ | 「ノートPCの持ち出し禁止」で大丈夫? 情報漏えいを防ぐ管理手法とインフラは? |
| ◆ | 1日の処理を1秒に――MySQLの達人が語る 「コスト削減」できるチューニング |

| ◆ | ドキュメント作成を自動化して、SEの作業 効率を大幅アップ! Visio 2007の魅力 |
| ◆ | 急速に広がるHyper-Vでのサーバ仮想化 そのベストプラクティスをデルが解説 |
| ◆ | @IT主催セミナーで語られた、「担当者に 求められるセキュリティ対策」をレポート |

| ◆ | @IT「Windows 7」 特設サイトオープン! 最新情報・移行ノウハウを公開しています |













