Server 2008 R2 サーバーのソフトウェア ミラー ディスクの 1 つに障害が発生しました。ディスクが切断され、再起動するとディスクは戻りましたが、ディスクは古くなっていたため、ミラーに戻って不良ディスクを再構築する必要がありました (この時点ではディスクが不良であるとは知りませんでした)。その後、再びディスクが切断されたため、ディスクを交換しました。
現在、スタートアップ メニューには 5 つのエントリがあります。
Windows Server 2008 R2
Windows Server 2008 R2 - secondary plex
Windows Server 2008 R2 - secondary plex - secondary plex
Windows Server 2008 R2 - secondary plex
Windows Server 2008 R2 - secondary plex - secondary plex - secondary plex
デフォルトのエントリ (Windows Server 2008 R2) は起動しません。サーバーを起動するには、別のエントリを手動で選択する必要があります。
私の bcdedit リストは次のようになります:
Windows Boot Manager
--------------------
identifier {bootmgr}
device unknown
description Windows Boot Manager
locale en-US
inherit {globalsettings}
default {default}
resumeobject {3c1a07d1-3aaf-11e3-be1a-d6c22ece83ca}
displayorder {default}
{current}
{3c1a07dc-3aaf-11e3-be1a-d6c22ece83ca}
toolsdisplayorder {memdiag}
timeout 30
Windows Boot Loader
-------------------
identifier {default}
device partition=\Device\HarddiskVolume2
path \Windows\system32\winload.exe
description Windows Server 2008 R2
locale en-US
inherit {bootloadersettings}
recoverysequence {3c1a07d3-3aaf-11e3-be1a-d6c22ece83ca}
recoveryenabled Yes
osdevice partition=\Device\HarddiskVolume2
systemroot \Windows
resumeobject {3c1a07d1-3aaf-11e3-be1a-d6c22ece83ca}
nx OptOut
Windows Boot Loader
-------------------
identifier {current}
device unknown
path \Windows\system32\winload.exe
description Windows Server 2008 R2 - secondary plex
locale en-US
inherit {bootloadersettings}
recoverysequence {3c1a07d3-3aaf-11e3-be1a-d6c22ece83ca}
recoveryenabled Yes
osdevice unknown
systemroot \Windows
resumeobject {3c1a07d1-3aaf-11e3-be1a-d6c22ece83ca}
nx OptOut
Windows Boot Loader
-------------------
identifier {3c1a07dc-3aaf-11e3-be1a-d6c22ece83ca}
device partition=C:
path \Windows\system32\winload.exe
description Windows Server 2008 R2 - secondary plex - secondary plex
locale en-US
inherit {bootloadersettings}
recoverysequence {3c1a07d3-3aaf-11e3-be1a-d6c22ece83ca}
recoveryenabled Yes
osdevice partition=C:
systemroot \Windows
resumeobject {3c1a07d1-3aaf-11e3-be1a-d6c22ece83ca}
nx OptOut
どのデバイスを削除し、どのデバイスをアクティブに設定すればよいのかわかりません。{current} エントリにデバイスが「不明」として表示されるため、試行錯誤が少し苦手です。これはリモート ホスティング サイトの運用サーバーなので、正しく動作するように実験することはできません。
diskpart は、ディスク 1 (0 と 1 のうち) がブート デバイスであることを示します。
何か提案はありますか?
答え1
ディスクの管理を使用して、ディスクとパーティションを表示およびマップできます (または diskpart.exe を使用します)。
通常、最初のディスク (ディスク 0) がブート候補であり、アクティブ パーティションの存在がチェックされます。最初のディスクにアクティブ パーティションが存在しない場合は、2 番目のディスク (ディスク 1) でアクティブ パーティションがチェックされます。
奇妙なことに、{bootmgr} のデバイスも現在のシステム BCD で「不明」としてリストされています。これにより問題が発生する可能性があります。
A.) 最善の方法は、bootsect.exe コマンドを使用して、すべてのディスクとパーティション上の MBR と PBR を書き換えることです。
bootsect /nt60 all /mbr
B.) 次に、bcdboot.exe コマンドを使用して BCD を書き換え (修正) します。
bcdboot Z:\windows
ここで、Z: は Windows がインストールされているドライブです。後で、ReAgentC.exe を使用してリカバリ ローダーを修正する必要があります。
C.) 非システムディスクにも別のBCDを書き込むことができます(アクティブなパーティションがある場合)。
bcdboot z:\windows /s y:
ここで、y: は非システム ディスク上のアクティブ パーティションです。
この方法ではどちらのディスクからも起動できます。
のためにBCDをグラフィカルかつ構造的に表示するVisual BCD エディターを使用できます。
bcdboot コマンドを実行した後、ブート マネージャーとローダーのデバイスが正しくリストされていることを確認する必要があります。
BCD を修正して再起動した後、「不明」なデバイスを持つすべてのローダー、つまり「ブート」パーティション (Windows がインストールされ、起動される場所) ではないパーティションを指すローダーを削除できます。
注記:
現在のBCDをバックアップする(!)Visual BCDエディタを使用するか、
bcdedit /export full_path_filename
(「bcdedit /import filename」を使用していつでも BCD を復元できます)
BCD 内のすべての「リンク」は GUID を介して行われます。たとえば、要素「表示順序」はローダーの GUID である GUID のリストです。BCD 内のすべてのオブジェクトには一意の GUID があります。
お役に立てれば。