- Как я могу автоматически перезапустить службу Windows, если она падает?
- Перезагрузка Windows сервера планировщиком заданий
- Как перезапускать службу windows 7 по расписанию
- Как перезапустить службу в Windows 7, 8 и 10
- Перезапуск через Панель управления
- Перезапуск через Командную строку
- Записки Web-разработчика
- Как настроить планировщик задач на перезагрузку компьютера каждую ночь
- Примеры использования Shurdown в Windows 10:
- Полезный совет: как настроить перезапуск служб при сбое в Windows 7
Как я могу автоматически перезапустить службу Windows, если она падает?
У меня есть служба Windows, которая неожиданно выходит каждые несколько дней. Есть ли простой способ следить за тем, чтобы он быстро перезагружался в случае сбоя?
Под приложением Службы выберите свойства рассматриваемой службы.
Посмотрите вкладку восстановления — есть все виды опций — я бы установил First & Second Failure для перезапуска службы, Third для запуска пакетной программы, которая BLAT отправляет электронное письмо с третьим уведомлением об ошибке .
Вы также должны установить Reset Fail Count на 1, чтобы ежедневно сбрасывать счетчик ошибок.
РЕДАКТИРОВАТЬ:
Похоже, вы можете сделать это через командную строку:
Ваш файл MyBatchFile.CMD может выглядеть так:
Откройте Services.msc, дважды щелкните сервис, чтобы открыть Свойства сервиса, есть вкладка Восстановление, и эти настройки должны позволить вам перезапустить сервис в случае сбоя.
Попробуйте установить время восстановления на ноль:
Эквивалент командной строки:
SC failure YOUR_SERVICE_NAME reset= 0 actions= restart/0/restart/0/restart/0
В любом случае, автоматическое восстановление не работает должным образом, поэтому рекомендуется использовать стороннее программное обеспечение. Кажется, что когда сервис завершает работу изящно с кодом завершения 0 окон, не пытается его восстановить.
Я использую ServiceKeeper на моем сервере Windows 2008 на HostForLife.eu, и он работает очень хорошо. Ранее у меня был обзор ServiceHawk, но я предпочитаю использовать ServiceKeeper для более простого управления и интерфейса.
У меня было аналогичное требование, чтобы запустить службу, если она остановлена. Я подумал, что самое простое решение — выполнять указанную ниже команду в планировщике задач Windows каждые 5 минут:
net start MyServiceName
Эта команда в основном запускает службу (если она остановлена) и не имеет никакого эффекта, если служба уже запущена.
Недавно я реализовал опцию восстановления для запуска сценария powershell, который пытается перезапустить службу определенное количество раз и отправляет уведомление по электронной почте, а также.
После нескольких попыток (и несмотря на все другие вещи, которые я видел), конфигурация полей на вкладке восстановления в сервисах выглядит следующим образом:
Программа: Powershell.exe
** Не C: \ Windows \ System32 \ WindowsPowerShell \ v1.0 \ Powershell.exe
** $ args — это параметры, которые будут переданы в ваш скрипт. Это не обязательно.
Перезагрузка Windows сервера планировщиком заданий
Имеем Windows Server 2012 R2. Задача — автоматически перезагружать сервер каждый понедельник в 5 утра. Приступаем.
Запускаем Планировщик заданий, создаём в нём папку «reboot»:
Делаем Create Basic Task. Запускается мастер:
Указываем Name, Description:
Выбираем период Weekly. Next:
Указываем начало — ближайший понедельник 5 утра. Ставим галку Monday. Next:
Выбираем Start a program. Next:
В Program/script: пишем:
В Add arguments (optional):
- /r — перезагрузка,
- /f — принудительное закрытие всех приложений,
- /t 90 — время ожидания до начала перезагрузки 90 сек,
- /d p:0:0 — причины перезагрузки для журнала. В данном случае, мы указали: p — запланированная перезагрузка, 0:0 — «Other (planned)»,
- /c комментарий в свободной форме длинной не более 512 символов. Комментарий будет показываться юзерам 90 секунд. За это время можно отменить перезагрузку командой shutdown.exe /a.
Список параметров и причин перезагрузки можно посмотреть shutdown.exe /?
Мастер не доделали, кликаем Finish. Создаётся задача — редактируем её.
Ставим Run whether user is logged on or not. Добавим галку Run with highest privileges. Ok:
Нас попросят ввести имя пользователя, от имени которого будет выполняться задание. И пароль. Готово:
Сам пока не проверял результатов. В ближайший понедельник посмотрим.
Две недели прошло — шедулер нормально перезагружает сервер по понедельникам.
Как перезапускать службу windows 7 по расписанию
Как перезапустить службу в Windows 7, 8 и 10
При сбое в работе любой службы Windows нужно либо перезапустить службу, либо перезагрузить систему. Перезагрузка компьютера неудобна, поскольку занимает время и закрывает все окна. Если не получается остановить службу через Панель управления, можно перезапустить службу Windows из командной строки.
Открыть настройки служб Windows можно 4 способами:
- Нажать Win+R, в окне Выполнить ввести services.msc и нажать Enter. Откроется Диспетчер служб.
- Нажать Пуск, в поиске ввести Службы, открыть настройки.
- Открыть Панель управления -> Система и безопасность -> Администрирование -> Службы.
- Нажать ПКМ на кнопке Пуск или клавиши Win+X. Перейти в «Управление компьютером -> Службы и приложения -> Службы.
К счастью, от версии к версии Windows этот раздел настроек практически не изменялся. В Windows 7, Vista, 8 и 10 «Службы» будут выглядеть почти одинаково.
Перезапуск через Панель управления
Возможностей стандартных настроек в Панели управления достаточно, чтобы останавливать и запускать системные сервисы. Есть возможность полностью отключить ненужные службы — это немного повысит производительность устройства.
Остановка и повторный запуск служб Windows:
- Открыть любым способом окно Службы, найти нужную.
- Нажать по нужной службе правой кнопкой мыши и выбрать Перезапустить.
- Если кнопка Перезапустить неактивна — нажать Свойства.
- Нажать Остановить, дождаться остановки службы.
- Нажать на кнопку Запустить.
Если служба зависла или не остановилась — открыть диспетчер задач (Ctrl+Alt+Del) и завершить все процессы, связанные с проблемной службой.
Перезапуск через Командную строку
Если Панель управления не справляется со своими обязанностями, отключить или перезапустить службу можно через Командную строку (cmd.exe). Командная строка должна быть запущена от имени администратора.
Для управления службами существует 4 команды, дублирующие функционал Панели управления:
- net stopservice — Остановить выбранную службу.
- net startservice — Запустить.
- net pauseservice — Приостановить обслуживание.
- net continueservice — Возобновить обслуживание.
Для работы со службой нужно знать её название. Например, запуск службы Windows Audio будет выполнен по команде net start audiosrv. Здесь audiosrv — системное название службы.
Чтобы его узнать, нужно зайти в свойства. Нужная строка будет в самом верху — «Имя службы». Вывести списком имена всех активных служб можно прямо в Командной строке, введя sc query type= service.
Через консоль можно не только перезапустить службу, но и изменить её тип запуска командой sc config *СЛУЖБА* start=*ТИП_ЗАПУСКА*.
Доступные типы запуска:
- auto — Автоматически.
- demand — Вручную (по требованию).
- delayed-auto — Отложенный запуск.
Например, команда sc config audiosrv start=auto переведет службу Windows Audio в тип запуска Автоматически.
Для полноты нужно упомянуть еще один способ перезапуска — через Диспетчер задач. Для этого нужно нажать комбинацию клавиш Ctrl+Alt+Del (или Ctrl-Shift-Esc), выбрать Диспетчер задач и перейти на вкладку Службы. По нажатию правой кнопки мыши на любой службе появляется контекстное меню, откуда доступна и остановка, и запуск, и перезагрузка.
Записки Web-разработчика
Как настроить планировщик задач на перезагрузку компьютера каждую ночь
В Windows XP: Пуск — Панель управления — ярлык «Назначенные задания» либо Пуск — Все программы — Стандартные — Служебные — Назначенные задания
В Windows 7: Пуск — Панель управления — Администрирование — Расписание выполнения задач либо Пуск — Все программы — Стандартные — Служебные — Планировщик заданий
В Windows 8: Пуск — Панель управления — Администрирование — Расписание выполнения задач
- Заходим в планировщик задач (Пуск+R, вводим в строку C:\\Windows\system32\taskschd.msc /s).
- Создаём Простую задачу:
- Вводим Имя задачи, жмём Далее.
- Оставляем галочку на Ежедневно и жмём Далее.
- Далее вписываем нужное Время для перезагрузки и жмём Далее.
- Оставляем галочку на «Запустить программу», снова жмём Далее.
- В поле «Программа или сценарий» вводим C:\Windows\System32\shutdown.exe,
- В поле «Добавить аргументы» вводим -r и снова давим Далее, и Готово.
- Для повторения задачи каждые N часов надо проделать эти действия сколько нужна устанавливая разное время.
- Также для автоматического выключения ПК надо проделать тот же путь, только в поле Добавить аргументы вводим -s.
Примеры использования Shurdown в Windows 10:
shutdown.exe /r /t0 — Немедленная перезагрузка компьютера
shutdown.exe /r — перезагрузка ПК через 30 секунд
shutdown.exe /r /t 3600 — перезагрузка Windows через 60 минут
shutdown.exe /s /t 0 — Немедленное Выключение
shutdown.exe /s — Выключение ПК через 30 секунд
shutdown.exe /s /t 3600 — Выключение компьютера через час
shutdown.exe /h — Переводим систему в режим Гибернации (Hybernate) при условии, что этот режим включен
shutdown.exe /l — Завершение сеанса пользователя
shutdown.exe /i — Запуск графического интерфейса выключения ПК
/i — Отображение графического интерфейса пользователя. Этот параметр должен быть первым.
/l — Завершение сеанса. Этот параметр нельзя использовать с параметрами /m или /d.
/s — Завершение работы компьютера.
/r — Завершение работы и перезагрузка компьютера.
/g — Завершение работы и перезагрузка компьютера. После перезапуска системы, запуск всех зарегистрированных приложений.
/a — Отмена завершения работы системы. Этот параметр можно использовать только в период ожидания.
/p — Немедленное отключение локального компьютера без предупреждения. Можно использовать с параметрами /d и /f.
/h — Переключение локального компьютера в режим гибернации. Можно использовать с параметром /f.
/e — Указание причины непредвиденного завершения работы компьютера.
/o — Переход в меню дополнительных параметров загрузки и перезагрузка компьютера. Данный параметр допустим для Windows 8 и более поздних версий. Необходимо использовать в с параметром /r.
/m \\компьютер — Имя или IP-адрес конечного компьютера.
/t xxx — Задание задержки в xxx секунд перед завершением работы компьютера. Допустимый диапазон: 0-315360000 (10 лет); значение по умолчанию: 30 секунд. Если период таймаута больше 0, применяется параметр /f.
/c «комментарий» — Комментарий с причиной перезапуска или завершения работы. Наибольшая длина — 512 знаков.
/f — Принудительное закрытие запущенных приложений без предупреждения пользователей. Параметр /f используется, если для параметра /t задано значение больше 0.
/d [p|u:]xx:yy Необходимо указать причину для перезагрузки или выключения. «p» означает запланированную перезагрузку или завершение работы. «u» означает, что причина определяется пользователем. Если не задано ни «p», ни «u», перезагрузка или завершение работы являются незапланированными. xx является основным кодом причины (целое положительное число, меньшее 256). yy является вспомогательным кодом причины (целое положительное число, меньшее 65536).
Вместо синтаксиса /ключ допускается использование -ключ
Полезный совет: как настроить перезапуск служб при сбое в Windows 7
Бывают службы, для которых необходимо обеспечить оперативный перезапуск в случае сбоя. Пример — менеджер базы данных Quickbooks (для Point of Sale или Financials): если он перестанет работать, клиентским компьютерам не удастся подключиться к базе данных, что грозит обернуться катастрофой для бойкой торговли. Чтобы этого избежать, нужно настроить службу таким образом, чтобы она автоматически перезапускалась при сбое.
В Windows 7 сделать это очень легко, однако стоит учитывать, что далеко не для всех служб действительно необходим автоматический перезапуск при сбое.
Шаг первый: оценка службы
Прежде чем менять настройки службы, нужно хорошенько подумать: должна ли она работать 24 часа в сутки, 7 дней в неделю при любых обстоятельствах. Менеджер базы данных Quickbooks Point Of Sale должен: если он не запущен, торговые операции не проводятся. Что еще хуже, если в момент сбоя система как раз обрабатывала транзакцию, это может привести к серьезным проблемам.
С другой стороны, для некоторых служб автоматический перезапуск в случае сбоя нежелателен. Если демон каким-то образом поврежден, попытка автоматического перезапуска может вызвать неполадки в системе или даже во всей сети. Учитывайте это, редактируя настройки службы.
Шаг второй: запуск утилиты «Службы»
Настройки служб можно изменить с помощью утилиты «Службы (Services, рис. A). Чтобы ее запустить, нажмите кнопку «Пуск» (Start), введите в строке поиска «services.msc» (без кавычек) и нажмите [Enter].
Шаг третий: настройка службы
Чтобы настроить автоматический перезапуск службы в случае сбоя, нажмите на ней правой кнопкой мыши и выберите пункт «Свойства» (Properties). В открывшемся окне перейдите на вкладку «Восстановление» (Recovery, рис. B).
Чтобы служба всякий раз перезапускалась в случае сбоя, нужно выбрать опцию «Перезапуск службы» (Restart the Service) в меню «Первый сбой» (First failure), «Второй сбой» (Second failure) и/или «Последующие сбои» (Subsequent failures). Количество попыток перезапуска зависит от того, насколько служба нестабильна. Если она прекращает работать только в критических обстоятельствах и попытки перезапуска могут принести больше вреда, чем пользы, стоит ограничиться автоматическим перезапуском только для первого сбоя. А вот для службы Quickbooks я обычно настраиваю три попытки перезапуска.
В случае повторного и всех последующих сбоев можно настроить автоматическую перезагрузку компьютера. Здесь, однако, следует учитывать назначение системы: если это сервер, его вряд ли стоит всякий раз перезагружать из-за отказа второстепенной службы.
При выборе опции «Перезагрузка компьютера» (Restart the Computer) становится активна кнопка «Параметры перезагрузки» (Restart Computer Options). Она вызывает окно «Параметры перезагрузки компьютера», в котором можно указать, через сколько минут должна начинаться перезагрузка, а также составить предупреждение для пользователей.
Завершив настройку службы, нажмите «OK», чтобы применить изменения, и закройте окно. Теперь служба будет автоматически перезапускаться в случае сбоя.
Используйте опцию автоматического перезапуска с осторожностью. С одной стороны, это очень полезная возможность, но с другой, может привести к нежелательным последствиям при неразумном использовании.