2007年03月31日
Windows Loaderについて
Windows XP(Windows NT 5.1)までは、Windows NTローダー(NTLDR)を使ってシステムを起動していました。
このNTLDRは、CドライブのルートにあるBOOT.INIというテキストファイルで起動構成等を管理しています。
テキストファイルゆえ、メモ帳などで編集することで、起動するOSの名称を変えたり、最優先起動OSの設定を簡単に変えたりすることができました(もちろんそれなりに知識は必要です)。
一方、Windows Vista(Windows NT 6.0)以降のOSは、Windows Loaderという新しいOSローダーが採用されることになりました。
このWindows Loaderは、NTLDRと比べるとかなり機能強化がなされているのですが、起動構成ファイルが一種のレジストリファイルに変更され、テキストエディタで編集することができなくなってしまいました。
じゃあ、どうやって起動構成の変更をするのか、という疑問がわく訳です。
方法は2つあります。
1.ブート構成データ ストア エディタ(BCDEDIT.EXE)を利用する
Windows Vistaには、Windows Loaderが使うブート構成データのエディタが標準で付いています。
しかし、思いっきりテキストベースで、管理者コマンドプロンプト(参考エントリ)で実行する必要がある上、オプションが豊富すぎて、普通のユーザーの使える範疇ではありません。とりあえず、どう使うのか、と思い、BCDEDIT /?コマンドを実行すると...(一部文章を編集してあります)
BCDEDIT - ブート構成データ ストア エディタ
Bcdedit.exe コマンド ライン ツールは、ブート構成データ ストアを修正します。
ブート構成データ ストアにはブート構成パラメータが含まれ、オペレーティング
システムのブート方法を制御します。これらのパラメータは、以前は Boot.ini
ファイル (BIOS ベースのオペレーティング システム内) か、不揮発性 RAM エントリ
(拡張ファームウェア インターフェイス ベースのオペレーティングシステム内) に
ありました。Bcdedit.exe を使用して、ブート構成データ ストアのエントリを追加、
削除、編集および付加することができます。
詳細なコマンドとオプション情報については、「bcdedit.exe /? / (コマンド)」を
入力してください。たとえば、/createstore コマンドについて詳細情報を表示する
には以下のように入力します。
bcdedit.exe /? /createstore
ヘルプ ファイルのトピック順の一覧をみるには、"bcdedit /? TOPICS" を実行します。
ストアの操作のコマンド
=============
/createstore 新しい空のブート構成データ ストアを作成します。
/export システム ストアの内容をファイルにエクスポートします。
このファイルは、システム ストアの状態を回復するために後から
使用することができます。
/import /export コマンドで作成されたバックアップ ファイルを使用して、
システム ストアの状態を回復します。
ストア内のエントリの操作のコマンド
====================
/copy ストアにエントリのコピーを作成します。
/create ストアに新しいエントリを作成します。
/delete ストアからエントリを削除します。
これらのコマンドで使用する ID の情報については bcdedit /? ID を実行してください。
エントリ オプションの操作のコマンド
=====================
/deletevalue ストアからエントリ オプションを削除します。
/set ストアにエントリ オプションの値を設定します。
これらのコマンドで使用するデータ型の一覧については bcdedit /? TYPES を
実行してください。
有効なデータ形式の一覧については bcdedit /? FORMATS を実行してください。
出力を制御するコマンド
============================
/enum ストアのエントリを一覧表示します。
/v 既知の識別子名を使用するのではなく、エントリ識別子を完全な
形式で表示するコマンドライン オプションです。
ACTIVE な種類のエントリ識別子の完全な形式を表示するコマンド
として /v を使用します。
"bcdedit" の実行は "bcdedit /enum ACTIVE" の実行と同じです。
ブート マネージャを制御するコマンド
=====================
/bootsequence ブート マネージャの 1 回限りのブート シーケンスを設定します。
/default ブート マネージャが使用する既定のエントリを設定します。
/displayorder ブート マネージャがマルチブート メニューを表示する順序を設定
します。
/timeout ブート マネージャのタイムアウト値を設定します。
/toolsdisplayorder ブート マネージャがツール メニューを表示する順序を設定
します。
ブート アプリケーションの緊急管理サービスを制御するコマンド
===================================
/bootems ブート アプリケーションの緊急管理サービスを有効または無効に
します。
/ems オペレーティング システム エントリの緊急管理サービスを無効
または有効にします。
/emssettings グローバルな緊急管理サービスのパラメータを設定します。
デバッグを制御するコマンド
================
/bootdebug ブート アプリケーションのブート デバッグを有効または無効に
します。
/dbgsettings グローバル デバッガ パラメータを設定します。
/debug オペレーティング システム エントリのカーネル デバッグを有効
または無効にします。
なんと、全てのコマンドを表示しきれないと言う素晴らしいほど強力なツールです(爆)。
で、よく使うと思われるコマンドだけをかいつまんで解説すると...
・起動OSの変更 → BCDEDIT /default {エントリコード}
エントリコードについては、オプションなしでBCDEDITを実行すると見ることができます。ただ、標準のエントリコードは16進数な上、長ったらしいので、一部のエントリコードは、省略できるように工夫されています。
[省略表現可能な代表的エントリコード]
bootmgr → 通常のブートマネージャ(Windows Loader)
fwbootmgr → (EFIシステム向け)EFIブートマネージャ
memdiag → Windows メモリ診断(Windows Vistaに新規搭載の機能)
ntldr → NTLDRを利用するXPまでのNT系Windows
current → 現在起動中のWindows Loader対応OS
default → ブートマネージャが標準とみなすOS
たとえば、Windows XPをデフォルト起動にしたい場合は...
BCDEDIT /default {ntldr}
と実行すればOKです。
・OSエントリ名の変更 → BCDEDIT /set {エントリコード} description (新しい名前)
現在のOSに対してOSエントリ名を変更する場合は、エントリコードの部分は省略できます。
たとえば、現在起動中のWindows Vistaのエントリ名を、"Windows Vista Business"に変更したい場合は...
BCDEDIT /set description "Windows Vista Business"
と打ちます。間にスペースが入るエントリ名にする場合は、エントリ名をダブルクォンテーション(")でくくる必要があるので、注意です。
2. VistaBootProを使う
一応、上に挙げたとおりにすればよくある操作はできるのですが、何かコマンドラインでやるのが心配、という方向けに、VistaBootProというアプリケーションがあります。
ずばり、売りが"BCDEDIT Make Easy"なので、BCDEDIT.EXEそのものを使うより簡単に構成ファイルの編集ができます。
[VistaBootPro]
ただ、一応ベータ版という位置づけなので、保障は全くありません。自分のThinkPadについては、きちんと動きました。
と、いうわけで、ちょっとVistaになって敷居の高くなった部分のTipsでした。
一応、このエントリはさらに更新をしていく予定です。気が向いたら...
このNTLDRは、CドライブのルートにあるBOOT.INIというテキストファイルで起動構成等を管理しています。
テキストファイルゆえ、メモ帳などで編集することで、起動するOSの名称を変えたり、最優先起動OSの設定を簡単に変えたりすることができました(もちろんそれなりに知識は必要です)。
一方、Windows Vista(Windows NT 6.0)以降のOSは、Windows Loaderという新しいOSローダーが採用されることになりました。
このWindows Loaderは、NTLDRと比べるとかなり機能強化がなされているのですが、起動構成ファイルが一種のレジストリファイルに変更され、テキストエディタで編集することができなくなってしまいました。
じゃあ、どうやって起動構成の変更をするのか、という疑問がわく訳です。
方法は2つあります。
1.ブート構成データ ストア エディタ(BCDEDIT.EXE)を利用する
Windows Vistaには、Windows Loaderが使うブート構成データのエディタが標準で付いています。
しかし、思いっきりテキストベースで、管理者コマンドプロンプト(参考エントリ)で実行する必要がある上、オプションが豊富すぎて、普通のユーザーの使える範疇ではありません。とりあえず、どう使うのか、と思い、BCDEDIT /?コマンドを実行すると...(一部文章を編集してあります)
BCDEDIT - ブート構成データ ストア エディタ
Bcdedit.exe コマンド ライン ツールは、ブート構成データ ストアを修正します。
ブート構成データ ストアにはブート構成パラメータが含まれ、オペレーティング
システムのブート方法を制御します。これらのパラメータは、以前は Boot.ini
ファイル (BIOS ベースのオペレーティング システム内) か、不揮発性 RAM エントリ
(拡張ファームウェア インターフェイス ベースのオペレーティングシステム内) に
ありました。Bcdedit.exe を使用して、ブート構成データ ストアのエントリを追加、
削除、編集および付加することができます。
詳細なコマンドとオプション情報については、「bcdedit.exe /? / (コマンド)」を
入力してください。たとえば、/createstore コマンドについて詳細情報を表示する
には以下のように入力します。
bcdedit.exe /? /createstore
ヘルプ ファイルのトピック順の一覧をみるには、"bcdedit /? TOPICS" を実行します。
ストアの操作のコマンド
=============
/createstore 新しい空のブート構成データ ストアを作成します。
/export システム ストアの内容をファイルにエクスポートします。
このファイルは、システム ストアの状態を回復するために後から
使用することができます。
/import /export コマンドで作成されたバックアップ ファイルを使用して、
システム ストアの状態を回復します。
ストア内のエントリの操作のコマンド
====================
/copy ストアにエントリのコピーを作成します。
/create ストアに新しいエントリを作成します。
/delete ストアからエントリを削除します。
これらのコマンドで使用する ID の情報については bcdedit /? ID を実行してください。
エントリ オプションの操作のコマンド
=====================
/deletevalue ストアからエントリ オプションを削除します。
/set ストアにエントリ オプションの値を設定します。
これらのコマンドで使用するデータ型の一覧については bcdedit /? TYPES を
実行してください。
有効なデータ形式の一覧については bcdedit /? FORMATS を実行してください。
出力を制御するコマンド
============================
/enum ストアのエントリを一覧表示します。
/v 既知の識別子名を使用するのではなく、エントリ識別子を完全な
形式で表示するコマンドライン オプションです。
ACTIVE な種類のエントリ識別子の完全な形式を表示するコマンド
として /v を使用します。
"bcdedit" の実行は "bcdedit /enum ACTIVE" の実行と同じです。
ブート マネージャを制御するコマンド
=====================
/bootsequence ブート マネージャの 1 回限りのブート シーケンスを設定します。
/default ブート マネージャが使用する既定のエントリを設定します。
/displayorder ブート マネージャがマルチブート メニューを表示する順序を設定
します。
/timeout ブート マネージャのタイムアウト値を設定します。
/toolsdisplayorder ブート マネージャがツール メニューを表示する順序を設定
します。
ブート アプリケーションの緊急管理サービスを制御するコマンド
===================================
/bootems ブート アプリケーションの緊急管理サービスを有効または無効に
します。
/ems オペレーティング システム エントリの緊急管理サービスを無効
または有効にします。
/emssettings グローバルな緊急管理サービスのパラメータを設定します。
デバッグを制御するコマンド
================
/bootdebug ブート アプリケーションのブート デバッグを有効または無効に
します。
/dbgsettings グローバル デバッガ パラメータを設定します。
/debug オペレーティング システム エントリのカーネル デバッグを有効
または無効にします。
なんと、全てのコマンドを表示しきれないと言う素晴らしいほど強力なツールです(爆)。
で、よく使うと思われるコマンドだけをかいつまんで解説すると...
・起動OSの変更 → BCDEDIT /default {エントリコード}
エントリコードについては、オプションなしでBCDEDITを実行すると見ることができます。ただ、標準のエントリコードは16進数な上、長ったらしいので、一部のエントリコードは、省略できるように工夫されています。
[省略表現可能な代表的エントリコード]
bootmgr → 通常のブートマネージャ(Windows Loader)
fwbootmgr → (EFIシステム向け)EFIブートマネージャ
memdiag → Windows メモリ診断(Windows Vistaに新規搭載の機能)
ntldr → NTLDRを利用するXPまでのNT系Windows
current → 現在起動中のWindows Loader対応OS
default → ブートマネージャが標準とみなすOS
たとえば、Windows XPをデフォルト起動にしたい場合は...
BCDEDIT /default {ntldr}
と実行すればOKです。
・OSエントリ名の変更 → BCDEDIT /set {エントリコード} description (新しい名前)
現在のOSに対してOSエントリ名を変更する場合は、エントリコードの部分は省略できます。
たとえば、現在起動中のWindows Vistaのエントリ名を、"Windows Vista Business"に変更したい場合は...
BCDEDIT /set description "Windows Vista Business"
と打ちます。間にスペースが入るエントリ名にする場合は、エントリ名をダブルクォンテーション(")でくくる必要があるので、注意です。
2. VistaBootProを使う
一応、上に挙げたとおりにすればよくある操作はできるのですが、何かコマンドラインでやるのが心配、という方向けに、VistaBootProというアプリケーションがあります。
ずばり、売りが"BCDEDIT Make Easy"なので、BCDEDIT.EXEそのものを使うより簡単に構成ファイルの編集ができます。
[VistaBootPro]
ただ、一応ベータ版という位置づけなので、保障は全くありません。自分のThinkPadについては、きちんと動きました。
と、いうわけで、ちょっとVistaになって敷居の高くなった部分のTipsでした。
一応、このエントリはさらに更新をしていく予定です。気が向いたら...
Windowsのブルースクリーン、「日本語版」にはないもの
すーっごく久しぶりに「ジャンクパソコン」を復活させた話。
Windows 8/8.1プリインストールパソコンにおけるリカバリーメディアの作り方
格安Windowsタブレットでストレージが足りないときは「ジャンクション」しよう!
Windows 8/8.1のSTOPエラー(ブルースクリーン)の他言語にあって、日本語に無いもの
Windows 8.1をインストールしたThinkPad T430sでIntel WiDi(Miracast)を使う方法
すーっごく久しぶりに「ジャンクパソコン」を復活させた話。
Windows 8/8.1プリインストールパソコンにおけるリカバリーメディアの作り方
格安Windowsタブレットでストレージが足りないときは「ジャンクション」しよう!
Windows 8/8.1のSTOPエラー(ブルースクリーン)の他言語にあって、日本語に無いもの
Windows 8.1をインストールしたThinkPad T430sでIntel WiDi(Miracast)を使う方法
Posted by せう at 15:45│Comments(0)
│PC Tips
※このブログではブログの持ち主が承認した後、コメントが反映される設定です。