Windows Vista - BCD (Boot Configuration Data)
Windows Vista - BCD (Boot Configuration Data)Boot.ini really will be the last of the .ini files. In Vista, Boot.ini is superseded by the
BCD (Boot configuration data). While the acronym BCD is rather anonymous, Boot Configuration Data is a wonderfully descriptive expression, more importantly, it gives you control of what should happen when Vista starts.
Naturally BCD supports both BIOS and Extensible Firmware Interface (EFI) machines. However, I cannot help wondering if the new
EFI has prompted Microsoft to finally abandon boot.ini in favour of BCD. Trap: Before launching CMD, right-click
CMD and select, RunAs, administrator. To get a handle on BCD type: bcdedit /? at the command prompt. This command fires up bcdedit.exe which is stored in the %systemroot%\system32 folder.
Bcdedit is a comprehensive utility with numerous switches, here is the information
displayed by the simple switch: bcdedit /enum.
Windows Boot Manager -------------------- Identifier: {bootmgr} Type: 10100002 Device: partition=C: Description: Windows Boot Manager Locale: en-US Inherit options: {globalsettings}
Boot debugger: No Default: {current} Display order: {current} Timeout: 30
Windows Boot Loader ------------------- Identifier: {current} Type: 10200003 Device:
partition=C: Path: \Windows\system32\winload.exe Description: Microsoft Windows Locale: en-US Inherit options: {bootloadersettings} Boot debugger: No Windows device: partition=C:
Windows root: \Windows Resume application: {224b014c-a08e-11da-b308-ed83a3b7e795} No Execute policy: OptIn No integrity checks: Yes Kernel debugger: No EMS enabled in OS: No
♦
/enum all /v With the 'all' and the verbose (/v) switches you can retrieve hex information about the various parameters for example: Output from the above command.
Windows Boot Manager -------------------- Identifier: {224b0148-a08e-11da-b308-ed83a3b7e795} Type: 10100002 Device: partition=C: Path: \EFI\Microsoft\Boot\bootmgfw.efi
Description: Windows Boot Manager Locale: en-US Inherit options: {7ea2e1ac-2e61-4728-aaa3-896d9d0a9f0e} Boot debugger: No Default: {cbd971bf-b7b8-4885-951a-fa03044f5d71} Timeout: 30
Windows Boot Manager -------------------- Identifier: {9dea862c-5cdd-4e70-acc1-f32b344d4795} Type: 10100002 Device: partition=C: Description: Windows Boot Manager Locale: en-US
Inherit options: {7ea2e1ac-2e61-4728-aaa3-896d9d0a9f0e} Boot debugger: No Default: {224b014b-a08e-11da-b308-ed83a3b7e795} Display order: {224b014b-a08e-11da-b308-ed83a3b7e795} Timeout: 30
Windows Boot Loader ------------------- Identifier: {224b014b-a08e-11da-b308-ed83a3b7e795} Type: 10200003 Device: partition=C: Path: \Windows\system32\winload.exe Description:
Microsoft Windows Locale: en-US Inherit options: {6efb52bf-1766-41db-a6b3-0ee5eff72bd7} Boot debugger: No Windows device: partition=C: Windows root: \Windows Resume application:
{224b014c-a08e-11da-b308-ed83a3b7e795} No Execute policy: OptIn No integrity checks: Yes Kernel debugger: No EMS enabled in OS: No
Guy Recommends: A Free Trial of the Network Performance Monitor
(NPM)
SolarWinds'
Orion performance monitor
will help you discover what's happening on your network. This
utility will also guide you through troubleshooting; the dashboard will
indicate whether the root cause is a broken link, faulty equipment or
resource overload.
Perhaps the NPM's best feature is the way it suggests solutions to network
problems. Its
second best feature is the ability to monitor the health of individual VMware
virtual machines. If you are interested in troubleshooting, and creating
network maps, then I recommend that you take advantage of SolarWinds' offer.
Download a free trial of
the Network Performance Monitor.
Editing BCD Settings
/timeout
I would like to start without /timeout, it's the easiest change to
understand and to monitor. Here is an easy
change: bcdedit /timeout 5
To see the effect, re-run plain: bcdedit
/displayorder
The key point with /displayorder is that you can only use particular
GUIDs encased in curly brackets. The knack is to research for
GUIDs in sections starting with:
Windows Boot Loader ------------------- identifier
{cbd971bf-b7b8-4885-951a-fa03044f5d71}
Tip: You can 'Mark' and copy these hex blocks at the
command-line. Click on the tiny icon at the top left of your cmd
box.
Trap: The GUIDs must exist, you cannot just make
them up. Moreover they must correspond to real settings as
indicated under 'identifier'.
Example 1: /displayorder generic syntax {os1}
{os2} /displayorder {current} {cbd971bf-b7b8-4885-951a-fa03044f5d71}
Example 2: /displayorder
{3b1cb4c9-5398-11dd-88aa-a0b620d5ce11}
{9f25ee7a-e7b7-11db-94b5-f7e662935912}
I say again, you have to use your GUIDs and not mine; test by
re-running the command: bcdedit. The key point is to synchronize
with the rhythm of the syntax, /displayorder space curly bracket os1
curly bracket space curly bracket os2 curly bracket.
bcdedit /default
Here is the classic switch to control what happens after the timeout
expires.
bcdedit /default {GUID}
bcdedit /default {3b1cb4c9-5398-11dd-88aa-a0b620d5ce11}
Note 1: In the above example setting the /default in
this way changes the bcd code, as a result my computer now boots into Vista.
Just to remind you that tweaking the default GUID only makes sense if
you have a multi-boot machine.
Identifying then Changing the Default Boot Manager
|