The Windows 2000 Command Console is a major Windows recovery utility that comes installable after you set up Windows. What it allows you to do is to accomplish many tasks such as disabling troublesome services before startup, fix hard drive and boot records (your machine does not have to be able to boot to drop into this), formatting, etc. It is an excellent secure recovery mechanism, for many types of problems. (It still won't help if you've lost your administrator password.)

To drop into the command console, take the Windows 2000 server or pro cd, and boot off of it (you can use a floppy disk, and then boot to CD, either way). Choose Recovery Install by pressing R, and then console by pressing C.

- or -

When in Windows, put the cd in the drive and type the following command:

<drive of cd>:\i386\winnt32.exe /cmdcons

This will install it as a startup option in NTLDR. You can chose Recovery Console as a startup option (this will require a reboot for some odd reason).

Windows 2000 allows you to fix numerous problems with both Win2k and WinNT 4.0 (should you decide to do this). Upon loading up the command console (it's really safe, but really slow), it will show you the list of detected Win2k installations, and will ask you which ones you'd like to log into. You will need the local Administrator password, and then you are in. It drops you to a simple (single user-esque) shell. Nothing fancy, no UI, but you are in the underbelly of the beast.

Available commands are:
  • attrib Same as the DOS command (and similar to chmod), it changes the attributes of the file in question (read only, system, hidden, compressed)
  • batch Kicks off a batch file
  • chdir / cd Changes a working directory
  • chkdsk Same as chkdsk in Windows, it searches the disk for errors (or can schedule a check on next boot)
  • cls Clears the terminal screen, per the old DOS command
  • copy Copies one file to another location
  • delete / del Deletes a file; works exactly like it did in DOS
  • dir Displays a list of files and directories.
  • disable Disables a service or device driver. This is great to help fix troubles with blue screens on start because of bad resident drivers
  • diskpart Allows you to modify the disk partitions
  • enable The counterpart to disable, enable attempts to start a device or service.
  • exit Exit ends the console session, dropping you out to a reboot.
  • expand Expands a .cab file
  • fixboot The very useful fixboot command fixes the boot record of a drive.
  • fixmbr With fixmbr, you can repair a damaged master boot record. This is hard because the recovery console may not be able to find your Windows installation, without a valid MBR. This will blow away any changes you've made to your MBR, including LILO, GRUB, System Commander, or what not.
  • format Formats a drive, as per the DOS command
  • help Lists a howto on a particular command
  • listsvc Lists all the installed services (including some of the normally hidden ones)
  • logon Logs you on to an installation
  • map Shows the mapping of the drive letters to physical devices. It's interesting to note that NT lists their devices very similar to the way UNIX does internally
  • mkdir / md Creates a directory
  • more / type Displays a text file. A text stream can also be piped into this command
  • rename / ren Renames a file
  • rmdir / rd Removes a directory (same as DOS)
  • set Same as in DOS, sets an environment variable. Just typing set will list the current variables.
  • systemroot This command allows you to change the install point of Windows 2000.


Just as in UNIX, the best way to learn NT, and how it really works is to get in on the underbelly and mess around with it. The command console is a great way to learn more about Windows NT, services, devices, and good recovery techniques, in case something goes horribly wrong. It's a neat, oftentimes overlooked administration feature that really helps you to learn more about your computer.

Yes, the Recovery console/Command Console is a useful tool. It has saved me from reinstalling Windows 2000 twice. But it is inferior to, say, a Linux rescue disk, since you cannot edit the registry, where all the important settings are stored. The enable/disable commands allow you to change a very small portion of these settings, but it is not always enough.

This actually happened to me a few weeks ago. I changed keyboard drivers for my new Microsoft Natural Keyboard Pro, and I (ahem) chose the wrong driver, even though Windows warned me that it might not be compatible. My keyboard uses the PS/2 port and the driver I chose apparently was for an USB keyboard. The driver change disabled the i8042prt driver for the PS/2 ports. Result: Both the keyboard and the mouse stopped working after a reboot.

Good question by JayBounci:
There were a few other ways you could have done that (last known good configuration, and safe mode, which would have given you the most default drivers possible). Why did you use command cons for that?

Answer: Safe mode didn't work because the keyboard drivers need to be loaded even in Safe mode. Last known good configuration didn't work either, but that is probably my fault. I tried the recovery console before remembering to try LKG.

Using the recovery console I could disable the kbdhid driver and reenable the i8042prt driver, but it still didn't work because a setting in the registry told Windows that the driver for the keyboard is kbdhid. The mouse still refused to work too. I guess that the kbdhid driver was being loaded by Windows even though I had disabled it, and that it prevented the i8042prt driver from loading.

Solution: I installed another copy of Windows on a spare partition, started regedt32 (not regedit), mounted the c:\winnt\system32\config\system registry hive from the broken installation and changed the driver for the keyboard. Problem solved.

By the way, the keyboard settings is in the following key on my computer, with a PS/2 keyboard:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\ACPI\PNP0303\4&244b3c61&0
String value: Service=i8042prt

You need to change the permissions of a few of the parent keys before you can change the Service value.

You may ask why I did not choose the Repair features of the Windows 2000 setup. Answer: It may work, but it changes a lot of registry settings back to the factory default, and you will need to reinstall the service pack(s), the High encryption pack etc.


Good question by JayBounci:
There were a few other ways you could have done that (last known good configuration, and safe mode, which would have given you the most default drivers possible). Why did you use command cons for that?

Answer: Safe mode didn't work because the keyboard drivers need to be loaded even in Safe mode. Last known good configuration didn't work either, but that is probably my fault. I tried the recovery console before remembering to try LKG.

Log in or registerto write something here or to contact authors.