Risposte:
Si può usare net stop [service name]
per fermare e net start [service name]
per iniziare di nuovo in fondo il riavvio del servizio.
Per combinarli basta fare questo - net stop [service name] && net start [service name]
.
Esiste anche un comando creato appositamente per i messaggi con i servizi: sc
DESCRIZIONE: SC è un programma a riga di comando utilizzato per comunicare con Service Control Manager e servizi. USO: sc [comando] [nome servizio] ... L'opzione ha il formato "\\ ServerName" Ulteriore aiuto sui comandi può essere ottenuto digitando: "sc [comando]" comandi: query ----------- Interroga lo stato di un servizio o enumera lo stato per i tipi di servizi. queryex --------- Interroga lo stato esteso per un servizio, oppure enumera lo stato per i tipi di servizi. start ----------- Avvia un servizio. pause ----------- Invia una richiesta di controllo PAUSE a un servizio. interrogate ----- Invia una richiesta di controllo INTERROGATE a un servizio. continua -------- Invia una richiesta di controllo CONTINUA a un servizio. stop ------------ Invia una richiesta STOP a un servizio. config ---------- Modifica la configurazione di un servizio (persistente). descrizione ----- Modifica la descrizione di un servizio. fallimento --------- Modifica le azioni intraprese da un servizio in caso di guasto. failureflag ----- Modifica il flag delle azioni di errore di un servizio. sidtype --------- Modifica il tipo SID del servizio di un servizio. privs ----------- Modifica i privilegi richiesti di un servizio. managedaccount: modifica il servizio per contrassegnare l'account del servizio password gestita da LSA. qc -------------- Interroga le informazioni di configurazione per un servizio. qdescription ---- Interroga la descrizione per un servizio. qfailure -------- Interroga le azioni intraprese da un servizio in caso di errore. qfailureflag ---- Interroga il flag delle azioni di errore di un servizio. qsidtype -------- Interroga il tipo SID del servizio di un servizio. qprivs ---------- Interroga i privilegi richiesti di un servizio. qtriggerinfo ---- Interroga i parametri di trigger di un servizio. qpreferrednode - Interroga il nodo NUMA preferito di un servizio. qrunlevel ------- Interroga il livello di esecuzione di un servizio. qmanagedaccount-Verifica se un servizio utilizza un account con a password gestita da LSA. qprotection ----- Interroga il livello di protezione del processo di un servizio. elimina ---------- Elimina un servizio (dal registro). create ---------- Crea un servizio. (lo aggiunge al registro). control --------- Invia un controllo a un servizio. sdshow ---------- Visualizza il descrittore di sicurezza di un servizio. sdset ----------- Imposta il descrittore di sicurezza di un servizio. showsid --------- Visualizza la stringa SID del servizio corrispondente a un nome arbitrario. triggerinfo ----- Configura i parametri di trigger di un servizio. favoritenode --- Imposta il nodo NUMA preferito di un servizio. runlevel -------- Imposta il livello di esecuzione di un servizio. GetDisplayName: ottiene DisplayName per un servizio. GetKeyName ------ Ottiene il ServiceKeyName per un servizio. EnumDepend ------ Enumera le dipendenze del servizio. I seguenti comandi non richiedono un nome di servizio: sc boot ------------ (ok | bad) Indica se l'ultimo avvio dovrebbe essere salvato come ultima configurazione di avvio valida Blocca ------------ Blocca il database dei servizi QueryLock ------- Interroga LockStatus per il database SCManager ESEMPIO: sc avvia MyService OPZIONI QUERY e QUERYEX: Se il comando query è seguito da un nome di servizio, lo stato per quel servizio viene restituito. Ulteriori opzioni non si applicano in questo caso. Se il comando query è seguito da niente o uno dei le opzioni elencate di seguito, i servizi sono elencati. type = Tipo di servizi da enumerare (driver, servizio, tutti) (impostazione predefinita = servizio) state = State of services to enumerate (inattivo, tutto) (impostazione predefinita = attiva) bufsize = La dimensione (in byte) del buffer di enumerazione (impostazione predefinita = 4096) ri = Il numero di indice del curriculum da cui iniziare l'enumerazione (impostazione predefinita = 0) group = Gruppo di servizi da enumerare (impostazione predefinita = tutti i gruppi) ESEMPI DI SINTASSI query sc - Enumera lo stato per servizi e driver attivi sc query eventlog - Visualizza lo stato per il servizio eventlog sc queryex eventlog - Visualizza lo stato esteso per il servizio eventlog sc query type = driver - Enumera solo i driver attivi sc query type = service - Enumera solo i servizi Win32 sc query state = all - Enumera tutti i servizi e driver sc query bufsize = 50 - Enumera con un buffer di 50 byte sc query ri = 14 - Enumera con resume index = 14 sc queryex group = "" - Enumera i servizi attivi non in un gruppo sc query type = interact - Enumera tutti i servizi interattivi sc query type = driver group = NDIS - Enumera tutti i driver NDIS
net start
ed elenca tutti i servizi in esecuzione.
Si prega di notare che se ci sono altri servizi che dipendono da questo servizio - di solito net stop & net start
non li riavvieranno. net stop /y
fermerà tutte le dipendenze
Esempio più comune: SQL Server e SQL Agent.
Raccomando il cmdlet di PowerShell per risolvere questo:
powershell -command "Restart-Service MSSQLSERVER -Force"
Dopo l'avvio di MSSQLSERVER, il cmdlet avvia tutte le dipendenze precedentemente interrotte.
PS: assicurati di eseguire il comando come amministratore
Per riavviare un servizio Windows dal prompt dei comandi o dalle attività pianificate, utilizzare questo:
cmd /c "net stop "Service Name" & sc start "Service Name""
L' utilità PsService di PsTools fornisce un restart
comando per i servizi, con parametri aggiuntivi per eseguirlo su un altro computer.
psservice [-accepteula] [\\Computer [-u Username [-p Password]]] restart <service-name>
Il -accepteula
flag ti salva la finestra EULA nel caso fosse la prima volta che usi questa utility con l'utente corrente.
Nel caso in cui si conosca il percorso della posizione eseguibile del servizio che è possibile utilizzare
"[service name.exe] console"
Sulla riga di comando.
Ciò ti aiuterà effettivamente a eseguire il debug del problema se il servizio non si avvia.
[service name]
.