Alter.Org.UA
 << Back Home EN en   Donate Donate

Fast reboot NT4/w2k/XP/2003

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

Основная задумка - научить w2k/XP и более новые Windows перезагружаться мгновенно по Ctrl-Alt-Shift-Del как это было возможно в NT4.

Последняя версия - freboot_v2c.rar/tgz (33.3 Kb/44.3 Kb) А вот к ней исходники - freboot_v2c_src.rar/tgz (23.8 Kb/26.5 Kb)

Это утилита, позволяющая корректно производить мгновенную перезагрузку с возможностью сохранения User Profile (пользовательские настройки), а также нормальные операции shutdown/reboot/logoff/poweroff с возможностью принудительного завершения приложений.

freboot.exe без параметров или с ключиком -u входит в состояние ожидания комбинации Ctrl-Alt-Shift-Del, и как только эта комбинация будет нажата, производит мгновенную перезагрузку (~2-3 сек.). При этом все приложения завершаются принудительно, а если был использован ключ -u, то сохраняются и User Profile (пользовательские настройки) текущего пользователя (благодаря этому FReboot полезен и в NT4), после этого данные из системного кэша выписываются на диски, так что проблем с целостностью файловых систем (как при простом выключении питания или reset'е) не возникает.

Для работы этого режима необходимы права Администратора.
Все остальные ключи инициируют нормальный процесс shutdown/reboot/logoff/poweroff.

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

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

Install notes

setup.bat устанавливает FReboot.exe как автоматически запускаемое приложение. См. в Registry значение

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run],"FastReboot"
Эта строка говорит shell'у (explorer.exe) запустить FReboot.exe с некоторыми ключами. По умолчанию установлен ключ '-u' (ожидать Ctrl-Alt-Shift-Del + сохранение user profile). Если у вас запущены сервисы, требующие корректной остановки перед перезагрузкой, можно добавить команду '--script <script_full_path>' к строке "FastReboot" в Registry (смю выше). После этого FReboot будет исполнять указаный bat-файл или прилодение перед перезагрузкой. Например, я использую следующий bat-файл 'stop_crit_svc.bat':

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

при этом в Registry написано вот что:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
"FastReboot"="FReboot.exe -u --script C:\\Utils\\stop_crit_svc.bat"

Последняя версия основной утилиты - freboot_v2c.rar/tgz (33.3 Kb/44.3 Kb)


Плюс еще в процессе разработки возникли побочные продукты:
1. Утилита для перезагрузки NT4/w2k/XP из командной строки. Можно также создать shortcut на desktop'е и установить для него какой-нибудь hot-key (например Ctrl-Alt-Shift-\).
Последняя версия - FastReboot_v1c.rar/tgz (21.8 Kb/22.7 Kb)
PS. эта функциональность полностью включена в основной продукт, так что версия совсем последняя ;)
2. Утилита для сброса дискового кэша для NT4/w2k/XP из командной строки. В отличие от SysInternal'овской утилиты sync.exe позволяет работать со сменными носителями. Довольно полезна для Flash-disk'ов и CD/DVD-RW отформатированных по стандарту UDF.
Последняя версия - DSync_v1c.rar/tgz (27.8 Kb/29.4 Kb)
3. Утилита, выдающая список залогиненных в системе пользователей.
Последняя версия - EnumUsers_v1.rar/tgz (3 Kb/3.1 Kb)

Архив версий


В DSync.exe добавлено подавление неполезных виндовых табличек "А ну ка вставьте мне диск!" при обращении к пустому Removable drive. Вот новый exe-шник и исходники:
DSync_v1b.rar/tgz (27.8 Kb/29.4 Kb)
  • В связи с этим обновлен весь пакет Fast Reboot:
    freboot_v2c.rar/tgz (33.3 Kb/44.3 Kb) and freboot_v2c_src.rar/tgz (23.8 Kb/26.5 Kb)
    2005.04.12

    Исправлен баг в DSync.exe, связанный с возможностью сделать sync только для одного тома. Вот новый exe-шник и исходники:
    DSync_v1b.rar/tgz (27.8 Kb/29.4 Kb)
  • В связи с этим обновлен весь пакет Fast Reboot:
    freboot_v2b.rar/tgz (33.3 Kb/44.2 Kb) and freboot_v2b_src.rar/tgz (23.8 Kb/26.4 Kb)
    2004.10.26

    freboot_v2a.rar/tgz (33.3 Kb/44.3 Kb) and freboot_v2a_src.rar/tgz (23.7 Kb/26.4 Kb)
    Добавлена возможность запустить любую программу или bat-файл перед перезагрузкой. Например, если у вас работают сервисы, требующие коректной остановки (например Oracle или еще какие-нибудь БД), можно перед быстрой перезагрузкой запустить .bat-файл, который остановит эти сервисы. Это делается добавлением ключа '--script <script_full_path>' к командной строке (см. readme.txt)
  • Сделана защита от одновременного запуска нескольких копий FReboot.exe
    2004.09.03

    freboot_v1i.rar/tgz (31.5 Kb/42.4 Kb) and freboot_v1i_src.rar/tgz (21.8 Kb/23.3 Kb)
    I'm very sorry again...
    Проглядели уйму багов в коде, отвечающем за сохранение User Profiles. Оно мало того, что не работало, но еще и вводило систему в странное полуподвисшее состояние. Исправлено.
    2003.11.06(11)

    freboot_v1g.rar/tgz (31.1 Kb/41.9 Kb) and freboot_v1g_src.rar/tgz (21.2 Kb/22.5 Kb)
    I'm sorry...
    Исправлена бага, из-за которой не компилировалась PUHandler.dll, необходимая для сохранения User Profiles перед перезагрузкой.
    Также исправлен дистрибутив (по недосмотру PUHandler.dll в него ранее не входила).
    Убрал также зависимость исходников от наличия Platform SDK и XP DDK, точнее header'ов и lib'ы.
    2003.10.29

    freboot_v1f.rar/tgz (30 Kb/40.7 Kb) and freboot_v1f_src.rar/tgz (20.4 Kb/21.7 Kb)
    Добавлена возможность сделать мгновенную перезагрузку из командной строки (ключ -i). Вместе с этим ключем можно использовать и -u - сохранение User Profile.
    Исправлена бага, из-за которой в Release-версии не работали ключики в камандной строке.
    2003.10.21

    freboot_v1d2.rar/tgz (29.9 Kb/40.6 Kb) and freboot_v1d2_src.rar/tgz (20.2 Kb/21.4 Kb)
    Реализована основная задумка. Ура.
    DSync теперь sync'ает все диски (кроме A: и B:) если его запустить без параметров.
    Все побочные продукты идут в одном флаконе с основным.
    Разделены откомпилированные модули и исходники.
    2003.09.18

    FastReboot_v1c.rar/tgz (21.8 Kb/22.7 Kb)
    Исправлена обработка неправильных ключей в командной строке и добавлены иконки в сам EXE'шник. LNK файл теперь ссылается иконку внутри EXE'шника а не из shell32.dll.
    2003.08.24

    FastReboot_v1a.rar/tgz (19.6 Kb/20.3 Kb) содержит исходники, проектный файл для VC6, откомпилированную Release-версию и инсталлятор fshutdown.exe
    Это консольная утилита, позволяющая производить shutdown/reboot/logoff/poweroff с возможностью принудительного завершения приложений.
    fshutdown.exe воспринимает следующие ключи:
    -r reboot
    -s, -h shutdown
    -l logoff
    -p poweroff
    -f force applications to terminate
    setup.bat устанавливает на рабочий стол ссылку на fsutdown.exe -rf с горячими клавишами Ctrl-Alt-Shift-\.
    2003.07.26

    DSync_v1.rar/tgz (27.6 Kb/29.1 Kb) содержит исходники, проектный файл для VC6 и откомпилированную Release-версию DSync_v1.exe
    2003.06.03

    reboot_v1.rar/tgz (10 Kb/10.6 Kb) содержит исходники, проектный файл для VC6 и откомпилированную Release-версию reboot.exe
    2003.04.11

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

  • << Back Автор: Alter (Александр А. Телятников) Сервер: Apache+PHP под FBSD © 2002-2024