- Как управлять службами в Windows
- Что такое службы
- Настройка служб в графическом интерфейсе
- Типы запуска служб Windows
- Запуск, остановка, отключение служб Windows
- Управление службами с помощью командной строки
- Управление службами Windows с помощью PowerShell
- Практическое руководство. Запуск служб How to: Start Services
- Настройка способа запуска службы To specify how a service should start
- Запуск службы вручную из обозревателя сервера To manually start a service from Server Explorer
- Запуск службы вручную из диспетчера служб To manually start a service from Services Control Manager
- Запуск службы вручную из кода To manually start a service from code
Как управлять службами в Windows
Что такое службы
Службы — это вид программ, которые работают в фоне и не требуют действий пользователя.
Службы могут как относиться к операционной системе Windows, так и быть сторонними приложениями. Примеры служб, которые может установить сам пользователь: веб-сервер, удалённый рабочий стол VNC, SSH служба, служба СУБД MySQL.
Управлять службами можно:
- в графическом интерфейсе
- командной строке
- в PowerShell
Настройка служб в графическом интерфейсе
Чтобы открыть менеджер служб, введите в поиск «Службы» и нажмите 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 вы можете использовать эту команду:
Одной из наиболее часто используемых команд для работы со службами является команда перезапуска службы. Структура команды перезапуска службы такова:
И наконец, следующая команда используется для временного приостановления службы.
Для изменения режима запуска службы используйте команду вида:
В качестве ТИП_ЗАПУСКА могут быть:
- Automatic — служба будет запущена или была запущена операционной системой при запуске системы. Если автоматически запускаемая служба зависит от запускаемой вручную службы, запускаемая вручную служба также запускается автоматически при запуске системы.
- AutomaticDelayedStart — запускается вскоре после загрузки системы.
- Disabled — служба отключена и не может быть запущена пользователем или приложением.
- InvalidValue — не имеет никакого эффекта. Командлет не возвращает ошибку, но StartupType службы не изменяется.
- Manual — служба запускается только вручную, пользователем, с помощью диспетчера управления службами или приложением.
Это наиболее часто используемые команды для управления службами в PowerShell. Для получения дополнительной информации о командах PowerShell и о том, как они работают, используйте команду Get-Help.
Практическое руководство. Запуск служб How to: Start Services
Установленную службу необходимо запустить. After a service is installed, it must be started. Процедура запуска вызывает метод OnStart в классе службы. Starting calls the OnStart method on the service class. Как правило, метод OnStart определяет полезные действия, которые будет выполнять служба. Usually, the OnStart method defines the useful work the service will perform. Запущенная служба остается активной, пока не будет приостановлена или остановлена вручную. After a service starts, it remains active until it is manually paused or stopped.
Службы можно настроить на запуск автоматически или вручную. Services can be set up to start automatically or manually. Служба, которая запускается автоматически, будет запущена при первом включении или перезагрузке компьютера, на котором она установлена. A service that starts automatically will be started when the computer on which it is installed is rebooted or first turned on. Службу, которая запускается вручную, должен запустить пользователь. A user must start a service that starts manually.
По умолчанию службы, созданные с помощью Visual Studio, настроены на запуск вручную. By default, services created with Visual Studio are set to start manually.
Есть несколько способов запуска службы вручную: из диспетчера служб или обозревателя сервера либо из кода, используя компонент, который называется ServiceController. There are several ways you can manually start a service — from Server Explorer, from the Services Control Manager, or from code using a component called the ServiceController.
Вы можете задать свойство StartType в классе ServiceInstaller, чтобы определить способ запуска службы — вручную или автоматически. You set the StartType property on the ServiceInstaller class to determine whether a service should be started manually or automatically.
Настройка способа запуска службы To specify how a service should start
Создав службу, добавьте для нее необходимые установщики. After creating your service, add the necessary installers for it. Дополнительные сведения см. в разделе Практическое руководство. Добавление установщиков в приложение-службу. For more information, see How to: Add Installers to Your Service Application.
В конструкторе щелкните установщик процессов службы, с которой вы работаете. In the designer, click the service installer for the service you are working with.
В окне свойств задайте свойству StartType одно из следующих значений: In the Properties window, set the StartType property to one of the following:
Чтобы установить службу To have your service install | Задайте это значение Set this value |
---|---|
При перезапуске компьютера When the computer is restarted | Автоматический Automatic |
При запуске службы с помощью явного действия пользователя When an explicit user action starts the service | Manual (Вручную) Manual |
Чтобы полностью запретить запуск службы, можно задать свойству StartType значение Disabled (Отключено). To prevent your service from being started at all, you can set the StartType property to Disabled. Это можно сделать, если вы собираетесь перезагружать сервер несколько раз и хотите сэкономить время, запретив запуск служб, которые обычно запускаются одновременно. You might do this if you are going to reboot a server several times and want to save time by preventing the services that would normally start from starting up.
Эти и другие свойства можно изменить после установки службы. These and other properties can be changed after your service is installed.
Есть несколько способов запуска службы, для процесса StartType которой настроено значение Manual (Вручную): из диспетчера служб или обозревателя серверов либо из кода. There are several ways you can start a service that has its StartType process set to Manual — from Server Explorer, from the Windows Services Control Manager, or from code. Важно отметить, что в действительности не все эти методы приводят к запуску службы в контексте диспетчера служб. При использовании обозревателя сервера и программных способов применяется контроллер. It is important to note that not all of these methods actually start the service in the context of the Services Control Manager; Server Explorer and programmatic methods of starting the service actually manipulate the controller.
Запуск службы вручную из обозревателя сервера To manually start a service from Server Explorer
В обозревателе сервера добавьте нужный сервер, если его нет в списке. In Server Explorer, add the server you want if it is not already listed. Дополнительные сведения см. в разделах «Практическое руководство. Подключение и инициализация обозревателя серверов или обозревателя баз данных». For more information, see How to: Access and Initialize Server Explorer-Database Explorer.
Разверните узел Службы и выберите службу, которую нужно запустить. Expand the Services node, and then locate the service you want to start.
Щелкните службу правой кнопкой мыши и выберите команду Запустить. Right-click the name of the service, and click Start.
Запуск службы вручную из диспетчера служб To manually start a service from Services Control Manager
Откройте диспетчер служб, сделав следующее: Open the Services Control Manager by doing one of the following:
В Windows XP и 2000 Professional щелкните правой кнопкой мыши значок Мой компьютер на рабочем столе и выберите Управление. In Windows XP and 2000 Professional, right-click My Computer on the desktop, and then click Manage. В открывшемся диалоговом окне разверните узел Службы и приложения. In the dialog box that appears, expand the Services and Applications node.
В Windows Server 2003 и Windows 2000 Server нажмите кнопку Пуск, выберите Программы, Администрирование и Службы. In Windows Server 2003 and Windows 2000 Server, click Start, point to Programs, click Administrative Tools, and then click Services.
В Windows NT версии 4.0 можно открыть это диалоговое окно на панели управления. In Windows NT version 4.0, you can open this dialog box from Control Panel.
Теперь ваша служба должна отобразиться в списке Службы. You should now see your service listed in the Services section of the window.
Выберите службу в списке, щелкните ее правой кнопкой мыши и нажмите кнопку Запустить. Select your service in the list, right-click it, and then click Start.
Запуск службы вручную из кода To manually start a service from code
Создайте экземпляр класса ServiceController и настройте его для взаимодействия со службой, которой нужно управлять. Create an instance of the ServiceController class, and configure it to interact with the service you want to administer.
Чтобы запустить службу, вызовите метод Start. Call the Start method to start the service.