Как запустить службу в windows server

Служба сервера - это компонент операционных систем Microsoft Windows Server, который позволяет серверу совместно использовать файлы и ресурсы печати с клиентами по сети. Когда...

Служба сервера — это компонент операционных систем Microsoft Windows Server, который позволяет серверу совместно использовать файлы и ресурсы печати с клиентами по сети. Когда перенаправление на клиенте запрашивает общий ресурс с сервера, служба сервера на сервере отвечает и направляет ресурс клиенту.

Службы Microsoft Windows, ранее известные как службы NT, позволяют создавать долго работающие исполняемые приложения, которые запускаются в своих собственных сеансах Windows. Эти службы могут запускаться автоматически при загрузке компьютера, могут быть приостановлены и перезапущены и не отображают никакого пользовательского интерфейса.

Стоит ли отключать серверные службы?

Да, отключение службы должно быть безопасным — при условии, что ваш компьютер не предоставляет общий доступ к файлам или принтерам. Как упоминалось выше, эти службы не будут работать без службы сервера. … Теоретически многие домашние или несетевые компьютеры прекрасно справятся и без постоянной работы LanmanServer.

Как запустить службу Windows Server?

Чтобы запустить сервер как службу Windows, выполните следующие действия:

  1. Войдите на сервер с ID пользователя, который находится в группе администраторов.
  2. В меню «Пуск» Windows нажмите «Выполнить» и введите services. msc и нажмите ОК.
  3. В окне «Службы» выберите экземпляр сервера, который вы хотите запустить, и нажмите «Пуск».

В чем разница между процессом и услугой?

Процесс — это экземпляр запущенного конкретного исполняемого файла (программного файла .exe). Услуга — это процесс, который работает в фоновом режиме и не взаимодействует с рабочим столом.

Какие службы Windows безопасно отключать?

Так что вы можете безопасно отключить эти ненужные службы Windows 10 и удовлетворить свое стремление к чистой скорости.

  • Сначала несколько советов по здравому смыслу.
  • Диспетчер очереди печати.
  • Получение образа Windows.
  • Факс.
  • Блютуз.
  • Поиск Windows.
  • Отчеты об ошибках Windows.
  • Служба предварительной оценки Windows.

Нужна ли мне услуга сервера?

Серверная служба позволяет обмениваться файлами и принтерами на вашем компьютере. Без сервиса вы не сможете поделиться какими-либо ресурсами. Если вы отключите службу, вы можете запретить другим доступ к вашей рабочей станции из сети — фактически, он даже не будет отображаться в сетевом окружении.

Могу ли я отключить службу восприятия Windows?

Введите услуги.

Щелкните службу правой кнопкой мыши и выберите «Свойства». Нажмите кнопку «Стоп» (если служба запущена). Измените тип запуска на Запрещено. Щелкните ОК.

Как мне запустить службу?

Чтобы запустить службу в Windows 10, выполните следующие действия:

  1. Откройте «Старт».
  2. Найдите службы и щелкните верхний результат, чтобы открыть консоль.
  3. Дважды щелкните службу, которую хотите остановить.
  4. Щелкните кнопку «Пуск». Источник: Windows Central.
  5. Нажмите кнопку Применить.
  6. Нажмите кнопку ОК.

Что такое серверная служба?

Что такое серверная служба? Серверная служба, также известная как LanmanServer, компонент операционных систем Microsoft Windows Server, который позволяет серверу обмениваться файловыми ресурсами и ресурсами печати с клиентами по сети.

Как мне найти серверные службы Windows?

Windows всегда использовала панель «Службы» как способ управления службами, работающими на вашем компьютере. Вы можете легко попасть туда в любой момент, просто нажав WIN + R на клавиатуре, чтобы открыть диалоговое окно «Выполнить», и набор услуг. MSC.

Как запустить службу на сервере

Выполнение операции запуска службы на сервере является стандартной процедурой в операционной системе Microsoft Windows и может быть осуществлено стандартным средствами самой системы. Привлечение дополнительного программного обеспечения не требуется.

Как запустить службу на сервере

Инструкция

Нажмите кнопку «Пуск» для вызова главного меню операционной системы Microsoft Windows и перейдите в пункт «Выполнить» для инициации операции включения выбранной службы на сервере.

Введите значение cmd в поле «Открыть» и нажмите кнопку OK для подтверждения выполнения команды запуска инструмента «Командная строка».

Вызовите контекстное меню найденного элемента кликом правой кнопки мыши и выберите команду «Запуск от имени администратора» для соблюдения требований безопасности корпорации Microsoft.

Введите значение net start в текстовое поле командной строки и нажмите функциональную клавишу Enter для подтверждения запроса текущих запущенных служб и воспользуйтесь командой net start «Клиент для сетей NetWare» для запуска одноименной службы. Подтвердите запуск нажатием клавиши Enter.

Используйте значение net start alerter для запуска службы «Оповещатель» или введите значение net start browser в текстовое поле командной строки для запуска службы «Обозреватель компьютеров», отображающей список компьютеров в локальной сети. Подтвердите выполнение команды нажатием клавиши Enter.

Укажите значение net start «Сервер папки обмена» lkz возможности обмена текстовыми или графическими файлами в сети или выберите значение net start dhcp cient для поддержки сетевой конфигурации. Нажмите функциональную клавишу Enter.

Введите значение net start eventlog в текстовое поле командной строки для запуска службы «Журнал событий» или используйте значение net start file replication для запуска службы репликации файлов. Подтвердите запуск выбранной службы нажатием клавиши Enter.

Укажите значение net start messenger для получения возможности отправки сообщений или выберите значение net start netlogon для запуска службы «Сетевой вход в систему». Подтвердите выполнение команды запуска нажатием функциональной клавиши Enter.

Ознакомьтесь со списком других возможных команд и используйте их по мере необходимости.

Видео по теме

Источники:

  • Запуск служб командой net start

Управление системными службами в диспетчере задач
Сегодня хочеться затронуть такой момент, как управление системными службами в диспетчере задач Windows Server 2008.

Службы обеспечивают ключевую функциональность рабочих станций и серверов. Для управления системными службами вы будете использовать узел Службы (Services) диспетчера сервера. Чтобы запустить диспетчер сервера и получить доступ к узлу Службы (Services),  Вам нужно будет выполнить действия указанные в продолжении статьи.

1. Щелкните кнопку Пуск (Start) и команду Администрирование (Administrative Tools), затем выберите команду Диспетчер сервера (Server Manager). Или щелкните кнопку Диспетчер сервера (Server Manager) на панели быстрого запуска.

2. В окне Диспетчер сервера (Server Manager) разверните узел Конфигурация (Configuration).

3. Выделите узел Службы (Services), чтобы просмотреть полный список служб, установленных в системе. По умолчанию список отсортирован по имени службы и включает следующие столбцы:

Имя (Name) Имя службы. Дважды щелкните запись, чтобы настроить параметры запуска. Здесь перечислены только установленные службы. Если необходимая вам служба отсутствует, установите её, добавив соответствующую роль или компонент.

Описание (Description) Краткое описание назначения службы.

Состояние (Status) Состояние службы — работает, приостановлена или остановлена (остановленной службе соответствует пустое поле).

• Тип запуска (Startup Туре) Настройка запуска службы. Автоматические службы запускаются при загрузке. Пользователи и службы могут запускать другие службы вручную. Отключенные службы нельзя запустить, пока они выключены.

• Вход от имени (Log On As) Учетная запись, от имени которой работает служба. В большинстве случаев это учетная запись локальной системы.

У панели Службы (Services) два представления: расширенное и стандартное. Чтобы изменить представление, щелкните соответствующую вкладку в нижней части панели Службы (Services). В расширенном представлении отображаются быстрые ссылки для управления службами. Щелкните Запустить (Start), чтобы запустить остановленную службу. Щелкните Перезапустить (Restart) для остановки и повторного запуска работающей службы, по существу, для ее перезагрузки. Если вы выделите службу в расширенном представлении, то увидите также ее описание.

Для того, что бы снизить риск импотенции врачи не рекомендуют употребять алкоголь и курить. Для повышения потенции чаще пейте чай с различными травами — чебрецом, зверобоем. Сексуальная Потенция должна стать Вашей гордостью, а не причиной к разочарованию.

В Windows вы можете управлять службами не только из графической консоли services.msc или утилиты командной строки Sc.exe (первоначальна включалась в пакет ресурсов Resource Kit), но и с помощью PowerShell. В этой статье мы смотрим различные сценарии управления службами Windows с помощью PowerShell.

Содержание:

  • Основные командлеты PowerShell для управления службами Windows
  • Остановка, запуск, приостановка и перезапуск служб из PowerShell
  • Set-Service – изменение настроек службы Windows
  • Создание и удаление служб Windows c помощью PowerShell
  • Изменение учетной записи для запуска службы

Основные командлеты PowerShell для управления службами Windows

Существует восемь основных командлетов Service, предназначенных для просмотра состояния и управления службами Windows.

Чтобы получить весь список командлетов Service, введите команду:

Get-Help *-Service

управление службами windows из powershell

  • Get-Service — позволяет получить службы на локальном или удаленном компьютере, как запущенные, так и остановленные;
  • New-Service – создать службу. Создает в реестре и базе данных служб новую запись для службы Windows;
  • Restart-Service – перезапустить службу. Передает сообщение об перезапуске службы через Windows Service Controller
  • Resume-Service – возобновить службы. Отсылает сообщение о возобновлении работы диспетчеру служб Windows;
  • Set-Service — изменить параметры локальной или удаленной службы, включая состояние, описание, отображаемое имя и режим запуска. Этот командлет также можно использовать для запуска, остановки или приостановки службы;
  • Start-Service – запустить службу;
  • Stop-Service – остановить службу (отсылает сообщение об остановке диспетчеру служб Windows);
  • Suspend-Service приостановить службу. Приостановленная служба по-прежнему выполняется, однако ее работа прекращается до возобновления работы службы, например с помощью командлета Resume-Service.

Получить подробное описание и примеры использования конкретного командлета можно через Get-help:

Get-Help Start-Service

Get-Help Start-Service

Get-Service: получаем список служб и их состояние

Получить список и состояние (Running/Stopped) службы на локальном или удаленном компьютере можно с помощью командлета Get-Service. Параметр -Name позволяет делать отбор по имени службы. Имя службы можно задать с использованием подстановочного символа *.

Get-Service просмотр состояния служб

Если вы не знаете точное имя службы, есть возможность найти службы по отображаемому имени с помощью параметра –DisplayName. Можно использовать список значений и подстановочные знаки.

Get-Service поиск по имени службы .

Командлет Get-Service можно использовать для получения состояния служб на удаленных компьютерах, указав параметр -ComputerName. Можно опросить статус службы сразу на множестве удаленных компьютеров, их имена нужно перечислить через запятую. Например, приведенная ниже команда получает состояние службы Spooler на удаленных компьютерах RM1 и RM2.

Get-Service spooler –ComputerName RM1,RM2

Status Name DisplayName
------ ---- -----------
Running spooler Print Spooler
Stopped spooler Print Spooler

Вывести все свойства службы позволит командлет Select-Object:

Get-Service spooler | Select-Object *

вывести все свойства службы windows

Командлет Select-Object позволит вывести определенные свойства службы. Например, нам нужно вывести имя, статус и доступные возможности службы Spooler:

Get-Service Spooler | Select DisplayName,Status,ServiceName,Can*

Get-Service - можно ли перезапускать, приостаналивать службу windows

Командлет Get-Service имеет два параметра, которые позволяют получить зависимости служб:

  • Параметр -DependentServices позволяет вывести службы, которые зависят от данной службы;
  • Параметр -RequiredServices позволяет вывести службы, от которых зависит данная служба.

Приведенная ниже команда выводит службы, необходимые для запуска службе Spooler:

Get-Service –Name Spooler -RequiredServices

Get-Service RequiredServices зависимости служб в windows

Следующая команда выводит службы, которые зависят от службы Spooler:

Get-Service –Name Spooler -DependentServices

Get-Service DependentServices

При необходимости найти службы с определенным состоянием или параметрами, используйте командлет Where-Object. Например, получим список запущенных служб со статусом Running:

Get-Service | Where-Object {$_.status -eq 'running'}

Get-Service | Where-Object status -eq 'running' - вывести запущенные службы

Для вывода служб с типом запуска Manual, выполните команду

Get-Service | Where-Object {$_.starttype -eq 'Manual'}

Get-Service | Where-Object {$_.starttype -eq 'Manual'

Проверить, что в системе имеется указанная служба:

if (Get-Service "ServiceTest" -ErrorAction SilentlyContinue)

{
Write-host "ServiceTest exists"
}

Остановка, запуск, приостановка и перезапуск служб из PowerShell

Остановить службу можно с помощью командлета Stop-Service. Чтобы остановить службу печати, выполните команду:

Stop-Service -Name spooler

Командлет Stop-Service не выводит никаких данных после выполнения. Чтобы увидеть результат выполнения команды, используйте параметр -PassThru.

Командлет Stop-Service - остановит службу

Обратите внимание, что не каждую службу можно остановить. Если есть зависимые службы, то получите ошибку

Cannot stop service because it has dependent services. It can only be stopped if force flag set.

Stop-Service - ошибка Cannot stop service because it has dependent services. It can only be stopped if force flag set

Для принудительной остановки используйте параметр –Force. Вы должны помнить, что остановятся также все зависимые службы:

Stop-Service samss –Force -Passthru

Следующая команда остановит перечисленные службы (bits,spooler) со статусом ”Running”:

get-service bits,spooler | where {$_.status -eq 'running'} | stop-service –passthru

остановить несколько служб из powershell

Командлет Start-Service запускает остановленные службы:

Start-Service -Name spooler -PassThru

Start-Service -запуск службы

Служба не запустится, если есть остановленные зависимые службы. Чтобы их найти и включить:

get-service samss | Foreach { start-service $_.name -passthru; start-service $_.DependentServices -passthru}

Start-Service запустить службу и все зависимые службы

Командлет Suspend-Service может приостанавливать службы, допускающие временную приостановку и возобновление. Для получения сведений о возможности временной приостановки конкретной службы используйте командлет Get-Service со свойством «CanPauseAndContinue«.

Get-Service samss | Format-List name, canpauseandcontinue

Get-Service canpauseandcontinue

Чтобы отобразить список всех служб, работа которых может быть приостановлена, введите команду:

Get-Service | Where-Object {$_.canpauseandcontinue -eq "True"}

список служб, разрешающих приостановку

Приостановим службу SQLBrowser:

Suspend-Service -Name SQLBrowser

Suspend-Service

Для возобновления работы приостановленной службы служит командлет Resume-service:

Resume-Service -Name SQLBrowser

Resume-Service

Следующая команда возобновляет работу всех приостановленных служб:

get-service | where-object {$_.Status -eq "Paused"} | resume-service

Командлет Restart-Service перезапускает службу:

Restart-Service -Name spooler

Restart-Service - перезапуск службы windows

Эта команда запускает все остановленные сетевые службы компьютера:

get-service net* | where-object {$_.Status -eq "Stopped"} | restart-service

Параметр —ComputerName у этих командлетов отсутствует, но их можно выполнить на удаленном компьютере с помощью командлета Invoke-Command или через пайп:

Например, чтобы перезапустите очередь печати на удаленном компьютере RM1, выполните команду:
Get-Service Spooler -ComputerName RM1 | Start-Service

Set-Service – изменение настроек службы Windows

Командлет Set-Service позволяет изменить параметры или настройки служб на локальном или удаленном компьютере. Так как состояние службы является свойством, этот командлет можно использовать для запуска, остановки и приостановки службы. Командлет Set-Service имеет параметр -StartupType, позволяющий изменять тип запуска службы.

Изменим тип запуска службы spooler на автоматический:

Set-Service spooler –startuptype automatic –passthru

Set-Service включить автозапуск для службы

Можно перевести службу на ручной (manual) запуск:

Set-Service spooler –startuptype manual –passthru

ручной запуск службы

Создание и удаление служб Windows c помощью PowerShell

New-Service – командлет для создания новой службы в Windows. Для новой службы требуется указать имя и исполняемый файл (вы можете запустить PowerShell скрипт как службу Windows).

В примере создадим новую службу с именем TestService.

new-service -name TestService -binaryPathName "C:WINDOWSSystem32svchost.exe -k netsvcs"

New-Service создать новую службу в windows

С помощью параметра Get-WmiObject получим информацию о режиме запуска и описание службы

get-wmiobject win32_service -filter "name='testservice'"

get-wmiobject win32_service -filter "name='testservice'"

Изменить параметры новой службы можно командой

Set-Service -Name TestService -Description ‘My Service’ -StartupType Manual

Set-Service - изменить тип запуска службы

Чтобы удалить службу используйте команду

(Get-WmiObject win32_service -Filter ″name=′TestService′″).delete()

Изменение учетной записи для запуска службы

Вы можете изменить учетную запись, из-под которой запускается служба. Получим имя учетной записи, которая используется для запуска службы TestService

get-wmiobject win32_service -filter "name='TestService'" | Select name,startname

изменить учетную запись для запуска служб

Для изменения имени и пароля учетной записи выполняем команды.

$svc = get-wmiobject win32_service -filter "name='TestService'"
$svc.GetMethodParameters("change")

В результате получаем список параметров метода Change(). Считаем на каком месте находятся параметры StartName и StartPassword – 20 и 21 место соответственно.

svc.GetMethodParameters

$svc | Invoke-WmiMethod -Name Change –ArgumentList @ ($null,$null,$null,$null,$null,$null,$null, $null,$null,$null,$null,$null,$null,$null,$null,$null, $null,$null,$null,"Administrator","[email protected]")

Либо вы можете указать имя gMSA аккаунта. Пароль при этом не указывается.

Invoke-WmiMethod - запуск службы из под другого пользователя

Как видите, PowerShell позволяет легко управлять службами Windows. Можно создавать, останавливать, запускать и возобновлять службы, менять их свойства. Большинство командлетов позволяют управлять службами на удаленных компьютерах.


Продолжаем знакомиться с тем, как осуществлять управление службами Windows с использованием PowerShell. В предыдущем посте мы рассмотрели, как получить статус службы на локальном и удаленном компьютере, произвести фильтрацию служб (например, найти только остановленные службы) и определить зависимые службы. В этом посте будут рассмотрены такие достаточно тривиальные вещи, как:

  1. Остановка службы
  2. Запуск службы
  3. Перезапуск службы
  4. Приостановка и возобновление работы
  5. Управление удаленными службами
  6. Настраиваем автозагрузку службы

Мы уделим большее внимание разбору команд в PowerShell для осуществления выше перечисленного на локальном компьютере. В разделе “управление службами удаленных компьютерах” мы рассмотрим, ограничения работы в PowerShell v2 и v3. Подробности под катом.

Предыдущая статья:
Управляем службами Windows с помощью PowerShell. Часть 1. Получаем статус служб

PS C:> get-service bits
Status Name DisplayName
------ ---- -----------
Running bits Background Intelligent Transfer Ser...

Так как команда для получения статуса службы называется Get-Service, догадаться о том, как пишутся другие команды не составит труда. На худой конец мы можем спросить у PowerShell обо всех командах, так или иначе относящихся к работе со службами. Обратите внимание, что мы использовали параметр –noun для получения всех команд, связанных со службами.

Взглянем на эти команды внимательнее.

STOP-SERVICE

Чтобы остановить службу, мы должны уточнить ее имя.

PS C:> stop-service wuauserv

Однако в конвейер ничего не будет передано. Некоторые командлеты, такие как Stop-Service, созданы таким образом, что по умолчанию они не записывают объект в конвейер. Мы же заставим это сделать, использовав параметр –Passthru.

PS C:> stop-service bits -PassThru
Status Name DisplayName
------ ---- -----------
Stopped bits Background Intelligent Transfer Ser...

Если служба не запущена, то командлет ничего не выведет, равно как и не выдаст никакой ошибки. Поэтому иногда лучше передать объект в Stop-Service (естественно использовав при этом параметр –whatif).

PS C:> get-service browser | stop-service -WhatIf
What if: Performing operation “Stop-Service” on Target “Computer Browser (browser)”.

Параметр –WhatIf был добавлен для того, чтобы мы посмотрели, что будет, если командлет будет запущен. Когда я удостоверюсь, что это именно та служба, которая меня интересует, я просто удалю -Whatif и остановлю службу.

PS C:> get-service browser | stop-service

Как я уже упомянул выше, если служба уже остановлена, то командлет ничего не сделает. И использование Stop-Service в этом случае никому не навредит. Однако я все же предпочитают более цивилизованный подход, а именно:

PS C:> get-service bits | where {$_.status -eq 'running'} | stop-service -pass
Status Name DisplayName
------ ---- -----------
Stopped bits Background Intelligent Transfer Ser...

Если служба запущена, то объект передается в конвейер и отправляется в Stop-Service. Ниже приведен вариант с остановкой нескольких служб.

PS C:> get-service bits,wsearch,winrm,spooler | where {$_.status -eq 'running'} | stop-service -whatif
What if: Performing operation "Stop-Service" on Target "Print Spooler (spooler)".
What if: Performing operation "Stop-Service" on Target "Windows Remote Management (WS-Management) (winrm)".
What if: Performing operation "Stop-Service" on Target "Windows Search (wsearch)".

Некоторые службы не захотят останавливаться – в силу наличия зависимых служб – что мы и видим на скриншоте ниже.

В таком случае используем параметр –Force. В большинстве случаев это работает, но без “защиты от дурака”. Помните, что команда также остановит зависимые службы.

PS C:> stop-service lanmanserver -force –PassThru
Status Name DisplayName
------ ---- -----------
Stopped Browser Computer Browser
Stopped lanmanserver Server

START-SERVICE

Запуск службы осуществляется аналогичным образом. Он поддерживает параметр –Whatif, и вам придется использовать –Passthru, чтобы увидеть объекты.

PS C:> start-service wuauserv -PassThru
Status Name DisplayName
------ ---- -----------
Running wuauserv Windows Update

И снова: если служба уже запущена, командлет ничего не сделает. Однако вы можете попытаться запустить службу и получите такую ошибку.

Причиной тому в большинстве случаев является выключенные службы. Как конфигурировать настройки службы, я расскажу в следующей статье.
Если вы хотите запустить службы и все службы, зависимые от нее, используйте следующее выражение:

PS C:> get-service lanmanserver | Foreach { start-service $_.name -passthru; start-service $_.DependentServices -passthru}
Status Name DisplayName
------ ---- -----------
Running lanmanserver Server
Running Browser Computer Browser

Мы должны явно получить зависимые службы, потому что Start-Service не запустит автоматически их.

RESTART-SERVICE

Вы удивитесь, но перезапуск службы работает также как два предыдущих примера. Используйте –Passthru, если хотите убедиться, что служба запущена.

PS C:> restart-service spooler -PassThru
Status Name DisplayName
------ ---- -----------
Running spooler Print Spooler

Так как мы осуществляем остановку службы, нам может понадобиться параметр –Force.

ПРИОСТАНОВКА И ВОЗОБНОВЛЕНИЕ РАБОТЫ

Работа некоторых служб может быть приостановлена на некоторое время, а затем возобновлена, и мы можем это сделать через PowerShell. Однако если служба не удовлетворяет требованиям, мы получим такие ошибки. (на примере показано, что мы пытались приостановить службу bits)

В чем же проблема? Смотрим на объект (используя Get-Service).

PS C:> get-service bits | select *
Name : bits
RequiredServices : {RpcSs, EventSystem}
CanPauseAndContinue : False
CanShutdown : False
CanStop : True
DisplayName : Background Intelligent Transfer Service
DependentServices : {}
MachineName : .
ServiceName : bits
ServicesDependedOn : {RpcSs, EventSystem}
ServiceHandle : SafeServiceHandle
Status : Running
ServiceType : Win32ShareProcess
Site :
Container :

Если значение свойства CanPauseAndContinue равно True, значит мы можем приостанавливать и возобновлять работу службы. Найдем такие службы:

PS C:> get-service | where {$_.CanPauseandContinue}
Status Name DisplayName
------ ---- -----------
Running LanmanServer Server
Running LanmanWorkstation Workstation
Running MSSQLSERVER SQL Server (MSSQLSERVER)
Running O2FLASH O2FLASH
Running stisvc Windows Image Acquisition (WIA)
Running Winmgmt Windows Management Instrumentation

Как мы видим, не так много служб удовлетворяют этому требованию.

PS C:> suspend-service o2flash -PassThru
Status Name DisplayName
------ ---- -----------
Paused O2FLASH o2flash

Готовы возобновить работу службы? Используйте следующее выражение:

PS C:> resume-service o2flash -PassThru
Status Name DisplayName
------ ---- -----------
Running O2FLASH o2flash

Оба командлета также поддерживают –Whatif.

УДАЛЕННЫЕ СЛУЖБЫ

Как вы могли обратить внимание, все примере выше мы демонстрировали на локальном машине. И это неслучайно. К сожалению даже в PowerShell v3, ни у одного из этих командлетов нет параметра, который позволял бы управлять службой на удаленном компьютере. Get-Service, конечно, поддерживает параметр –Computername, но не более. Службу лицезреть вы сможете, а что-либо с ней сделать не получится. Нет, можно, конечно, если удаленный компьютер работает с PS v2 и включен PowerShell Remoting. Тогда мы можете использовать все выше приведенные команды, используя Invoke-Command для удаленного компьютера или PSSession. С другой стороны, проще управлять одной службой на нескольких серверах.

PS C:> Invoke-Command {restart-service dns –passthru} –comp chi-dc03,chi-dc02,chi-dc01

Управление службами на удаленных компьютерах не ограничивается вышеперечисленным, но это уже будет предмет рассмотрения последующих статей.
Все эти командлеты могут быть использованы в конвейерном выражении и зачастую это лучший вариант. Использование Get-Service для получения объектов и последующая передача их в подходящий командлет.

УСТАНАВЛИВАЕМ УДАЛЕННЫЙ СТАТУС

Итак, мы выяснили, что у командлета Stop-Service отсутствует такой полезный параметр как –Computername. Мы можете использовать эти команды в удаленной сессии, обратившись к командлету Invoke-Command, что уже само по себе продуктивно, если вы работаете со службой на нескольких компьютерах. Одно можно запускать, останавливать, перезапускать, ставить на паузу и запускать заново, используя Set-Service.

PS C:> set-service wuauserv -ComputerName chi-dc03 -Status stopped -WhatIf
What if: Performing operation "Set-Service" on Target "Windows Update (wuauserv)".

Эта команда поддерживает параметр –WhatIf. Вы также должны использовать –Passthru для передачи объектов в конвейер.

PS C:> set-service bits -ComputerName chi-dc03 -Status running -PassThru
Status Name DisplayName
------ ---- -----------
Running bits Background Intelligent Transfer Ser...

Валидными значениям для параметра –Status являются “запущена” (running), “остановлена” (stopped) и “на паузе” (paused). Помните, что у службы есть зависимые службы, мы не сможете изменять ее, что и продемонстрировано на скриншоте ниже.

К сожалению, у Set-Service отсутствует параметр –Force, поэтому придется вернуться к использованию PowerShell remoting и Invoke-Command. Если вы хотите перезапустить удаленную службу, используйте следующую команду:

PS C:> set-service w32time -ComputerName chi-dc03 -Status Stopped -PassThru | set-service -PassThru -Status Running
Status Name DisplayName
------ ---- -----------
Running w32time Windows Time

Не забудьте использовать –Passthru, в противном случае вторая команда Set-Service ничего не осуществит.
Что по мне, так я предпочитаю работать сразу с несколькими службами, которые я не могу удаленно остановить, используя Set-Service, хотя их запуск проблем составляет. Я использую Invoke-Command. Но помните, что используя параметр –Computername PowerShell осуществляет подключение, используя RPC и DCOM, что может привести к проблемам с файрволом. Invoke-Command использует PowerShell remoting, который мы может быть еще не настроили или не включили.

УСТАНАВЛИВАЕМ ТИП АВТОЗАПУСКА СЛУЖБЫ

Set-Service полезнен, когда вы хотите включить или отключить службу, используя параметр –StartupType. Если Вы настроили службу, используя значения Automatic, Manual or Disabled. К сожалению, не существует варианта для Automatic (Delayed).

PS C:> set-service remoteregistry -StartupType Manual -WhatIf
What if: Performing operation "Set-Service" on Target "Remote Registry (remoteregistry)".
PS C:> set-service remoteregistry -StartupType Manual -PassThru
Status Name DisplayName
------ ---- -----------
Stopped remoteregistry Remote Registry

Однако, просто взглянув на объект, мы не сможем сказать, к какому типу автозагрузки он относится.

PS C:> get-service remoteregistry | select *
Name : remoteregistry
RequiredServices : {RPCSS}
CanPauseAndContinue : False
CanShutdown : False
CanStop : False
DisplayName : Remote Registry
DependentServices : {}
MachineName : .
ServiceName : remoteregistry
ServicesDependedOn : {RPCSS}
ServiceHandle : SafeServiceHandle
Status : Stopped
ServiceType : Win32ShareProcess
Site :
Container :

Как это сделать – одна из тем следующей статьи.
Помните, что изменение типа автозагрузки не повлияет на текущий статус службы.

PS C:> set-service remoteregistry -StartupType Disabled -PassThru
Status Name DisplayName
------ ---- -----------
Running remoteregistry Remote Registry

Так что если вы хотите выключить и остановить (или включить и запустить) службу, передайте объект в подходящий командлет.

PS C:> set-service remoteregistry -StartupType Disabled -PassThru | Stop-Service -PassThru
Status Name DisplayName
------ ---- -----------
Stopped remoteregistry Remote Registry

Технически, Set-Service позволяет вам изменить отображаемое имя службы и описание, но лично мне никогда не приходилось использовать в своей работе. Я использую Set-Service для включения и выключения служб. Если необходимо управлять службами удаленно, то я использую Invoke-Command.
Все, что я продемонстрировал в последних статьях, было связано с использованием специфических типов объектов службы, которые, как вы могли заметить, имеют некоторые ограничения. В следующей статье мы рассмотрим другие возможности по управлению службами, которые призваны обойти эти ограничения.

Upd:
В посте приведены переводы статей с портала 4sysops.com
Managing Services the PowerShell way – Part 3
Managing Services the PowerShell way – Part 4

logo_Windows_Server_2012В данной статье будет рассказано о том, как отредактировать параметры запуска служб в Windows на примере службы «Агент сервера 1С:Предприятия 8.3». Будет показано как настроить тип запуска служб, изменить учетные данные для запуска службы, а также изменить параметры запуска исполняемого файла службы.

0. Оглавление

  1. Изменение свойств запуска службы
  2. Изменение параметров запуска исполняемого файла службы

1. Изменение настроек запуска службы

Предположим у нас имеется работающая служба, пусть это будет «Агент сервера 1С:Предприятия 8». Для того что бы отредактировать свойства запуска данной службы перейдем в оснастку «Службы» (Services).

В Microsoft Windows Server 2012 эту оснастку можно найти в Диспетчере серверов (Server Manager), пункт меню «Средства» (Tools) — «Службы» (Services).

redaktirovanie-parametrov-sluzhb-v-windows_01

В Microsoft Windows Server 2008 R2 в меню «Пуск» (Start) — «Администрирование» (Administrative Tools) — «Службы» (Services)

redaktirovanie-parametrov-sluzhb-v-windows_02

Ну или в любой версии Windows можно выполнить команду services.msc. Для этого необходимо нажать комбинацию клавиш Win + R, в открывшемся окне «Выполнить» (Run) ввести имя команды в поле «Открыть» (Open) и нажать «ОК».

redaktirovanie-parametrov-sluzhb-v-windows_03

Далее в открывшейся оснастке, в списке служб находим службу, параметры запуска которой необходимо отредактировать.

redaktirovanie-parametrov-sluzhb-v-windows_04

Кликаем два раза по имени службы, чтобы открыть ее свойства. В окне свойств службы  можно отредактировать нижеперечисленные параметры запуска службы.

На закладке «Общие» (General) можно настроить тип запуска службы (Startup type) — Автоматически (Automatic), Вручную (Manual), Отключена (Disabled) или Автоматически (отложенный запуск) (Automatic (Delayed Start)), выбрав соответствующий вариант из списка. А также возможно Остановить (Stop), Приостановить (Pause) или Запустить (Start) данную службу.

redaktirovanie-parametrov-sluzhb-v-windows_05

На закладке «Вход в систему» (Log on) можно настроить параметры учетной записи (account), от которой будет запускаться выбранная служба. Возможно настроить запуск от системной учетной записи (Local System account), или выбрать конкретного пользователя Windows, указав его имя и пароль.

redaktirovanie-parametrov-sluzhb-v-windows_06

На закладке «Восстановление» (Recovery) можно задать действия, которые будет выполнять система при сбое службы.

redaktirovanie-parametrov-sluzhb-v-windows_07

На закладке «Зависимости» (Dependencies) можно настроить зависимость запуска службы от различных компонент системы.

redaktirovanie-parametrov-sluzhb-v-windows_08

2. Изменение параметров запуска исполняемого файла службы

В окне свойств службы, на закладке «Общие» (General) возможно просмотреть путь к исполняемому файлу службы, а также увидеть передаваемые для его запуска параметры.

redaktirovanie-parametrov-sluzhb-v-windows_09

Однако эта информация доступна только для чтения. Изменить строку запуска исполняемого файла службы можно с помощью системного реестра Windows.

Для запуска системного реестра, следует выполнить команду regedit.exe. Для этого необходимо нажать комбинацию клавиш Win + R, в открывшемся окне «Выполнить» (Run) ввести имя команды в поле «Открыть» (Open) и нажать «ОК».

В первую очередь при работе с реестром Windows необходимо сделать бэкап, выполнив экспорт всего реестра.

После этого в дереве папок слева переходим по пути:

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices

Затем в списке выделим группу с именем службы, свойства которой необходимо отредактировать. При этом, в окне справа увидим все параметры данной службы.

redaktirovanie-parametrov-sluzhb-v-windows_10

Кликаем 2 раза по имени параметра, который необходимо изменить и вводим новое значение.

Например, пусть нам необходимо запустить сервер «1С:Предприятие» в режиме отладки, т. е. добавить в строку запуска параметр -debug. Для этого меняем значение параметра ImagePath.

redaktirovanie-parametrov-sluzhb-v-windows_11

Нажимаем «ОК», для сохранения изменений и закрываем редактор реестра.

Перезапускаем службу для того, чтобы изменения вступили в силу. Сделать это моно также из оснастки «Службы» (Services), кликнув правой кнопкой мыши по имени службы в списке и выбрав в контекстном меню «Перезапустить» (Restart).

redaktirovanie-parametrov-sluzhb-v-windows_12

На этом все. Изменения вступили в силу, соответственно агент сервера запущен в режиме отладки.

Понравилась статья? Поделить с друзьями:
  • Как запустить службу брандмауэр windows 10 через командную строку
  • Как запустить службу беспроводной связи windows 10 на ноутбуке hp
  • Как запустить службу беспроводной связи windows 10 на компьютере
  • Как запустить службу аудио на ноутбуке windows 7
  • Как запустить скрипт python в windows по расписанию