- Службы Windows и cmd
- Управление системными службами через командную строку
- Команды SC — настройка, запуск и останов системный служб Windows
- Примеры работы с командами SC
- Запущенные службы windows cmd
- Управление работой служб с помощью консоли управления.
- Управление службами из командной строки.
- Как открыть службы Windows
- Способ 1
- Способ 2
- Способ 3
- Запуск и настройка службы Windows из командной строки
Службы Windows и cmd
Как в командном файле получить список служб Windows? Как узнать, установлена ли определённая служба? Как проверить её состояние? Как её перезапустить?
Получить ответы на эти важные вопросы помогут команды SC и NET.
Для получения списка служб используется команда:
Она перечисляет службы, выводя для каждой следующую информацию:
Важно, что язык вывода может быть разным (зависит от языковой версии Windows, региональных настроек), т.е. при написании командного файла необходимо учитывать, что вывод для той же службы может быть и таким:
Проверить наличие определённой службы можно поиском, например:
sc query type= service | findstr /i «wuauserv»
Если служба существует, вывод будет содержать строчку, а код возврата будет 0.
Если такой службы нет, вывод будет пустым, а код возврата 1.
Важно! В качестве строки поиска здесь используется внутреннее имя службы, которое не зависит от языковых настроек (DISPLAY_NAME зависит).
Для проверки конфигурации и статуса можно использовать команду SC QUERY , команда работает с внутренними именами, поэтому для проверки службы Планировщик задач можно написать SC QUERY schedule , и это будет работать везде. Проверить, запущена ли служба, можно по наличию строки RUNNING или STOPPED:
Команда NET START перечисляет все запущенные службы по одной на строчку, что делает работу с ней простой, например, проверить, что служба запущена, можно командой NET START | find «Планировщик заданий». Но необходимо учитывать, что эта команда работает с пользовательскими именами (Display Name) служб и приведённая команда не сработает в англоязычных региональных настройках.
Управление системными службами через командную строку
Службы обеспечивают ключевые функции рабочих станций и серверов. Для управления системными службами на локальных и удаленных системах используется команда контроллера служб (service controller command) SC, имеющая набор подкоманд, здесь описывается лишь их некоторая часть.
Для удобства пользования в командной строке используются сокращенные названия служб Windows (например, Spooler — диспетчер очереди печати, Dhcp — DHCP-клиент, W32Time — Служба времени Windows и т.п., см таблицу по ссылке).
Команды SC — настройка, запуск и останов системный служб Windows
- SC config — настройка учетных записей регистрации и запуска служб;
- SC query — вывод списка всех служб, настроенных на компьютере;
- SC qc отображение конфигурации определенной службы;
- SC start — запуск служб;
- SC stop — останов служб;
- SC pause — приостановка работы служб;
- SC continue — возобновление работы служб;
- SC failure — задание действий, выполняемых при сбое службы;
- SC qfailure — просмотр действий, выполняемых при сбое службы.
Примеры работы с командами SC
Во всех командах можно указывать имя удаленного компьютера, со службами которого вы хотите работать. Для этого вставьте UNC-имя (например, \\Roza) или IP-адрес (например, 192.168.1.1) компьютера перед используемой подкомандой. Вот синтаксис: sc ИмяСервера Подкоманда.
Пример команды sc на компьютере с Windows 10:
- sc \\Roza query Spooler
Чтобы получить список всех служб, настроенных в системе, введите в командной строке команду: sc query type=service state=all или sc ИмяСервера query type=service state=all где ИмяСервера — UNC-имя или IP-адрес удаленного компьютера.
Запущенные службы windows cmd
Службы Windows (Windows Service) — приложения (программы), работающие в фоновом режиме, без пользовательского интерфейса. Грубо говоря, некий аналог демонов в Unix системах.
Управление работой служб с помощью консоли управления.
Для управления службами в Windows существует графическая утилита — службы (services.msc), для ее запуска необходимо перейти:
Панель управления (Control Panel) —> Администрирование (Administrative Tools) —> Службы (Services) или в строке поиска меню Пуск (Start) ввести services.msc.
Вид окна службы services.msc.
Из этой консоли можно просматривать, запускать, останавливать, изменять параметры и тип запуска служб.
Различные варианты запуска служб.
1) Автоматически (отложенный запуск) — служба будет запущена спустя некоторое время после старта операционной системы, используется для служб, ненужных при загрузке операционной системы, позволяет оптимизировать процесс загрузки.
2) Автоматически — служба будет запущена при старте операционной системы.
3) Вручную — служба запускается пользователем, приложениями или другими службами.
4) Отключена – службу нельзя запустить.
Примечание: Существует еще один вариант (обязательная служба) — автоматически запускается и пользователь не может остановить эту службу).
Управление службами из командной строки.
Службами window можно управлять не только используя графическую утилиту, но и из командной строки windows cmd. Для запуска переходим в пункт меню: Пуск —> Выполнить —> В строку вводим команду cmd.exe. Ниже приведу команды для управления службами.
Установка режима запуска службы:
Запрос данных конфигурации для службы.
Просмотр всех служб:
Для удобства чтения выводимой информации используем утилиту more.
Для копирования вывода в буфер используем утилиту clip.
Вывод справки по команде sc.
Примечание: Если имя службы содержит пробелы, то необходимо его заключить в кавычки.
Особенностью служб является то, что они запускаются от имени пользователя LocalSystem — обладающего полными правами в системе.
Список всех служб расположен в ветке реестра:
На этом заканчиваем знакомство со службами windows. Надеюсь статья была полезная.
1″ :pagination=»pagination» :callback=»loadData» :options=»paginationOptions»>
Как открыть службы Windows
Способ 1
Кликните правой кнопкой мыши по Пуск и выберите Выполнить:
В открывшемся окне введите команду services.msc и нажмите OK.
Откроется оснастка «Службы».
Способ 2
Откройте панель управления: в Windows 10 или 8 правой кнопкой мыши по Пуск — Панель управления. В Windows 7: левой кнопкой по Пуск — Панель управления.
В открывшемся окне в правой верхней части найдите строку поиска и введите Службы.
Среди результатов в разделе Администрирование кликните по Просмотр локальных служб.
Способ 3
Воспользуйтесь поиском Windows.
В 10-ке кликните по значку поиска на нижней панели и введите Службы.
Среди результатов в самом верху появится нужный пункт.
В Windows 7 процесс аналогичен, за исключением того, что строка поиска находится в нижней части меню Пуск.
Запуск и настройка службы Windows из командной строки
Несмотря на свой примитивный вид и скромные размеры, командная строка предоставляет множество вариаций на тему «А что если. произвести запуск службы из командной строки». Фактически, простому обывателю она понадобится в очень редких случаях, если совсем не понадобится, работа со службами (их запуск или остановка) и то реже (хотя тут скорее уместна команда net stop).
Но, есть множество талантливой молодежи, или просто проницательных людей, которые с огромным удовольствие захотят засунуть свой нос в вашу систему. Конечно, большинство простых обывателей не будет извращаться над собой используя Windows NT или Windows 2000, да и Семерка все чаще наступает на горло «простенькому» ХР, но, командная_строка в мире операционных систем, это все ровно, что таблица умножения в мире финансов.
В Панели управление/Администрирование находится оснастка Службы, которая позволяет управлять рядом сервисов. Двойной щелчок по любой из них позволяет просмотреть ряд параметров:
Вкладка Общие показывает состояние, тип запуска, описание, исполняемый файл и другую информацию. Использование CMD позволяет получить аналогичную информацию, а также управлять состоянием и запуском служб, используя командную строку:
Sc start Имя_Службы – производится запуск службы из командной строки
Sc pause Имя_Службы – приостановка сервиса
Sc continue Имя_Службы – восстановление работы приостановленного сервиса
Sc stop Имя_Службы – полная остановка
Эти команды можно применять и на удаленных машинах. Например, что бы запустить УдаленныйРеестр на машине с адресом 192.168.1.6., надо прописать (вместо IP можно и имя машины прописать, например Mailer):
Хотя, запустить службу из командной строки можно и при использовании утилиту net start, или net stop соответственно (net stop RemoteRegistry)
Что бы настроить тип запуска применяется команда sc config (хотя ее возможности этим не ограничиваются). Синтаксис следующий:
Флаг может принимать три значения:
тут мы отключили RemoteRegistry на удаленной машине. Стоит помнить, что отключение сервиса его не останавливает, после перезагрузки он может вновь запустится.
На вкладке Вход в систему видно, что сервис можно запускать или от имени системной учетной записи, или от имени любой другой учетной записи. Так, что бы запустить службу из командной строки под тои или иной учетной записью, используется синтаксис:
В данном примере УдаленныйРеестр грузится под ЛокальнойСлужбой (NT AUTHORITYLocalService), а можно и под системной учетной записью (LocalSystem), но лучше этого не делать:
Если использовать флаг type= interact, то это укажет, что сервис может взаимодействовать с рабочим столом Windows:
тут флаг type= own говорит, что cлужбa выполняется в собственном процессе, если же работа происходит в общем процессе, то применятся флаг type= share. Например:
Используя команду sc qc ИмяСлужбы можно детально просмотреть информацию о ней, в том числе и тип запуска, например:
TYPE : 20 WIN32_SHARE_PROCESS (общий процесс)
или
TYPE : 20 WIN32_OWN_PROCESS (собственный процесс)
Может возникнуть необходимость сделать запуск определенной службы, используя командную строку, не от имени системы, а от имени пользователя, в таком случае надо указывать имя учетной записи и пароль, например:
sс config w3svc obj = User password = UserPass — тут w3svc настроена на запуск от имени пользователя User с паролем UserPass. Общий же синтаксис такой:
sс config ИмяCлужбы obj = [Домен]Пользователь password= пароль — тут Домен — имя домена, где находится учетная запись (не является обязательным). В случае, если системная cлужбa была прежде сконфигурирована под локальную систему, то при перенастройке под учетную запись домена надо использовать флаг type= own:
Операционная система Windows содержит множество лазеек, которые позволяют в нее проникнуть (в том числе и сервер сценариев Windows Script Host), обходя стандартные правила. Не последнюю роль тут играют и системные службы. Например, утилита PsExec позволяет войти в удаленную систему или же запустить приложение от имени Локальной Системы. В процессе создается служба которая работает на обеих машина, она то и оперирует всем процессом связи. Однако, гордые обладатели Семерки, или даже ХР (если были установлены нужные обновления), могут сильно разочароваться. Хотя запуск службы psexecsvc можно произвести и непосредственно из командной строки, система ее просто игнорирует (или запрещает выполнять ее функции). Конечно, если есть голова, то можно создать аналог Psexec (тем более, что алгоритм работы известен), авось прокатит, но, если бы все было так, как в книге пишут.
Спасибо за внимание. Автор блога Владимир Баталий