Автоматический перезапуск службы Windows
- Recluse
- 19.10.2022
- 6 573
- 1
- 17.06.2023
- 4
- 4
- 0
Службами в Windows называют программы, которые работают в фоновом режиме, и обычно не требуют никакого взаимодействия с пользователем. Чаще всего, в роли служб выступают какие-то важные программы, которым необходимо быть постоянно запущенными. Однако, поскольку никто не застрахован от каких-либо ошибок в работе аппаратных или программных средств компьютера, такая программа может завершить свою работу в самый неподходящий момент. Чтобы избежать столь неприятного поворота событий, в настройках служб Windows предусмотрена возможность настройки перезапуска служб, в случае её непредвиденного завершения работы.
Настройка перезапуска службы Windows
- Открываем консоль управления службами, и находим нужную службу.
- Открываем свойства нужной службы, и переходим на вкладку "Восстановление".
- На данной вкладке можно настроить поведение службы при её непредвиденном завершении. При этом, есть возможность настроить различные действия для первого, второго и последующего завершения работы.
Для выбора доступны следующие действия:- Не выполнять никаких действий - в таком случае, ничего не будет делаться.
- Перезапуск службы - служба будет повторно запущена.
- Запуск программы - можно запустить программу или скрипт, например скрипт для отправки оповещения по электронной почте.
- Перезагрузка компьютера - как должно быть понятно из названия данного пункта, компьютер будет перезагружен.
Таким образом, для перезапуска службы в случае её завершения, достаточно выставить значение "Перезапуск службы" во всех трех пунктах.
Использование утилиты sc
Так же, подобную настройку можно выполнить при помощи утилиты SC. Узнать текущие настройки можно использовав параметр qfailure
:
sc qfailure [ИМЯ СЛУЖБЫ]
Для настройки действий при завершении службы, следует использовать параметр failure:
sc failure [ИМЯ СЛУЖБЫ] [ПАРАМЕТРЫ]
Список параметров следующий:
- reset - значение в миллисекундах, по достижению которого счетчик сбоев будет сброшен. Используется совместно с параметром actions.
- reboot - сообщение, которое будет выведено при перезагрузке компьютера в том случае, если её выполнение указано в настройках восстановления службы.
- command команда, которую следует выполнить при сбое.
- actions - действия, выполняемые при сбое. Всего их три:
run
,restart
,reboot
.
Данный параметр требует так же указание параметра reset.
Примеры
Для того, чтобы не выполнять никаких действий:
sc failure [ИМЯ СЛУЖБЫ] reset= 86400 actions= //
Для бесконечного перезапуска службы через 1 минуту:
sc failure [ИМЯ СЛУЖБЫ] reset= 86400 actions= restart/60000
Добавить комментарий