Включить службу из командной строки. Создание службы в Windows
Иногда может потребоваться взять исполняемый файл и зарегистрировать его в качестве службы Windows. Для этого есть несколько способов, я обычно пользуюсь двумя из них.
Для создания и службы из командной строки можно использовать программу SC (Sc.exe). SC представляет из себя утилиту командной строки, которая реализует вызовы ко всем функциям интерфейса прикладного программирования (API) управления службами Windows. С ее помощью можно производить любые действия со службами — просматривать состояние, управлять (запускать, останавливать и т.п.), изменять параметры, а также создавать новые службы.
При создании службы с помощью SC нет необходимости вручную создавать записи в реестре и затем перезагружать компьютер, чтобы обеспечить обновление базы данных диспетчером служб. Также SC позволяет указать имя удаленного компьютера, что дает возможность управлять службами как на локальном, так и на удаленном компьютере.
Для создания нового сервиса запускаем команду Sc create . Она создает запись службы в реестре и в базе данных диспетчера служб. Sc create имеет следующий синтаксис:
sc create <параметр1= > <параметр2= >
ServiceName
— указывает имя, которое будет присвоено разделу службы в реестре. Имейте в виду, что это имя отличается от отображаемого имени службы (имени, которое отображается в оснастке «Services»);
binPath
— указывает путь к исполняемому файлу службы.
Для примера создадим службу MyService, укажем отображаемое имя My New Service, зададим тип службы и поставим ее на авто-запуск:
Sc create MyService binPath=C:\MyService\MyService.exe DisplayName=″My New Service″ type=own start=auto
Затем откроем оснастку «Services» и посмотрим результат.
Изменять параметры уже созданной службы можно командой Sc config . Например, мне не понравилось отображаемое имя службы и я хочу его изменить:
Sc config MyService DisplayName=″My Service″
Ну и полностью удалить службу можно вот так:
Sc delete MyService
PowerShell
PowerShell может почти все 🙂 , в том числе и управлять службами Windows. Создать новую службу можно с помощью командлета New-Service . Создадим такой же сервис, как и в предыдущем примере, только добавим к нему описание (Description):
New-Service -Name MyService -BinaryPathName C:\MyService\MyService.exe`
-DisplayName ″My New Service″ -Description ″Very Important Service !!!″
Изменить параметры службы можно командлетом Set-Service :
Set-Service -Name MyService -Description ″Not Very Important Service″ -StartupType Manual
В принципе PowerShell имеет примерно такой же функционал как и Sc.exe, разве что позволяет добавить описание. А вот для удаления служб в PS простого способа нет, придется воспользоваться вот такой конструкцией:
(Get-WmiObject win32_service -Filter ″name=′MyService′″).delete()
Поэтому лично я предпочитаю использовать Sc.exe.
Службы Windows это программы, которые запускаются автоматически при старте операционной системы. Службы используются для обеспечения нормальной работы программного и аппаратного обеспечения. В большинстве случаев службы отвечают за функции, которые требуют постоянного мониторинга и контроля. Например, обновление программного обеспечения, защита от сетевых и вирусных атак и т.д.
В некоторых ситуациях службы могут создавать проблемы и тогда их нужно отключать. В данной статье мы расскажем о том, как отключить службу в Windows 7 или Windows 8.
Для того чтобы отключить службу в Windows 7 или Windows 8 необходимо запустить оснастку для управления службами. Это можно сделать несколькими способами. Например:
- Откройте меню Пуск или стартовый экран (если вы используете Windows 8) и введите в поиск services.msc. После этого запустите найденное приложение;
- Откройте и перейдите в раздел «Система и безопасность – Администрирование – Службы».
- Откройте меню Пуск или стартовый экран и введите в поиск «Управление компьютером». После этого запустите приложение «Управление компьютером» и перейдите в раздел «Службы».
- Вызовите контекстное меню (правый клик мышкой) для иконки «Мой компьютер» и выберите пункт «Управление». После этого перед вами откроется окно «Управления компьютером». В этом окне перейдите в раздел «Службы»
- Откройте « » (комбинация клавиш CTRL+ALT+DEL) и перейдите на вкладку «Службы». После этого, нажмите на кнопку «Службы» (или «Открыть службы» в Windows 8), которая будет находиться в нижней части окна.
Оснастка для управления службами выглядит примерно так, как это показано на скриншоте (ниже).
Для того чтобы отключить службу в Windows 7 или Windows 8, вам необходимо найти ее в списке служб и открыть ее свойства. Для примера, продемонстрируем это на примере .
Вызываем контекстное меню, кликая правой кнопкой мышки по нужно нам службе. В открывшемся окне выбираем пунт меню «Свойства».
После этого перед вами откроется окно со свойствами выбранной службы. Для того чтобы отключить службу в Windows 7 или Windows 8, необходимо сменить тип запуска службы из «Автоматически» на «Отключена», а также нажать на кнопку «Остановить».
Для того чтобы сохранить внесенные изменения закройте окно со свойствами службы нажатием на кнопку «OK». Этих несложных действий достаточно, для того чтобы остановить любую службу в операционных системах Windows 7 и Windows 8.
Как отключить службы c помощью командной строки
Кроме описанного выше способа отключения служб, вы можете . Для того чтобы отключить службу с помощью командной строки используют следующие команды.
- net stop имя_службы – остановка указанной службы. Данная команда выполняет такую же функцию, как и кнопка «Остановить» в свойствах службы.
- net start имя_службы – команда обратная предыдущей. Команда net start запускает указаную пользователем службу. Данная команда выполняет такую же функцию, как кнопка «Запустить» в свойствах службы. Для перезапуска службы используют две команды подряд net stop и net start.
– команда, которая меняет тип запуска службы на «Отключено». Вместо disabled, эта команда может принимать и другие параметры. Среди которых:
- auto (автоматически);
- demand (по требованию, вручную);
- delayed-auto (отложенный запуск);
Таким образом, для того чтобы отключить службу в Windows 7 или Windows 8 с помощью командной строки нужно ввести две команды:
- net stop имя_службы
- sc config имя_службы start= disabled
Где «имя_службы» это короткое название службы. Это короткое название можно узнать в свойствах службы (оснастка для управления службами).
На скриншоте (выше) отмечено место, где указывается короткое название службы, которое может использоваться для команд net stop, net start и sc config.
При управлении Windows сервером, да и не только сервером, рабочей win-машиной тоже, невольно замечаешь что рука устает возить мышь и как-то лень до нее тянуться. Возить мышь хоть как придется, если использовать оснастки Windows, но сократить время на их запуск можно без проблем! Нажимаем клавиши
Название оснастки | Имя оснастки |
Active Directory Пользователи и компьютеры (AD Users and Computers) | dsa.msc |
Диспетчер служб терминалов (Terminal Services Manager) | tsadmin.msc |
Управление компьютером (Computer Management) | compmgmt.msc |
Консоль управления GPO (Group Policy Management Console) | gpmc.msc |
Редактор объектов локальной политики (Group Policy Object Editor) | gpedit.msc |
Результирующая политика (результат применения политик) | rsop.msc |
Локальные параметры безопасности | secpol.msc |
Настройка терминального сервера (TS Configuration) | tscc.msc |
Маршрутизация и удаленый доступ (Routing and Remote Access) | rrasmgmt.msc | Службы (Services) |
Общие папки (Shared Folders) | fsmgmt.msc |
Диспетчер устройств (Device Manager) | devmgmt.msc |
Локальные пользователи и группы (Local users and Groups) | lusrmgr.msc |
Локальная политика безопасности(Local Security Settings) | secpol.msc |
Управление дисками (Disk Management) | diskmgmt.msc |
Active Directory Домены и Доверие(AD Domains and Trusts) | domain.msc |
Active Directory Сайты и Доверие (AD Sites and Trusts) | dssite.msc |
Политика безопасности домена (Domain Security Settings) | dompol.msc |
Политика безопасности контроллера домена (DC Security Settings) | dсpol.msc |
Распределенная файловая система DFS (Distributed File System) | dfsgui.msc |
Запуск от имени администратора
Очень полезна будет команда RunAs, позволяющая запустить программу от имени другого пользователя из консоли. Синтаксис прост: RUNAS [ ] /smartcard Более подробно описано в справке к программе ("runas /?" в cmd). К примеру из сеанса пользователя нужно запустить\остановить службу, разумеется если у пользователя на эти действия нет прав. Как вариант можно запустить cmd, и выполнить команду runas /user:domain\admin "mmc services.msc" , а можно сам cmd запустить от админа и из него уже запускать нужные программы, наследуя права.Аналогично оснасткам, из командной строки можно запускать элементы панели управления и различные окна настроек системы. Например: настройки сети, пользователей или, что очень актуально на текущий момент - окно настройки даты и времени.
Название элемента панели управления | Команда |
Свойства системы | sysdm.cpl |
Установка и удаление программ | appwiz.cpl |
Учетные записи пользователей | nusrmgr.cpl |
Дата и время | timedate.cpl |
Свойства экрана | desk.cpl |
Брэндмауэр Windows | firewall.cpl |
Мастер установки оборудования | hdwwiz.cpl |
Свойства Интернет | inetcpl.cpl |
Специальные возможности | access.cpl |
Свойства мыши | control Main.cpl |
Свойства клавиатуры | control Main.cpl,@1 |
Язык и региональные возможности | intl.cpl |
Игровые устройства | joy.cpl |
Свойства: Звуки и аудиоустройства | mmsys.cpl |
Мастер настройки сети | netsetup.cpl |
Управление электропитанием | powercfg.cpl |
Центр обеспечения безопасности | wscui.cpl |
Автоматическое обновление | wuaucpl.cpl |
Сетевые подключения | ncpa.cpl |
Запускать из окружения пользователя, от имени администратора можно большинство из вышеперечисленных элементов панели управления, но не все. Панель "Сетевые подключения" и другие использующие explorer для отображения своего функционала не запускаются от имени другого пользователя. В одной из следующих заметок рассмотрим настройку системы из командной строки Windows, от туда можно все!
Несмотря на свой примитивный вид и скромные размеры, командная строка предоставляет множество вариаций на тему «А что если... произвести запуск службы из командной строки». Фактически, простому обывателю она понадобится в очень редких случаях, если совсем не понадобится, работа со службами (их запуск или остановка) и то реже (хотя тут скорее уместна команда net stop).
Но, есть множество талантливой молодежи, или просто проницательных людей, которые с огромным удовольствие захотят засунуть свой нос в вашу систему. Конечно, большинство простых обывателей не будет извращаться над собой используя Windows NT или Windows 2000, да и Семерка все чаще наступает на горло «простенькому» ХР, но, командная_строка в мире операционных систем, это все ровно, что таблица умножения в мире финансов.
В Панели управление/Администрирование находится оснастка Службы, которая позволяет управлять рядом сервисов. Двойной щелчок по любой из них позволяет просмотреть ряд параметров:
Вкладка Общие показывает состояние, тип запуска, описание, исполняемый файл и другую информацию. Использование CMD позволяет получить аналогичную информацию, а также управлять состоянием и запуском служб, используя командную строку:
Sc start Имя_Службы – производится запуск службы из командной строки
Sc pause Имя_Службы – приостановка сервиса
Sc continue Имя_Службы – восстановление работы приостановленного сервиса
Sc stop Имя_Службы – полная остановка
Эти команды можно применять и на удаленных машинах. Например, что бы запустить УдаленныйРеестр на машине с адресом 192.168.1.6., надо прописать (вместо IP можно и имя машины прописать, например Mailer):
Флаг может принимать три значения:
- Auto – автоматический запуск при старте системы
- Demand – ручной запуск
- Disable – отключение
Sc 192.168.1.6 config RemoteRegistry start= disable |
тут мы отключили RemoteRegistry на удаленной машине. Стоит помнить, что отключение сервиса его не останавливает, после перезагрузки он может вновь запустится.
На вкладке Вход в систему видно, что сервис можно запускать или от имени системной учетной записи, или от имени любой другой учетной записи. Так, что бы запустить службу из командной строки под тои или иной учетной записью, используется синтаксис:
В данном примере УдаленныйРеестр грузится под ЛокальнойСлужбой (NT AUTHORITYLocalService ), а можно и под системной учетной записью (LocalSystem ), но лучше этого не делать:
тут флаг 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 содержит множество лазеек, которые позволяют в нее проникнуть (в том числе и сервер сценариев ), обходя стандартные правила. Не последнюю роль тут играют и системные службы. Например, утилита PsExec позволяет войти в удаленную систему или же запустить приложение от имени Локальной Системы. В процессе создается служба которая работает на обеих машина, она то и оперирует всем процессом связи. Однако, гордые обладатели Семерки, или даже ХР (если были установлены нужные обновления), могут сильно разочароваться. Хотя запуск службы psexecsvc можно произвести и непосредственно из командной строки, система ее просто игнорирует (или запрещает выполнять ее функции). Конечно, если есть голова, то можно создать аналог Psexec (тем более, что алгоритм работы известен), авось прокатит, но, если бы все было так, как в книге пишут...
Windows позволяет делать множество различных вещей, с помощью разного рода инструментов и утилит, к большинству которых можно легко получить доступ в . Аналогичным, но более эффективным и быстрым способом является использование функции «Выполнить», которая имеется во всех операционных системах Windows.
Некоторые пользователи считают что это окно предназначена для вундеркиндов или ботаников, но на самом деле это не так. Ею могут пользоваться и средние и начинающие, но только если знают что они делают и какие команды вводить. Короче говоря, инструмент позволяет вам стать более продуктивными при работе за компьютером. Поэтому если вам это интересно, или необходимо узнать об этом — то вот вам список команд для диалогового окна Выполнить .
Мы привели вам список из 30 команд выполнить, чтобы вы могли обойти ряд бесконечных кликов, тем самым укоряя процесс запуска утилит и инструментов в вашем повседневном использовании Windows. Следует отметить, что в Windows 8 окно Выполнить не исчезло. Для вызова этого окна просто нажмите сочетание клавиш «Win + R» на клавиатуре и оно появится.
Примечание: опять же, чтобы вызвать диалоговое окно Выполнить используйте Win(Пуск) + R на клавиатуре, затем, в поле ввода введите любую команду для доступа к соответствующему инструменту и нажмите Enter.
Список команд для окна Выполнить
1. «\»
Большинство пользователей обычно открывают диск С через проводник Windows или значок на рабочем столе Мой компьютер. Ничего страшного в этом нет, просто есть более быстрый способ это сделать — это с помощью диалогового окна Выполнить, введя в него обратную косую черту (слэш).
2. «.»
Команда состоящий из одной точки открывает домашнюю папку текущего пользователя.
3. «..»
Команда из двух точек открывает попку «Пользователи», которая непосредственно находиться в диске C.
4. ncpa.cpl
Данная команда открывает папку сетевые подключения.
5. appwiz.cpl
Используйте эту команду если хотите быстро получить доступ к Программам и компонентам , где вы можете деинсталлировать любую установленную программу на вашем компьютере.
6. Calc
Если хотите открыть встроенный в Windows калькулятор, то самый быстрый способ сделать это — это напечатать слово calc в диалоговом окне выполнить.
7. CMD
Всем пользователям Windows иногда приходиться иметь дело с командной строкой. Напечатав cmd вы быстро откроете командную строку без привилегий администратора.
Если командная строка слишком стара для вас, то попробуйте вместо него PowerShell. Для этого просто введите (без пробела) в строку ввода диалогового окна Выполнить, и оно откроется без привилегий администратора.
9. perfmon.msc
Введите эту команду в диалоговое окно Выполнить и запустится утилита , который позволяет следить за производительностью Windows, эффективностью программ и дает доступ к многим другим полезным данным.
10. powercfg.cpl
Windows позволяет настроить энергопотребление компьютера посредством уменьшения яркости экрана, мощности компьютера и т.д. Использование данной команды приводит к запуску окна .
11. devmgmt.msc
Эта команда открывает Диспетчер устройств Windows , который позволяет управлять всеми аппаратными средствами компьютера. Также для этого можно использовать команду hdwwiz.cpl .
12. Regedit
Команда regedit открывает окно . Это иерархическая база данных, которая хранит параметры практически всего на вашем компьютере: настройки программ, драйверов, пароли пользователя, параметры Windows и все остальное.
13. msconfig
Используйте эту команду чтобы открыть конфигурации системы Windows, где можно настраивать параметры загрузки, автозагрузки. службы, сервисы и т.д.
14. sysdm.cpl
Открывает свойства системы
15. netplwiz
Эта команда полезна для компьютеров с несколькими . Администраторы могут открыть любую учетную запись и настраивать как им хочется. А другие пользователи могут открыть и редактировать только свои личные настройки пользователя.
16. firewall.cpl
Хотите быстро отключить или включить брандмауэр Windows? — просто введите в поле выполнить firewal.cpl, и окно настроек брандмауэра появится прямо перед вами.
17. wuapp
Если хотите проверить или настроить параметры обновления Windows, то используйте эту команду.
18. services.msc
Введите services.msc и нажмите клавишу Enter, откроется окно Службы , где можно легко настроить параметры каждой службы в отдельности.
19. msinfo32
Если хотите быстро получить информацию о системе, то используйте команду msinfo32, и вы получите доступ ко всей информации о системе, включая аппаратные средства и программное обеспечение.
20. sdclt
33. utilman
Выше мы показали вам, как открыть экранную клавиатуру в Windows. Но кроме этого есть и другие полезные служебные программы Windows, такие как, экранная лупа, экранный диктор и т.д. Получить к ним доступ вы можете с помощью этой команды.
34. write
Последнее но не менее полезное — это команда write, которая открывает встроенный в Windows редактор WordPad (Блокнот).
Средство Выполнить в Windows, в том числе и его команды являются одним из самых лучших средств, которых вы можете найти в Windows. Кроме перечисленных выше команд существуют и сотни других команд, которые дают доступ к различным инструментам и утилитам операционной системы.