Файл Boot.ini в Windows Xp
Строение файла BOOT.INI в простейшем случае, с одной
операционной системой на диске ПК
Intel х86, выглядит следующим образом:
[boot loader]
timeout=5
default=multi(0)disk(0)rdisk(0)partition(1)\WINNT
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINNT="Windows XP Professional" /fastdetect
timeout=5
default=multi(0)disk(0)rdisk(0)partition(1)\WINNT
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINNT="Windows XP Professional" /fastdetect
Как можно заметить, в
данных примерах раздел [boot loader] служит для задания двух параметров
загрузки операционной системы, в частности, параметр «timeout=5» определяет
количество секунд, в течение которого пользователь имеет возможность выбрать
либо загружаемую ОС, либо один из пунктов загрузочного меню (например,
загрузить систему в режиме защиты от сбоев). При «timeout=0» загрузочное меню
не отображается, а при «timeout=-1» это меню будет находиться на экране
неограниченное время в ожидании выбора пользователя. Каждый пользователь волен
выставить это время по своим вкусам — для меня удобной цифрой является 5
секунд. По умолчанию же задержка составляет 30 секунд, максимум — 999.
Параметр «default=» определяет путь к загружаемой по умолчанию операционной системе. Путь этот в случае с Windows NT задаётся в формате ARC (Advanced RISC Computing), о правилах которого чуть ниже.
В разделе [operating systems] находятся сведения об установленных операционных системах, на основании которых и формируется загрузочное меню. Так, в каждой строке этого раздела прописан путь ARC к загрузочному разделу Windows NT плюс имя папки Windows и текст, отображаемый в соответствующей этой операционной системе строке загрузочного меню, плюс некоторые параметры, используемые при выборе данной системы. Учтите, что ARC-путь (кроме имени папки и названия ОС) должен быть записан маленькими (строчными) буквами.
Параметр «default=» определяет путь к загружаемой по умолчанию операционной системе. Путь этот в случае с Windows NT задаётся в формате ARC (Advanced RISC Computing), о правилах которого чуть ниже.
В разделе [operating systems] находятся сведения об установленных операционных системах, на основании которых и формируется загрузочное меню. Так, в каждой строке этого раздела прописан путь ARC к загрузочному разделу Windows NT плюс имя папки Windows и текст, отображаемый в соответствующей этой операционной системе строке загрузочного меню, плюс некоторые параметры, используемые при выборе данной системы. Учтите, что ARC-путь (кроме имени папки и названия ОС) должен быть записан маленькими (строчными) буквами.
Если вы вдруг утратили файл BOOT.INI, то
самое сложное при его ручном восстановлении — правильно воссоздать путь к
загрузочному разделу в формате ARC. Путь этот может начинаться либо с метки
multi(), либо с метки signature(). Метку multi() можно наблюдать в подавляющем
большинстве случаев, применяется она для дисков IDE, ESDI, SCSI в тех случаях,
когда ОС для своей загрузки использует механизмы системного BIOS (прерывание
INT13). При таком раскладе запись пути к загрузочному диску и к директории
загружаемой операционной системы в файле BOOT.INI будет выглядеть следующим
образом:
multi(0)disk(0)rdisk(X)partition(Y)\ИМЯ_КАТАЛОГА_WINDOWS="НАЗВАНИЕ_ОС,
ОТОБРАЖАЕМОЕ_В_ЗАГРУЗОЧНОМ_МЕНЮ" /ПАРАМЕТР
Здесь:
·
multi(0) указывает порядковый номер адаптера, с
которого осуществляется загрузка, и всегда имеет значение «0» (нумерация
начинается с нуля, начиная с контроллера, расположенного ближе к слоту 0 на
материнской плате);
·
disk(0) — всегда равен нулю, так как прерывание
INT13 не может использоваться для идентификации нескольких дисковых
контроллеров (для большинства BIOS);
·
rdisk(X) — определяет порядковый номер жёсткого
диска, с которого производится загрузка, нумерация начинается с 0, и обычно X —
число от 0 до 3;
·
partition(Y) — порядковый номер раздела жёсткого диска,
с которого загружается ОС, нумерация начинается с 1 (соответствует диску С: в
привычном обозначении), в первую очередь нумеруются первичные разделы, затем
идут логические диски. Не нумеруются расширенные разделы MS-DOS (тип 5) и
разделы типа 0 — неиспользуемые.
Формат записи, начинающийся с метки
signature() (ранее, в NT для этого служила метка scsi(), теперь применяется
signature(), поддерживающая работу с механизмами Plug-n-Play Windows 2000/XP)
встречается реже и используется при работе как со SCSI-дисками (если у
контроллера SCSI отключен BIOS), так и с IDE-дисками в отсутствие поддержки
INT13. В этом случае запись в BOOT.INI принимает такой вид:
signature(X)disk(Y)rdisk(Z)partition(W)\ИМЯ_КАТАЛОГА_WINDOWS="НАЗВАНИЕ_ОС,
ОТОБРАЖАЕМОЕ_В_ЗАГРУЗОЧНОМ_МЕНЮ" /ПАРАМЕТР
Здесь:
·
signature(X) — указывает уникальную сигнатуру диска
(шестнадцатеричное число — signature(8b467c12)), содержащуюся в его MBR.
Сигнатура эта вписывается в главную загрузочную запись диска в процессе
установки Windows, в начале её текстового этапа (и может быть повреждена,
например, вирусом — в этом случае вам потребуется изучить документ http://support.microsoft.com/default.aspx?scid=kb;en-us;Q119467);
·
disk(Y) — идентификатор SCSI ID жёсткого диска;
·
rdisk(Z) — номер SCSI LUN (Logical Unit Number)
жёсткого диска, практически всегда это 0;
·
partition(W) — порядковый номер раздела жёсткого диска,
с которого загружается ОС, нумерация начинается с 1, в первую очередь
нумеруются первичные разделы, затем идут логические диски. Не нумеруются
расширенные разделы MS-DOS (тип 5) и разделы типа 0 — неиспользуемые.
В конце каждой строки с ARC-путём допускается указывать необязательные
ключи запуска
Windows. Строчные и заглавные буквы в этих параметрах не
различаются. По умолчанию в
Windows XP/2000 на современных машинах обычно
используется один параметр — /fastdetect
(впервые появился в Windows 2000),
запрещающий поиск мыши на отмирающих COM-портах
/BASEVIDEO — использовать в графическом режиме драйвер стандартного
VGA-видеоадаптера. Позволяет решить проблемы со сбойным видеодрайвером.
Подробнее — http://support.microsoft.com/default.aspx?scid=kb;en-us;Q126690.
/BAUDRATE=xxxxx — скорость (в бодах) передачи данных в
отладочном режиме. По умолчанию при работе с модемом в режиме отладки
скорость 9600, при работе с нуль-модемным кабелем — 19200. Пример:
«/BAUDRATE=115200». При использовании этого параметра автоматически активируется
ключ /DEBUG. Подробнее — http://support.microsoft.com/default.aspx?scid=kb;en-us;Q148954
и http://support.microsoft.com/default.aspx?scid=kb;en-us;Q151981.
/BOOTLOG — включает протоколирование хода загрузки драйверов в
файл %SystemRoot%\NTBTLOG.TXT (формат текста — UNICODE). Полезен при выявлении
сбойного драйвера.
Пример протокола:
Microsoft (R) Windows NT (R) Version 5.0
Loaded driver \WINNT\System32\ntoskrnl.exe
Loaded driver \WINNT\System32\hal.dll
Loaded driver \WINNT\System32\BOOTVID.dll
Loaded driver pci.sys
Loaded driver isapnp.sys
Loaded driver intelide.sys
...
Loaded driver \WINNT\System32\ntoskrnl.exe
Loaded driver \WINNT\System32\hal.dll
Loaded driver \WINNT\System32\BOOTVID.dll
Loaded driver pci.sys
Loaded driver isapnp.sys
Loaded driver intelide.sys
...
/CRASHDEBUG — предписывает загружать программный модуль отладки
ядра, который активизируется при ошибках в ядре ОС. Подробнее — http://support.microsoft.com/default.aspx?scid=kb;en-us;Q151981.
/DEBUG — предписывает загружать программный модуль отладки ядра,
активизация которого может производиться по команде удалённого отладчика.
Подробнее — http://support.microsoft.com/default.aspx?scid=kb;en-us;Q121543.
/DEBUGPORT=COMx — предписывает загружать программный модуль
отладки ядра и определяет последовательный порт, используемый для отладки (по
умолчанию COM1). Пример: «/DEBUGPORT=COM2». При использовании этого параметра
автоматически активируется ключ /DEBUG. Если в системе присутствует контроллер
FireWire, то в Windows XP допускается устанавливать параметр «/DEBUGPORT=1394»,
в этом случае можно указать и ещё один переключатель — «/CHANNEL=X», где «X» —
номер канала (от 1 до 62), использованный при настройке хоста. Подробнее — http://support.microsoft.com/default.aspx?scid=kb;en-us;Q151981.
/MAXMEM= ограничивает объём используемой оперативной памяти (в
мегабайтах). Пример: «/MAXMEM=16». Полезен для выявления дефектного модуля
памяти. Подробнее — http://support.microsoft.com/default.aspx?scid=kb;en-us;Q108393.
/NODEBUG — запрещает использование режима отладки,
отменяет действие ключей /DEBUG, /DEBUGPORT и /BAUDRATE
/BREAK — предписывает остановить инициализацию HAL в точке останова и
ожидать подключения отладчика. При использовании без ключа /DEBUG будет
отображён синий экран BSOD с кодом останова.
/SOS — включает отображение названий загружаемых драйверов при
загрузке ОС. Полезен для выявления сбойного драйвера. Подробнее — http://support.microsoft.com/default.aspx?scid=kb;en-us;Q99743.
/PAE — включает использование механизмов PAE (Physical Address
Extension), даже если установлено менее 4 Гб оперативной памяти. При этом
загружается ядро ntkrnlpa.exe, позволяющее системам x86 использовать до 64 Гб
оперативной памяти (стандартный лимит x86 — 4Гб). При загрузке в режиме защиты
от сбоев игнорируется. Используется обычно в тестовых целях.
/NOPAE — запрещает использование PAE на системах с памятью более 4Гб,
поддерживающих PAE.
/NOLOWMEM — на системах с поддержкой PAE и памятью более 4Гб
запрещает использование первых 4Гб памяти. Используется в целях тестирования и
требует наличия переключателя /PAE.
/NOGUIBOOT — запрещает использование VGA-драйвера на этапе
загрузки системы — при этом не будет отображаться графическая заставка, и при
сбоях не будут выводиться синие экраны BSOD, за показ которых также отвечает
VGA-драйвер.
/SAFEBOOT: — принудительная загрузка в режиме защиты от сбоев.
Имеет три переключателя, задаваемых после двоеточия:
/SAFEBOOT:MINIMAL — загрузка без поддержки сети
/SAFEBOOT:NETWORK — загрузка с поддержкой сети
/SAFEBOOT:DSREPAIR — загрузка Windows 2000 Server в режиме восстановления службы каталога (Active Directory Services Repair) из резервной копии.
/SAFEBOOT:NETWORK — загрузка с поддержкой сети
/SAFEBOOT:DSREPAIR — загрузка Windows 2000 Server в режиме восстановления службы каталога (Active Directory Services Repair) из резервной копии.
При указании дополнительной опции —
(ALTERNATESHELL) (например — «/SAFEBOOT:MINIMAL(ALTERNATESHELL)», без пробела)
вместо Explorer будет загружена альтернативная графическая оболочка, указанная
в разделе реестра HKLM\System\CurrentControlSet\SafeBoot\AlternateShell
/YEAR= — предписывает игнорировать год, выдаваемый встроенными часами
ПК, и использовать год, указанный в значении данного параметра. Работает,
начиная с WindowsNT SP4.
/USE8254 — на системах с устаревшим BIOS сообщает ядру ОС, что
на ПК установлен таймер на основе чипа 8254. Подробнее — http://support.microsoft.com/support/kb/articles/q169/9/01.asp.
/ONECPU — на мультипроцессорных системах запрещает системе использовать
более одного процессора. Подробнее — http://support.microsoft.com/default.aspx?scid=kb;en-us;Q157992.
/NUMPROC= на мультипроцессорных системах ограничивает числе
используемых процессоров. Например: /NUMPROC=2 на 4-х процессорном ПК запрещает
системе работать с двумя из 4 процессоров.
/3GB — начиная с NT 4.0 SP3 перераспределяет использование
виртуального адресного пространства таким образом, чтобы приложениям выделялось
3Гб, а системе — 1Гб (по умолчанию всем выделяется по 2Гб). Применим к Windows 2000 Advanced Server и Datacenter
Server. Подробнее — http://support.microsoft.com/default.aspx?scid=kb;en-us;Q171793.
/WIN95DOS — в системах с тройной загрузкой — DOS, Win9x и Windows NT задаёт загрузку загрузочного сектора DOS (файл BOOTSECT.DOS). Подробнее — http://support.microsoft.com/support/kb/articles/q157/9/92.asp.
/WIN95 — в системах с тройной загрузкой — DOS, Win9x и Windows NT
задаёт загрузку загрузочного сектора Win9x (файл BOOTSECT.W40). Подробнее — http://support.microsoft.com/support/kb/articles/q157/9/92.asp.
/PERFMEM= и /PERFPAGES= — некие отладочные параметры бета-версий
Windows 2000, определяют резервируемую память и число страниц. Не актуальны.
/HAL=<имя файла> — использование альтернативной версии HAL
вместо HAL.DLL.
/KERNEL=<имя файла> — использование альтернативной версии ядра
ОС вместо NTOSKRNL.EXE. Последнее время модно использовать для смены
загрузочной заставки-логотипа Windows, «зашитой» в NTOSKRNL.EXE и заменяемой
утилитами типа Restorator.
/NOSERIALMICE=[COMx | COMx,y,z...] — отключает
обнаружение мыши на COM-портах. При использовании без указания номера порта,
обнаружение отключается для всех COM-портов. Применяется при наличии
альтернативных устройств, подключённых к последовательным портам во время
загрузки ОС. Подробнее — http://support.microsoft.com/default.aspx?scid=kb;en-us;Q131976.
/PCILOCK — запрещает Windows динамически назначать IO/IRQ
ресурсы для PCI оборудования и оставляет конфигурацию, присутствующую в CMOS
Setup. Подробнее — http://support.microsoft.com/default.aspx?scid=kb;en-us;Q148501.
/SCSIORDINAL: — используется для указания SCSI ID контроллера в
случае, если добавление нового устройства SCSI в систему со встроенным
контроллером SCSI может изменить SCSI ID контроллера. Подробнее в статье http://support.microsoft.com/support/kb/articles/q103/6/25.asp.
/BURNMEMORY= ограничивает объём используемой памяти подобно
параметру /MAXMEM: при указании «/BURNMEMORY=128» будут отброшены 128 мегабайт
памяти из имеющегося в наличии объёма RAM. Объём памяти указывается в
мегабайтах.
/INTAFFINITY — заставляет мультипроцессорный HAL (HALMPS.DLL)
устанавливать прерывания таким образом, чтобы только процессор с самым большим
номером в SMP получал прерывания.
/MAXPROCSPERCLUSTER= — устанавливает ограничения процессоров в
кластерной системе. Не актуально на персональных системах.
/TIMERES=X — в мультипроцессорных системах устанавливает
разрешение системного таймера. По умолчанию разрешение таймера 7.8ms. Параметр
X измеряется в сотнях миллисекунд и поддерживаются следующие значения:
X=сотен миллисекунд
|
миллисекунд
|
9766
|
0.98
|
19532
|
2.0
|
39063
|
3.9
|
78125
|
7.8
|
Все эти параметры, если необходимо
задать сразу несколько переключателей, прописываются последовательно друг за
другом через пробел и слеш:
/safeboot:minimal(alternateshell)
/sos /bootlog /noguiboot
Комментариев нет:
Отправить комментарий