Executando um script como administrador sem fazer login como administrador


4

Um velho colega meu costumava dizer "Qualquer pergunta é estúpida. Estúpida é evitar perguntar"

Eu sou muito novo no Windows System Administrator (apenas 3/4 meses) e recentemente comecei a trabalhar no powershell 2.0.

Estou administrando um conjunto de serviços do Windows, um deles tentará executar um comando "Start-Service" como parte de um script do PowerShell. Este serviço do Windows está sendo executado em uma conta de domínio "ATG \ Boot" como parte do grupo de administradores.

Mas, Start-Service / Stop-Service sempre falha por esse motivo:

Serviço de parada: O serviço 'SQL Server Reporting Services (MSSQLSERVER) (ReportServer)' não pode ser parado devido ao seguinte erro: Não é possível abrir o serviço ReportServer no computador '.'. Na linha: 1 char: 13 + Serviço de parada <<<< Relatório + CategoriaInfo: ErroErro: (System.ServiceProcess.ServiceController: ServiceController) [Serviço de parada],
ServiceCommandException + FullyQualifiedErrorId: CouldNotStopService, Microsoft.PowerShell.Commands.StopServiceCommand

Este erro é reproduzido quando executo o script a partir do shell, mas funciona corretamente quando executo o script com a opção "Executar como administrador".

Gostaria de enfatizar que o usuário faz parte do grupo de administradores locais.

Alguma ideia?

Respostas:



0

Aqui está um script que eu uso para interromper o serviço do SQL Server. Usando o processo de inicialização com a opção -runas, um processo separado do PowerShell será iniciado como administrador. Você será solicitado a fornecer o UAC.

Start-Process powershell.exe -argumentlist '-noprofile -command get-service -Name "MSSQL`$R2" | ? {$_.Status -eq "Running"} | Stop-Service -Force' -verb runas

Eu tenho um post aqui sobre este assunto.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.