質問: ミラーリングされたディスク障害後にwindows2008サーバーで未使用のブートエントリを識別して削除する方法 server 2008r2サーバー上のソフトウェアミラーリングディスクの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)がブートデバイスであることを示しています。誰か提案がありますか?
回答: ディスクの管理を使用して、ディスクとパーティションを表示およびマップできます(または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 bcdeditorを使用できます。bcdbootコマンドを実行した後、ブートマネージャーとローダーのデバイスが正しくリストされていることを確認する必要があります。bcdを修正して再起動した後、「不明な」デバイスを持つすべてのローダーを削除できます。ローダーは、「ブート」パーティションではないパーティション(windowsがインストールおよび起動されている場所)を指しています。注:visual bcd editorを使用するか、を使用して、現在のbcd(!)をバックアップします。bcdedit /export full_path_filename(「bcdedit/importfilename」を使用していつでもbcdを復元できます)bcdのすべての「リンク」はguidを介しています。たとえば、要素「display order」は、ローダーのguidであるguidのリストです。 bcd内のすべてのオブジェクトには、一意のguidがあります。お役に立てれば。