Fast reboot NT4/w2k/XP/2003

by Axxie (axxieX@mail.ru (remove X)), Alter (alterX@alter.org.ua (remove X))

Эта утилита умеет

  • корректно производить мгновенную перезагрузку с возможностью сохранения User Profile (пользовательские настройки), а также нормальные операции shutdown/reboot/logoff/poweroff, по нажатию комбинации клавиш Ctrl-Alt-Shift-Del и из командной строки.
  • перезагружаться в произвольную ОС, описаную в BOOT.INI при нажатии Ctrl-Alt-Shift-Break. Ждать появления загрузочного меню имени WinNT и выбирать там нужный пункт не потребуется :)
  • принудительного закрывать приложения при завершении работы.

Использование

freboot.exe без параметров при первом запуске показывает диалог настройки. Если freboot.exe уже установлен, он запустится в соответствии с параметрами, прописаными в реестре, см. в Registry значение

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run],"FastReboot"

Диалог настройки можно также вызвать при помощи ключа --setup

Ключи -q (Quick Reboot) и -m (Reboot Manager) включают ожидание комбинаций Ctrl-Alt-Shift-Del и Ctrl-Alt-Shift-Break соответственно. Ctrl-Alt-Shift-Del вызывает быструю перезагрузку или выключение компьютера в соответствии с дополнительными ключами -r, -s, -p, -l. Ctrl-Alt-Shift-Break вызывает меню выбора ОС, в которую нужно перезагрузиться. Список ОС строится на основе содержимого BOOT.INI. После выбора нужной ОС freboot.exe перестраивает BOOT.INI и инициирует быструю перезагрузку, как при нажатии Ctrl-Alt-Shift-Del. Основным преимуществом будет то, что не придется ждать появления WinNT'шного boot-manager'а и выбирать в нем нужный пункт.

Ключ -f вызывает принудительное завершение всех приложений перед выходом из системы.

При использовании -u перед перезагрузкой будет сохранен User Profile текущего пользователя (благодаря этому FReboot полезен и в NT4).

Для работы быстрой перезагрузки необходимы права Администратора.
При запуске без -q, -m и -u инициируется нормальный процесс shutdown/reboot/logoff/poweroff.

Если у вас запущены сервисы, требующие корректной остановки перед перезагрузкой, можно добавить ключик '--script <script_full_path>'. После этого FReboot будет исполнять указаный bat-файл или приложение перед перезагрузкой. Например, я использую следующий bat-файл 'stop_crit_svc.bat':

net stop "Apache"
net stop "OracleServiceRECOGN"
net stop "OracleOraHome81TNSListener"

Список всех доступных ключей:

ключ описание
<none> перейти в режим ожидания и при нажатии Ctrl-Alt-Shift-Del сохранить данные на диски и произвести мгновенную перезагрузку
-i мгновенная перезагрузка (может быть использована совместно с -u)
-q инициировать быструю перезагрузку при нажатии Ctrl-Alt-Shift-Del
-m вызвать меню выбора ОС, в которую нужно перезагрузиться при нажатии Ctrl-Alt-Shift-Break
-r перезагрузка (reboot)
-s завершение работы (shutdown)
-l закрытие рабочей сессии (logoff)
-p выключение питания
-u при быстрой перезагрузке сохранить User Profiles (пользовательские настройки)
-f принудительное завершение приложений
--script <script_path> запустить указаное приложение или bat-файл перед перезагрузкой
--setup запустить конфигуратор в граф. режиме

Install notes

setup.bat запускает встроеный конфигуратор FReboot.exe. По окончанию работы конфигуратора в Registry устанавливаются 2 значения.

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run],"FastReboot"

Эта строка говорит shell'у (explorer.exe) запустить FReboot.exe с некоторыми ключами.

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment],"BootDrive"

Это значение определяет системную переменную BootDrive, которую FReboot использует для поиска BOOT.INI.



Предложения и исправления слать на axxieX@mail.ru (remove X) , alterX@alter.org.ua (remove X)