команда остановки службы windows
Блог Сисадмина
Полезная информация об администрировании пользовательских и серверных ОС Windows.
Как остановить повисший сервис из командной строки
Просто полезный совет.
Иногда бывает что какой-то из сервисов Windows подвисает в состоянии «Запуск» (Starting) или «Остановка» (Stopping).
Можно воспользоваться командной строкой и утилитой sc. Запускаем ее от имени администратора и вводим
sc queryex SERVICENAME
где SERVICENAME — название повисшей службы.
Далее смотрим ID процесса и убиваем его:
taskkill /f /pid PROCESSID
где PROCESSID — ID процесса, полученный на предыдущем шаге.
Еще полезная команда:
принудительно удалить все процессы с именем notepad.exe
Как остановить повисший сервис из командной строки : 9 комментариев
Net start
Net stop проще и быстрее. Не рассматривали такой вариант?
И когда в консоли невернеая информация ( по факту служба может стопнуться, а в консоли- еще висеть) нет старт рулит.
А разве Net stop действует на повисшие в статусе «остановка» службы?
А разве твой способ действует на повисшие в статусе «остановка» службы?
Реально действует. Автору респект.
Спасибо огромное, очень выручил в нужный момент!
Есть минус такого метода, под одним номером PID запускается несколько служб и соответственно они тоже гасятся. так можно критичные службы погасить например server и т.п. не забудьте их запустить вручную обратно.
действительно помогло спасибо большое автору
Остановить зависшую службу можно проще — в одно действие и без риска набрать неверный номер процесса:
taskkill /f /fi «services eq ИМЯ_СЛУЖБЫ»
Проверено на службе зависающей в состоянии «Запуск».
Net stop здесь бессилен. Через «Диспетчер задач» тоже не остановить.
Описанный в статье способ годится, но он сложноват.
Коллеги,
А как пробить службу которая зависла в статусе running?
Как пообщаться с ней и понять что она перестала отвечать?
Как остановить службу в Windows средствами ОС
Здравствуйте дорогие пользователи сайта pcompstart. Данная статья является первой частью двух публикаций об остановке и удалении служб в Windows.
В данной статье хочу рассказать вам о том, как можно остановить службу в Windows через командную строку либо программу «Службы». У обычных пользователей очень и очень редко, возникает такая потребность, но всё-таки, если вы с ней столкнулись, тогда прошу подкат.
Самый простой способ остановить службу это открыть «Пуск» затем «Все приложения» после чего найти вкладку «Средства администрирования» и там выбрать программу «Службы».
После того как окно программы откроется надо найти службу, которую вы хотите остановить кликнуть по ней левой кнопкой мыши (чтобы фокус стал на неё). Затем слева вверху нажать на строку «Остановить».
Чтобы узнать, как правильно называется служба в окне программы «Службы» следует кликнуть на нужном названии правой кнопкой мышки и выбрать строку свойства.
В открывшемся окне рядом со строкой «Имя службы» будет требуемое наименование, которое следует выделить, скопировать в буфер обмена (горячие клавиши Ctrl + C) и вставить в нужном месте описанном выше.
Если, вы хотите просмотреть, все возможности команды sc, тогда в запущенной командной строке введите «sc» и нажмите «ENTER». После чего появиться список дополнительного описания.
К этой статье нет коментариев. Вы можете быть первым
Как управлять службами в Windows
Что такое службы
Службы — это вид программ, которые работают в фоне и не требуют действий пользователя.
Службы могут как относиться к операционной системе Windows, так и быть сторонними приложениями. Примеры служб, которые может установить сам пользователь: веб-сервер, сервер удалённого рабочего стола VNC, SSH сервер, сервер СУБД MySQL.
Управлять службами можно:
Настройка служб в графическом интерфейсе
Чтобы открыть менеджер служб, введите в поиск «Службы» и нажмите Enter:
Ещё один способ открыть это окно, нажать Win+r и ввести:
Здесь, в столбце «Имя», вы увидите список служб, работающих в вашей системе, вместе с их Описанием. Вы также сможете увидеть их Статус — независимо от того, запущены они или остановлены, а также Типы запуска и Вход от имени.
Типы запуска служб Windows
Windows 10 предлагает следующие типы запуска:
Запуск, остановка, отключение служб Windows
Чтобы запустить, остановить, приостановить, возобновить или перезапустить любую службу Windows, выберите службу и щёлкните её правой кнопкой мыши. Вам будут предложены эти варианты.
Если вы хотите управлять дополнительными опциями, дважды щёлкните Сервис, чтобы открыть окно его свойств.
Здесь, в раскрывающемся меню Тип запуска, вы сможете выбрать тип запуска для Сервиса.
В разделе «Состояние службы» вы увидите кнопки «Запустить», «Остановить», «Приостановить», «Продолжить».
В окне «Свойства» вы также увидите другие вкладки, такие как «Вход в систему», «Восстановление» и «Зависимости», которые предлагают дополнительные параметры и информацию.
После внесения изменений вам нужно будет нажать «Применить».
Управление службами с помощью командной строки
Вы также можете использовать командную строку для запуска, остановки, приостановки, возобновления обслуживания. Чтобы использовать консоль, откройте командную строку или PowerShell с правами администратора и выполните одну из следующих команд.
Чтобы запустить службу:
Например, для запуска службы mysql:
Чтобы остановить службу:
Например, для остановки службы mysql:
Чтобы приостановить службу (не все службы возможно поставить на паузу!):
Чтобы возобновить службу:
Для отключения автозапуска службы:
Например, для отключения последующих запусков службы mysql:
Для включения автозапуска службы:
Например, для включения автозапуска службы mysql:
Перечисление состояний активных служб и драйверов
Перечисление только служб Win32
Для просмотра состояния определённой службы:
Например, чтобы увидеть состояние службы Apache2.4:
Управление службами Windows с помощью PowerShell
PowerShell — это среда автоматизации задач и управления конфигурацией от Microsoft. В этом разделе мы познакомим вас с тем, как управлять службами Windows через PowerShell, поскольку это намного быстрее и эффективнее, чем другие методы.
Как вы, возможно, знаете, одной из наиболее важных частей каждой операционной системы является служба, которая проходит через неё, и в целом можно сказать, что каждая часть операционной системы, которая запускается, имеет определённую службу, которой можно управлять и контролировать.
Вот подробное руководство по использованию PowerShell для управления службами Windows.
Запустите терминал PowerShell с правами администратора. Для этого нажмите Win+x и выберите Windows PowerShell (администратор):
Сначала вы должны получить список доступных служб, используя следующую команду:
Это образец вывода, который вы получите.
В выводе по умолчанию вы увидите 3 основных раздела: Status (Статус), Name (Имя) и DisplayName (Отображаемое имя). Теперь, если вы хотите найти и перечислить конкретный сервис, вы можете отфильтровать любой из параметров.
Показать все службы, названия которых начинаются с wi:
Показать все службы, отображаемые имена которых начинаются с win:
Примечание: если вы хотите получить доступ к другому компьютеру через сеть, вы можете просмотреть список служб для этой системы с помощью этой команды:
Важной частью управления услугами является управление зависимыми службами.
Чтобы получить доступ к списку DependentServices для конкретной службы, мы можем использовать следующую команду:
Вы также можете использовать параметр RequiredServices, чтобы получить список предварительных условий обслуживания.
Таким образом, с помощью приведённых выше команд мы можем найти название службы, которая вам нужна, увидеть статус и связанные службы или их предварительные условия. Теперь рассмотрим команды управления службами.
Для остановки службы с помощью PowerShell вы можете использовать следующую команду:
Последующие примеры будут показываться на службе Apache2.4. То есть в следующих командах замените «Apache2.4» на имя интересующей вас службы.
Для запуска службы в PowerShell вы можете использовать эту команду:
Одной из наиболее часто используемых команд для работы со службами является команда перезапуска службы. Структура команды перезапуска службы такова:
И наконец, следующая команда используется для временного приостановления службы.
Для изменения режима запуска службы используйте команду вида:
В качестве ТИП_ЗАПУСКА могут быть:
Это наиболее часто используемые команды для управления службами в PowerShell. Для получения дополнительной информации о командах PowerShell и о том, как они работают, используйте команду Get-Help.
Как принудительно завершить зависшую службу в Windows?
Как завершить процесс службы Windows, которая зависла в статусе stopping (остановка) или starting (запуск)? Большинство администраторов Windows встречалось с ситуациями, когда при попытке остановить (перезапустить) службу из графического интерфейса консоли управления службами ( Services.msc ), служба зависает намертво и висит в статусе Stopping (или Starting). При этом все кнопки управления службой в консоли (Start, Stop, Restart) становятся недоступными (серыми). Самый простой способ – перезагрузить сервер, но это не всегда допустимо. Рассмотрим альтернативные способы, позволяющие принудительно завершить зависшую службу или процесс без необходимости перезагрузки Windows.
Если в течении 30 секунд после попытки остановки службы, она не останавливается, Windows выводит сообщение:
Как остановить зависшую службу Windows из командной строки?
Самый простой способ завершить зависшую служу – воспользоваться утилитой taskkill. В первую очередь нужно определить PID (идентификатор процесса) нашей службы. В качестве примера возьмем службу Windows Update. Ее системное имя wuauserv (имя можно посмотреть в свойствах службы в консоли services.msc ).
Отройте командную строку с правами правами администратора (иначе будет ошибка access denied) и выполите команду:
sc queryex wuauserv
Чтобы принудительно завершить зависший процесс с PID 9186 воспользуйтесь утилитой taskkill:
taskkill /PID 9168 /F
Данная команда принудительно завершит процесс службы. Теперь вы можете запустите службу командой sc start servicename или через консоль управления службами (или совсем удалить эту службу, если она не нужна).
«Выстрел в голову» зависшей службы можно выполнить и более элегантно, не выполняя ручное определение PID процесса. У утилиты taskkill есть параметр /FI, позволяющий использовать фильтр для выбора необходимых служб или процессов. Вы можете остановить конкретную службу командой:
TASKKILL /F /FI “SERVICES eq wuauserv”
Или можно вообще не указывать имя, службы, завершив все сервисы в зависшем состоянии с помощью команды:
taskkill /F /FI “status eq not responding”
После этого служба, зависшая в статусе Stopping должна остановиться.
Также вы можете использовать утилиту taskkill для принудительной остановки зависших служб на удаленном компьютере:
TASKKILL /S CORPFS01 /F /FI “SERVICES eq wuauserv”
Принудительное завершение зависшей службы в PowerShell
Также вы можете использовать PowerShell для принудительной остановки службы. С помощью следующей команды можно получить список служб, находящихся в состоянии Stopping:
Завершить процесс для всех найденных служб поможет командлет Stop-Process. Следующий PowerShell скрипт завершит все процессы зависших служб в Windows:
Анализ цепочки ожидания зависшего приложения с помощью ResMon
Вы можете определить процесс, из-за которого зависла служба с помощью монитора ресурсов ( resmon.exe ).
Process Explorer: Завершение зависшего процесса из-под SYSTEM
Некоторые процессы, запущенные из-под SYSTEM, не может завершить даже локальный администратора сервера. Дело в том, что у него просто может не быть прав на некоторые процессы или службы. Чтобы завершить такие процесс (службы), вам необходимо предоставить локальной группе Administrators права на службу (процесс), а потом завершить их. Для этого нам понадобятся две утилиты: psexec.exe и ProcessExplorer (доступны на сайте Microsoft).
Таймаут, в течении которого Service Control Manager ждет ожидания запуска или остановки службы можно изменить через параметр реестра ServicesPipeTimeout. Если служба не запускается в течении указанного таймаута, Windows записывает ошибку в Event Log (Event ID: 7000, 7009, 7011, A timeout was reached 30000 milliseconds). Вы можете увеличить этот таймаут, например до 60 секунд:
reg add HKLM\SYSTEM\CurrentControlSet\Control /v ServicesPipeTimeout /t REG_SZ /d 600000 /f
Это бывает полезным при запуске/остановки тяжелых служб, которые не успевают завершить все процессы быстро (например, MS SQL Server).
Как остановить, запустить, отключить службы
Привет всем! Как-то я рассказывал про отключение служб windows 7 для повышения производительности, а в этой статье я покажу как можно отключать системные службы вручную, а как автоматически.
При настойке операционной системы, очень часто приходится выполнять одни и те же действия, по отключению одних и тех же служб. Это меня раздражало и я никак не мог найти способ по его автоматизации. Но теперь я создал файл, который автоматически отключает ненужные мне службы. Если и у вас есть такая потребность, то читайте ниже, как это можно осуществить!)
В Windows 7, 8, 10, чтобы работать со службами, нужно:
Как вручную остановить службу?
Как вручную запустить службу?
Как вручную отключить службу?
Когда я писал статью про то какие службы можно отключить, меня просили написать скрипт, который автоматически отключал необходимые службы автоматически. И решение я нашел недавно. Для этого необходимо остановить службу из командной строки. Но опять же с одной стороны это выглядит сложно, но в конце статьи я вас научу, как это делать просто.
Как автоматически остановить, запустить, отключить службу?
Для начала скачайте мой шаблон. Это службы, который я обычно отключаю сразу, как поставлю хороший антивирус.
Теперь смотрите нужные нам команды (команды берутся без кавычек):
Поле «значение» может быть 3 типов:
Поле «имя_службы» можно узнать следующим образом:
Теперь кликаем по скачанному файлу (Отключаем ненужные службы.bat) выше правой кнопкой мыши и нажимаем изменить.
У меня первая строчка останавливает службу, а вторая отключает её и так повторяется 4 раза с разными службами. В конце пауза, чтобы можно было посмотреть, что было сделано.
Таким образом, если вы часто что-то отключаете или останавливаете, вам просто необходим этот способ для экономии вашего времени!