Como gerenciar serviços do Windows usando o PowerShell



Acessar os serviços do Windows com o PowerShell é bastante prático, principalmente se você estiver mexendo com o comportamento de inicialização ou simplesmente quiser criar scripts para ajustes. Não sei bem porquê, mas o gerenciador de serviços gráfico (services.msc) pode ser um incômodo às vezes, ou simplesmente muito lento. Usando comandos do PowerShell, você pode ignorar a interface gráfica e lidar com tudo diretamente do terminal, o que é uma mão na roda para automação ou solução de problemas. Só um aviso: se você estiver tentando definir “Automático (Início Atrasado)”, isso ainda é um recurso registrado na interface gráfica; o PowerShell só lida com os estados “Automático” ou “Manual”.

Como gerenciar serviços do Windows com o PowerShell

Desativar ou ativar um serviço

Se um serviço continua iniciando automaticamente e você deseja impedi-lo, a maneira mais fácil é definir seu tipo de inicialização como “Desativado” antes de reiniciar o computador. Isso funciona na maioria das versões do Windows, incluindo o Windows 10 e edições Server. Lembre-se apenas de que o PowerShell não exibe uma mensagem de sucesso após a alteração do tipo de inicialização, portanto, você precisa verificar o status manualmente.

Get-Service -Name "spooler" | Select-Object -Property Name, StartType Set-Service -Name "spooler" -StartupType Disabled Get-Service -Name "spooler" | Select-Object -Property Name, StartType 

Este trecho de código primeiro verifica qual era o tipo de inicialização do serviço, depois o define como “Desativado” e verifica novamente. Sinceramente, é meio estranho — você não recebe uma confirmação de sucesso, mas se o StartType continuar como “Desativado”, significa que funcionou. Em algumas máquinas, pode ser necessário reiniciar o sistema para impedir completamente que o serviço inicie automaticamente após essa alteração de configuração.

Interrompendo o serviço manualmente

Se você quiser interromper o serviço imediatamente (por exemplo, antes de desligar o computador), você pode executar o seguinte comando:

Stop-Service -Name "spooler"

Isso encerra o serviço instantaneamente, mas lembre-se: se o serviço estiver configurado para iniciar automaticamente após a reinicialização, talvez seja necessário desativá-lo, como mostrado acima, ou alterar seu tipo de inicialização.

Configurar o serviço para manual ou automático

Isso é útil se você quiser que um serviço seja executado somente quando necessário. Por exemplo, para configurá-lo para manual, faça o seguinte:

Set-Service -Name "spooler" -StartupType Manual

E se você quiser que ele inicie automaticamente com o Windows, execute:

Set-Service -Name "spooler" -StartupType Automatic

Observação: Não é possível definir “Automático (Início Atrasado)” via PowerShell — isso ainda requer uma interface gráfica. Você precisaria acessar a interface gráfica ou alterar as configurações do registro, o que é mais um problema.

Reiniciando o serviço

Se você desativou ou interrompeu um serviço e deseja iniciá-lo manualmente novamente, basta executar o seguinte comando:

Start-Service -Name "spooler"

Isso ativa o sistema sem a necessidade de reiniciar. Se você estiver programando scripts, esses comandos são uma maneira rápida de ativar/desativar serviços sem precisar mexer na interface gráfica.

Todos esses comandos tornam o gerenciamento de serviços do Windows mais rápido e flexível, especialmente se você automatiza tarefas ou quer evitar as complicações da interface gráfica. Lembre-se apenas de que, às vezes, o Windows insiste em manter o serviço iniciando automaticamente — então, talvez seja necessário reiniciar o computador ou verificar as configurações de Política de Grupo se algo ficar muito estranho.



Este artigo foi útil?