Boot.ini
boot.ini
Местонахождение
C:\ (в корневой папке системного диска)
Описание
Файл boot.ini имеет очень много настроек. Microsoft посвятила описанию настроек в данном файле целую страницу на своем сайте. Оставляю описание почти без изменений. Если есть желание, то можете присылать переводы
Доступные ключи для файла boot.ini (Windows XP и Windows Server 2003)
Вы можете добавлять в файл boot.ini различные ключи, которые используются при загрузке системы Windows XP или Windows Server 2003.
/3GB
This switch forces x86-based systems to allocate 3 GB of virtual address space to programs and 1 GB to the kernel and to executive components. A program must be designed to take advantage of the additional memory address space. With this switch, user mode programs can access 3 GB of memory instead of the usual 2 GB that Windows allocates to user mode programs. The switch moves the starting point of kernel memory to 3 GB. Some configurations of Microsoft Exchange Server 2003 and Microsoft Windows Server 2003 may require this switch.For additional information, click the following article number to view the article in the Microsoft Knowledge Base:
823440 You must use the /3GB switch when you install Exchange Server 2003 on a Windows Server 2003-based system
For additional information, click the following article number to view the article in the Microsoft Knowledge Base:
171793 Information on application use of 4GT RAM tuning
/basevideo
Ключ /basevideo позволяет загружаться с использованием основного стандартного драйвера VGA (640x480, 16 цветов). Этот режим полезен, если причиной неправильной загрузки Windows является новый драйвер для видеоадаптера. Основной драйвер видеоадаптера всегда используется при загрузке в безопасном режиме («Безопасный режим», «Безопасный режим с загрузкой сетевых драйверов» или «Безопасный режим с поддержкой командной строки»). Причиной сбое может быть неправильное разрешение экрана и частота развертки. Можно для удобства также использовать в связке ключ /sos.
/baudrate=number
This switch sets the baud rate of the debug port that is used for kernel debugging. For example, type /baudrate=9600. The default baud rate is 9600 kilobits per second (Kbps) if a modem is attached. The default baud rate is 115,200 Kbps for a null-modem cable. 9,600 is the normal rate for remote debugging over a modem. If this switch is in the Boot.ini file, the /debug switch is automatically enabled.
For additional information about modem configuration, click the following article number to view the article in the Microsoft Knowledge Base:
148954 How to set up a remote debug session using a modem
For additional information about null modem configuration, click the following article number to view the article in the Microsoft Knowledge Base:
151981 How to set up a remote debug session using a null modem cable
/bootlog
При использовании данного параметра система записывает в файл Windows\Ntbtlog.txt перечень всех драйверов и служб, которые были загружены (или не загружены). При загрузке компьютера в безопасном режиме, в безопасном режиме с загрузкой сетевых драйверов и в безопасном режиме с поддержкой командной строки в журнал загрузки добавляется список всех загружаемых драйверов и служб. Журнал загрузки полезен для определения точной причины неполадок при загрузке системы.
/bootlogo
Используется собственный экран загрузки в Windows XP или Windows Server 2003, вместо стандартного экрана с бегающей полоской индикатора. Предварительно следует создать 16-цветную растровую картинку размером 640x480 пикселов и сохранить ее в папке Windows под именем Boot.bmp. Затем добавить в boot.ini ключи "/bootlogo /noguiboot".
/break
Causes the hardware abstraction layer (HAL) to stop at a breakpoint at HAL initialization. The first thing the Windows kernel does when it initializes is to initialize the HAL, so this breakpoint is the earliest one possible. The HAL will wait indefinitely at the breakpoint until a kernel-debugger connection is made.
If the switch is used without the /DEBUG switch, the system will Blue Screen with a STOP code of 0x00000078 (PHASE0_ EXCEPTION).
/burnmemory=number
This switch specifies the amount of memory, in megabytes, that Windows cannot use. Use this parameter to confirm a performance problem or other problems that are related to RAM depletion. For example, type /burnmemory=128 to reduce the physical memory that is available to Windows by 128 MB./CHANNEL=
Used on conjunction with /DEBUGPORT=1394 to specify the IEEE 1394 channel through which kernel debugging communications will flow. This can be any number between 0 and 62 and defaults to 0 if not set. Use this switch together with the /debug switch and the /debugport switch to configure Windows to send debug information over an Institute of Electrical and Electronics Engineers, Inc. (IEEE) 1394 port. To support debugging over a 1394 port, both computers must be running Microsoft Windows XP or later. The 1394 port has a maximum number of 63 independent communications channels that are numbered 0 through 62. Different hardware implementations support a different number of channels across one bus. Windows XP has a limit of four destination computers. However, this limitation is removed in Windows Server 2003. To perform debugging, select a common channel number to use on both the computer that the debugger runs on, which is also known as the host computer, and the computer that you want to debug, which is also known as the destination computer. You can use any number from 1 to 62.
To configure the destination computer
To configure the host computer
set_NT_DEBUG_1394_CHANNEL=x
kd -k
kd.exe
/CLKLVL
Causes the standard x86 multiprocessor HAL (Halmps.dll) to configure itself for a level-sensitive system clock rather then an edge-triggered clock. Level-sensitive and edge-triggered are terms used to describe hardware interrupt types.
/CMDCONS
Passed when booting with into the Recovery Console (described later in this chapter).
/crashdebug
This switch loads the kernel debugger when you start the operating system. The switch remains inactive until a Stop message error occurs. /crashdebug is useful if you experience random kernel errors. With this switch, you can use the COM port for normal operations while Windows is running. If Windows crashes, the switch converts the port to a debug port. (This action turns on remote debugging.)
For additional information, click the following article number to view the article in the Microsoft Knowledge Base: 151981 How to set up a remote debug session using a null modem cable
/debug
This switch turns on the kernel debugger when you start Windows. The switch can be activated at any time by a host debugger that is connected to the computer, if you want to turn on live remote debugging of a Windows system through the COM ports.
Unlike the /crashdebug switch, /debug uses the COM port whether you are debugging or not. Use this switch when you are debugging problems that are regularly reproducible.
For additional information about remote debugging, click the following article number to view the article in the Microsoft Knowledge Base: 121543 Setting up for remote debugging
/debugport=comnumber
This switch specifies the communications port to use for the debug port, where number is the communications port, such as COM1, that you want to use. By default, /debugport uses COM2 if it exists. Otherwise, the switch uses COM1. If you include this switch in the Boot.ini file, the /debug switch becomes active.
For additional information, click the following article number to view the article in the Microsoft Knowledge Base: 151981 How to set up a remote debug session using a null modem cable
/EXECUTE
This option disables no-execute protection. See the /NOEXECUTE switch for more information.
/fastdetect:comnumber
This switch turns off serial and bus mouse detection in the Ntdetect.com file for the specified port. Use this switch if you have a component other than a mouse that is attached to a serial port during the startup process. For example, type /fastdetect:comnumber, where number is the number of the serial port. Ports may be separated with commas to turn off more than one port. If you use /fastdetect, and you do not specify a communications port, serial mouse detection is turned off on all communications ports.
Note In earlier versions of Windows, including Windows NT 4.0, this switch was named /noserialmice.
For additional information, click the following article number to view the article in the Microsoft Knowledge Base:
131976 How to disable detection of devices on serial ports
The reason the qualifier exists (vs. just having NTDETECT perform this operation by default) is so that NTDETECT can support booting Windows NT 4. Windows Plug and Play device drivers perform detection of parallel and serial devices, but Windows NT 4 expects NTDETECT to perform the detection.
Thus, specifying / FASTDETECT causes NTDETECT to skip parallel and serial device enumeration (actions that are not required when booting Windows), whereas omitting the switch causes NTDETECT to perform this enumeration (which is required for booting Windows NT 4).
/HAL=filename
With this switch, you can define the actual hardware abstraction layer (HAL) that is loaded at startup. For example, type /HAL=halmps.dll to load the Halmps.dll in the System32 folder. This switch is useful to try out a different HAL before you rename the file to Hal.dll. This switch is also useful when you want to try to switch between starting in multiprocessor mode and starting in single processor mode. To do this, use this switch with the /kernel switch./INTAFFINITY
Directs the standard x86 multiprocessor HAL (Halmps.dll) to set interrupt affinities such that only the highest numbered processor will receive interrupts. Without the switch, the HAL defaults to its normal behavior of letting all processors receive interrupts.
/kernel=filename
With this switch, you can define the actual kernel that is loaded at startup. For example, type /kernel=ntkrnlmp.exe to load the Ntkrnlmp.exe file in the System32 folder. With this switch, you can switch between a debug-enabled kernel that is full of debugging code and a regular kernel.
Enable you to override Ntldr's default filename for the kernel image (Ntoskrnl.exe) and/or the HAL (Hal.dll). These options are useful for alternating between a checked kernel environment and a free (retail) kernel environment or even to manually select a different HAL. If you want to boot a checked environment that consists solely of the checked kernel and HAL, which is typically all that is needed to test drivers, follow these steps on a system installed with the free build:
• Copy the checked versions of the kernel images from the checked build CD to your \Windows\System32 directory, giving the images different names than the default. For example, if you're on a uniprocessor, copy Ntoskrnl.exe to Ntoschk.exe and Ntkrnlpa.exe to Ntoschkpa.exe.
If you're on a multiprocessor, copy Ntkrnlmp.exe to Ntoschk.exe and Ntkrpamp.exe to Ntoschkpa.exe. The kernel filename must be an 8.3-style short name.
• Copy the checked version of the appropriate HAL needed for your system from \I386\Driver.cab on the checked build CD to your \Windows\System32 directory, naming it Halchk.dll. To determine which HAL to copy, open \Windows\Repair\Setup.log and search for Hal.dll; you'll find a line like \WINDOWS\system32\ hal.dll="halacpi.dll","1d8a1". The name immediately to the right of the equals sign is the name of the HAL you should copy. The HAL filename must be an 8.3-style short name.
• Make a copy of the default line in the system's Boot.ini file.
• In the string description of the boot selection, add something that indicates that the new selection will be for a checked build environment (for example, “Windows XP Professional Checked”).
• Add the following to the end of the new selection's line: /KERNEL=NTOSCHK.EXE /HAL= HALCHK.DLL
Now when the selection menu appears during the boot process you can select the new entry to boot a checked environment or select the entry you were using to boot the free build.
/LASTKNOWNGOOD
Causes the system to boot as if the LastKnownGood boot option was selected.
/maxmem=number
This switch specifies the maximum amount of RAM that Windows can use. Do not make this setting less than 12. Use this parameter to confirm whether a memory chip is faulty. For example, if you have a 128-megabyte (MB) system that is equipped with two 64-MB RAM modules, and you are experiencing memory-related Stop messages, you can type /maxmem=64. If the computer starts Windows and operates without problems, replace the first module to see if this action resolves the problem.
For additional information, click the following article number to view the article in the Microsoft Knowledge Base:
108393 MAXMEM option in Windows NT Boot.ini file
/MAXPROCSPERCLUSTER=
For the standard x86 multiprocessor HAL (Halmps.dll), forces cluster-mode Advanced Programmable Interrupt Controller (APIC) addressing (not supported on systems with an 82489DX external APIC interrupt controller).
/MININT
This option is used by Windows PE (Preinstallation Environment) and causes the Configuration Manager to load the Registry SYSTEM hive as a volatile hive such that changes made to it in memory are not saved back to the hive image.
/NODEBUG
Prevents kernel-mode debugging from being initialized. Overrides the specification of any of the three debug-related switches, /DEBUG, /DEBUGPORT, and /BAUDRATE.
/NOEXECUTE
This option is only available on 32-bit versions of Windows when running on processors supporting no-execute protection. It enables no-execute protection (also known as Data Execution Protection - DEP), which results in the Memory Manager marking pages containing data as no-execute so that they cannot be executed as code. This can be useful for preventing malicious code from exploiting buffer overflow bugs with unexpected program input in order to execute arbitrary code. No-execute protection is always enabled on 64-bit versions of Windows on processors that support no-execute protection. There are several options you can specify with this switch:
/NOEXECUTE=OPTIN Enables DEP for core system images and those specified in the DEP configuration dialog. /NOEXECUTE=OPTOUT Enables DEP for all images except those specified in the DEP configuration dialog. /NOEXECUTE=ALWAYSON Enables DEP on all images. /NOEXECUTE=ALWAYSOFF Disables DEP.
/noguiboot
Данный ключ позволяет отключить загрузочный экран, в котором вы обычно видите логотип Windows XP и индикатор прогресса.
/nodebug
This switch turns off debugging. This scenario can cause a Stop error if a program has a debug hardcoded breakpoint in its software.
/NOLOWMEM
Requires that the /PAE switch be present and that the system have more than 4 GB of physical memory. If these conditions are met, the PAE-enabled version of the Windows kernel, Ntkrnlpa.exe, won't use the first 4 GB of physical memory. Instead, it will load all applications and device drivers, and allocate all memory pools, from above that boundary.
This switch is useful only to test device driver compatibility with large memory systems.
/NOPAE
Forces Ntldr to load the non-Physical Address Extension (PAE) version of the Windows kernel, even if the system is detected as supporting x86 PAEs and has more than 4 GB of physical memory.
/NOSERIALMICE=[COMx | COMx,y,z...]
Obsolete Windows NT 4 qualifier—replaced by the absence of the /FASTDETECT switch. Disables serial mouse detection of the specified COM ports. This switch was used if you had a device other than a mouse attached to a serial port during the startup sequence. Using /NOSERIALMICE without specifying a COM port disables serial mouse detection on all COM ports. See Microsoft Knowledge Base article Q131976 for more information.
/numproc=number
This switch sets the number of processors that Windows will run at startup. With this switch, you can force a multiprocessor system to use only the quantity of processors (number) that you specify. This switch can help you troubleshoot performance problems and defective CPUs./ONECPU
Causes Windows to use only one CPU on a multiprocessor system.
/PAE
Causes Ntldr to load Ntkrnlpa.exe, which is the version of the x86 kernel that is able to take advantage of x86 PAEs. The PAE version of the kernel presents 64-bit physical addresses to device drivers, so this switch is helpful for testing device driver support for large memory systems. Use the /PAE switch with the corresponding entry in Boot.ini to permit a computer that supports physical address extension (PAE) mode to start normally. In Safe Mode, the computer starts by using normal kernels, even if the /PAE switch is specified.
/pcilock
For x86-based systems, this switch stops the operating system from dynamically assigning hardware input, hardware output, and interrupt request resources to Peripheral Connect Interface (PCI) devices. With this switch, the BIOS configures the devices./RDPATH=
Specifies the path to a System Disk Image (SDI) file, which can be on the network, that the system will use to boot from.
Often used in conjunction with the /RDIMAGEOFFSET= flag to indicate to NTLDR where in the file the system image starts.
/REDIRECT
Introduced with Windows XP. Used to cause Windows to enable Emergency Management Services (EMS) that reports boot information and accepts system management commands through a serial port. Specify serial port and baudrate used in conjunction with EMS with redirect= and redirectbaudrate= lines in the [boot loader] section of the Boot.ini file.
Use this switch to turn on Emergency Management Services (EMS) on a Windows Server 2003, Enterprise Edition-based computer. For additional information about EMS, search on "Emergency Management Services" in Windows Help and Support.
To turn on EMS by editing the Boot.ini on an x86-based computer, edit both the [boot loader] section and the [operating systems] section of the Boot.ini file. To do this, configure the following entries:
- Under [boot loader], add one of the following required statements: redirect=COMxIn this statement, replace x with one of the following COM port numbers:
1
2
3
4
redirect=USEBIOSSETTINGSThis statement permits the computer BIOS to determine the COM port to use for EMS. - Under [boot loader], add the following option statement:redirectbaudrate=baudrateReplace baudrate with one of the following values:
9600
19200
57600
115200
By default, EMS uses the 9600 Kbps baud rate setting. - Under [operating systems], add the /redirect option to the operating system entry that you want to configure to use EMS. The following example illustrates the use of these switches: [boot loader] timeout=30 default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS redirect=COM1 redirectbaudrate=19200 [operating systems] multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows Server 2003, Enterprise" /fastdetect multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows Server 2003, EMS" /fastdetect /redirect
/safeboot:parameter
This switch causes Windows to start in Safe Mode. This switch uses the following parameters:- minimal
- network
- safeboot:minimal(alternateshell)
- Safe Mode with Networking
/safeboot:minimal /sos /bootlog /noguiboot - Safe Mode with Networking
/safeboot:network /sos /bootlog /noguiboot - Safe Mode with Command Prompt
/safeboot:minimal(alternateshell) /sos /bootlog /noguiboot
Specifies options for a safe boot. You should never have to specify this option manually, since Ntldr specifies it for you when you use the F8 menu to perform a safe boot. (A safe boot is a boot in which Windows only loads drivers and services that are specified by name or group under the Minimal or Network registry keys under HKLM\SYSTEM\CurrentControlSet\Control\SafeBoot.) Following the colon in the option you must specify one of three additional switches: MINIMAL, NETWORK, or DSREPAIR. The MINIMAL and NETWORK flags correspond to safe boot with no network and safe boot with network support, respectively. The DSREPAIR (Directory Services Repair) switch causes Windows to boot into a mode in which it restores the Active Directory directory service from a backup medium you present. An additional option you can append is (ALTERNATESHELL), which tells Windows to use the program specified by the HKLM\SYSTEM\CurrentControlSet\ SafeBoot\AlternateShell value as the graphical shell rather than to use the default, which is Windows Explorer.
/SCSIORDINAL:
Directs Windows to the SCSI ID of the controller. (Adding a new SCSI device to a system with an on-board SCSI controller can cause the controller's SCSI ID to change.) See Microsoft Knowledge Base article Q103625 for more information.
/SDIBOOT=
Used in Windows XP Embedded systems to have Windows boot from a RAM disk image stored in the specified System Disk Image (SDI) file.
/sos
The /sos switch displays the device driver names while they are being loaded. By default, the Windows Loader screen only echoes progress dots. Use this switch with the /basevideo switch to determine the driver that is triggering a failure.
For additional information, click the following article number to view the article in the Microsoft Knowledge Base:
99743 Purpose of the Boot.ini file in Windows 2000 or Windows NT
/userva
Use this switch to customize the amount of memory that is allocated to processes when you use the /3GB switch. This switch permits more page table entry (PTE) kernel memory but still maintains almost 3 GB of process memory space.
For additional information about how to use the /USERVA switch, click the following article number to view the article in the Microsoft Knowledge Base:
316739 How to use the /USERVA switch in the Boot.ini file to tune /3GB configurations
For additional information, click the following article numbers to view the articles in the Microsoft Knowledge Base:
810371 XADM: Using the /userva switch on Windows Server 2003-based Exchange Servers
323427 HOW TO: Manually edit the Boot.ini file in a Windows Server 2003 environment
317526 HOW TO: Edit the Boot.ini file in Windows Server 2003
317521 Description of the Bootcfg command and its uses
289022 HOW TO: Edit the Boot.ini file in Windows XP
291980 A discussion about the Bootcfg command and its uses
/WIN95
Directs Ntldr to boot the Consumer Windows boot sector stored in Bootsect.w40. This switch is pertinent only on a triple-boot system that has MS-DOS, Consumer Windows, and Windows installed. See Microsoft Knowledge Base article Q157992 for more information.
/WIN95DOS
Directs Ntldr to boot the MS-DOS boot sector stored in Bootsect.dos. This switch is pertinent only on a triple-boot system that has MS-DOS, Consumer Windows, and Windows installed.See Microsoft Knowledge Base article Q157992 for more information.
/YEAR=
Instructs the Windows core time function to ignore the year that the computer's real-time clock reports and instead use the one indicated. Thus, the year used in the switch affects every piece of software on the system, including the Windows kernel. Example: /YEAR=2001. (This switch was created to assist in Y2K testing.)