Managing the Boot Menu on Intel
If youre running NT on an Intel CPU platform, the BOOT.INI file, in the root directory of your system partition, controls the display of the initial boot menu that you see when you restart the computer. (If youre running NT on a RISC platform, this is all handled in the computers firmware.) You can use the System application in Control Panel to alter the menu time-out and default operating system choice, as described in Chapter 8, but you cant add, remove, or edit any other portions of the file. In this section, I show you how to edit BOOT.INI manually to suit your needs, using a standard text editor.
Understanding the BOOT.INI File Structure
The BOOT.INI file consists of two sections. The first section, named [boot loader], contains the menu time-out value (in seconds) and a pointer to the default operating system to boot.
The time-out value specifies the number of seconds that the boot menu is displayed before the default operating system is automatically selected and booted. If the time-out is set to zero, the boot menu isnt displayed at all, and the default OS loads automatically. By default, NT sets this time-out to 30 seconds. You can change it either by editing the BOOT.INI file or through the System application in Control Panel.
The default value is simply the ARC path name of the operating system that will boot by default. (See the section Understanding ARC Path Names earlier in this chapter for details.) The boot menu item corresponding to this path is highlighted during the time-out countdown. You can change the default value by manually editing it, or you can change it to another existing menu entry using the System application in Control Panel.
Note: If the default value is DOS or some other non-NT operating system, the value of default isnt an ARC path name. In the case of DOS, for example, the default value is typically the C:\ directory.
The second section of the BOOT.INI file is named [operating systems]. Its simply a list of ARC path names associated with menu items to be displayed on the boot menu. If youve retained the ability to dual-boot to DOS, the last entry equates the root directory of drive C to MS-DOS.
Each time you install a version of Windows NT Server (or NT Workstation, for that matter), two additional entries are added to the top of this section of BOOT.INI. In addition, Setup changes the default value in the [boot loader] section to point to the first entry in the [operating systems] section.
Editing BOOT.INI
Although you can have any number of entries in this file, only the first 10 choices are displayed. This usually isnt a problem, unless you have several versions of operating systems installed on the same computer or youve had to reinstall NT several times. Each NT installation adds another two options to this menu: a standard boot option and an option that boots using VGA video mode.
Cross-Reference: See the section in Chapter 3 called Booting to VGA Mode for details.
You can edit BOOT.INI with any standard text editor. The DOS EDIT and Windows Notepad applications work just fine. However, before you edit the file, you must change its file attributes. When NT Server is installed, the BOOT.INI file has the read-only and system file attributes set. You need to remove these attributes, edit the file, and then restore the attributes. (NT expects these attributes to be intact during the boot process.) Heres a batch file that you can run from a Command Prompt whenever you need to edit BOOT.INI:
You can substitute your favorite text editor for the DOS EDIT command in the batch file.
Caution: You may be tempted to remove the VGA-mode menu item, thinking that youll never need it. Dont give in to this temptation. Its an important escape hatch. Even if youre not changing your video mode, you may need this option to deal with hardware failures and driver upgrades. For example, an SVGA video adapter with RAM thats going bad may be unusable at high resolutions but can sometimes operate just fine in VGA mode. Ive also run into one case where a vendor supplied an updated video driver and required customers to boot to VGA mode before the new driver could be installed. So keep your mitts off the VGA-mode menu item.
To illustrate, heres an example of a BOOT.INI file on a Windows NT Server 4.0 computer. Notice that it retains the ability to boot to the previous version of NT, which is NT Workstation 3.51. Notice also that the old version of NT lives on drive C (an IDE drive), and NT Server 4.0 is installed on a SCSI drive with SCSI ID 2.
[boot loader]
timeout=15
default=scsi(0)disk(2)rdisk(0)partition(1)\WINNT
[operating systems]
scsi(0)disk(2)rdisk(0)partition(1)\WINNT=Windows NT Server 4.00
scsi(0)disk(2)rdisk(0)partition(1)\WINNT=Windows NT Server
4.00 [VGA mode] /basevideo /sos
multi(0)disk(0)rdisk(0)partition(1)\WINNT.351=Windows NT
Workstation 3.51
multi(0)disk(0)rdisk(0)partition(1)\WINNT.351=Windows NT
Workstation 3.51 [VGA mode] /basevideo /sos
c:\=Windows 95 (Press F4 for MS-DOS)
Since this computer also has both DOS and Windows 95 on it, notice that the administrator has changed the menu text on the last line from MS-DOS to Windows 95 (Press F4 for MS-DOS), since this menu item causes Windows 95 to boot, instead of DOS.
Watching Drivers as They Load
If youre having trouble booting the operating system and you suspect that a driver is at fault, you can get NT to list each driver as it loads during the boot process. That way, you can determine which driver is causing the problem. Just add the /SOS switch to the end of the menu line in BOOT.INI corresponding to the version of the operating system youre booting. For example,
scsi(0)disk(0)rdisk(0)partition(2)\WINNT=NT Server 4.0 /SOS
Note: NT Setup automatically adds the /SOS switch to the VGA-mode version of the boot menu entry. Since youre booting using VGA mode, Setup assumes that you need some extra information during the boot process. This is helpful if you expect it but can be disconcerting if you dont.
Keeping the UPS Alive During Boot
During the boot process, NT briefly chats with each serial port to determine what sort of device is attached. Unfortunately, some UPS devices interpret this as a signal to shut themselves down. This results in the computer powering down during the boot processcertainly not what you had in mind.
If your UPS has this problem, you can work around it by disabling NTs serial device detection on the port to which the UPS is attached. On the menu line in the BOOT.INI file, add the switch
/NoSerialMice=COMx
where x is the number of the serial port to which the UPS is attached. When you add this switch, your UPS wont shut itself down at this inopportune moment.
Dealing with Missing Memory at 1MB
If you see the following error during operating system initialization:
OS LOADER: Image cant be relocated, no fixup information.
The system did not load because it cannot find the following
file:
<winnt root>\system32\ntoskrnl.exe
Please re-install a copy of the above file.
Boot failed
it probably means that your computer doesnt appear to have memory in the 1MB address range. The Intel version of the NT kernel must always be loaded at a fixed address and cant be relocated somewhere else. The loader attempts to place the kernel at 1MB.
Some computers on the market, including the Compaq SystemPro XL, have no memory in this range by default. In most cases, you can remedy this by changing the EISA or BIOS configuration to make the memory at this location visible. On the SystemPro XL, for example, change the EISA memory parameter from 640K Linear to 640K Compaq Compatible. See your computer manufacturers instructions for details.
CUSTOMIZING THE LOGON PROCESS
Certain aspects of the logon sequence can be customized to fit the needs of your organization. Unfortunately, since Microsoft doesnt provide an application to do this, you must edit the registry to customize the logon process. The following sections describe the logon tricks that you can play.
Displaying a Custom Bitmap before Logon
If your organization wants its own company logo displayed on NT computers that arent logged on, rather than the standard NT bitmap, you can edit the registry to make this happen. Under the HKEY_USERS\.DEFAULT\Control Panel\Desktop key, change the value of Wallpaper to the full path name of the custom bitmap that you want to display. Log off to see the new bitmap, which will be displayed behind the Begin Logon dialog box.
Displaying a Custom Logon Message
For legal or security reasons, your organization may require that a notice or warning message be displayed before users log on to their computers. For example, you may need to display a notice warning of the implications of unauthorized access to the network.
You can insert a customized dialog box between the Begin Logon and the Logon Information dialog boxes. When you press CTRL+ALT+DEL at the Begin Logon dialog box, NT can display the custom dialog box that you define. You must click OK to acknowledge it. NT then displays the Logon Information dialog box to gather your user name and password as usual.
Under the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon key, change the value of LegalNoticeCaption to the text that you want to appear as the dialog box title. Change the value of LegalNoticeText to the text message that you want to appear within the dialog box. Log off and press CTRL+ALT+DEL to see the new dialog box. Click OK and proceed to the Logon Information dialog box.
Logging On Automatically
In some special cases, you may want to provide access to a computer without asking for a user name or password. For example, you may have an NT print server in the printer room down the hall, and all users must be able to access the print queue. You can set up the computer to log on automatically, completely bypassing the logon sequence.
Heres how to configure an NT computer to log on automatically:
Select the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon key.
Determine which user account to use for the automatic logon, then change the value of DefaultUserName to this user account name.
Caution: From a security viewpoint, bypassing the logon process can be extremely dangerous. Make sure that the account being used for automatic logon (the one specified as the value of DefaultUserName) has reasonable access restrictions to prevent people from using this computer for unauthorized access or damage to the network. Under no circumstances should the default user have administrative privileges.
Add a new value entry called AutoAdminLogon. Set its data type to REG_SZ and its value to 1.
Add another new value entry called DefaultPassword. Set its data type to REG_SZ and its value to the password of the account specified in step 2.
When you log off, NT will automatically log on the user that you specified in step 2. Whenever anyone logs off this computer, NT logs the default user on again. If you want to revert to requiring a normal logon, change the AutoAdminLogon value entry that you created in step 3 to a value of 0.
Enabling Shutdown without Logon
By default, Windows NT Server doesnt allow you to shut down the computer without first logging on. You certainly dont want to allow some unauthorized person to shut down your server with a simple click of the mouse. The Logon Information window includes a Shut Down button, but its disabled. (NT Workstation has the same button enabled, since its much less detrimental to shut down a workstation computer.)
You can enable the Shut Down button in the Logon Information window by editing the registry. Under the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ WindowsNT\CurrentVersion\Winlogon key, change the ShutdownWithoutLogon value to 1. If you ever want to disable the button again, simply change its value back to 0.
Caution: The button is disabled by default to prevent unauthorized server shutdowns. If you enable it, be sure that your server is physically secured so that unauthorized users cant shut down your server on a whim.
CUSTOMIZING NETWORK BEHAVIOR
Youll do most of your NT network customization through the Network application in Control Panel, as described in previous chapters. However, there are a few less common tweaks that require changes to the NT registry. I present some of the more useful ones in the sections that follow.
Raising File Server Priority
By default, the print server has higher priority than the file server. The print server is set by default to priority 2, whereas file server has priority 1. (Higher numbers equal higher priority.) This can cause printing activity to impede file server performance. You can raise file server priority to 2, at the expense of some loss of printing performance. Under the HKEY_LOCAL_MACHINE\SYSTEM\ CurrentControlSet\ Services\LanmanServer\Parameters key, add a new value entry called Thread-Priority. Set the data type to REG_DWORD and the value to 2.
Order Your SQL Fundamentals CD Today! Learn how to use SQL Server, understand Office integration techniques and dive into the essentials of SQL Express and Visual Basic with this free SQL Fundamentals CD.
You've Deployed SharePoint...Now What? This one-day free online conference delivers the technical knowledge needed to kick MOSS up a notch. In one information-packed day, independent SharePoint experts will present practical, real-world information and provide take-away, ready-to-use solutions
What Would You Do If You Ran Microsoft? ITTV's 2008 inaugural video contest, "If I Ran Microsoft..." is your chance to tell it like it is. Be goofy or be serious, but don"t miss this chance to have fun, win prizes, and go viral in a major way.
Maximize Your SharePoint Investment This web seminar discusses how true bi-directional replication of SharePoint content from one server to another enables branch offices to maintain access to current SharePoint content.