Odpowiedzi:
Można użyć net stop [service name], aby zatrzymać go i net start [service name]aby uruchomić go ponownie w zasadzie ponownego uruchomienia usługi.
Aby je połączyć, po prostu zrób to - net stop [service name] && net start [service name].
Istnieje również polecenie zbudowane specjalnie do obsługi wiadomości: sc
OPIS:
SC to program wiersza poleceń służący do komunikacji z
Menedżer kontroli usług i usługi.
STOSOWANIE:
sc [polecenie] [nazwa usługi] ...
Opcja ma postać „\\ NazwaSerwera”
Dalszą pomoc dotyczącą poleceń można uzyskać, wpisując: „sc [polecenie]”
Polecenia:
zapytanie ----------- Pyta o status usługi lub
wylicza status dla rodzajów usług.
queryex --------- Pyta o status rozszerzony dla usługi lub
wylicza status dla rodzajów usług.
start ----------- Uruchamia usługę.
pauza ----------- Wysyła żądanie PAUZY do usługi.
interrogate ----- Wysyła zapytanie sterujące INTERROGATE do usługi.
kontynuuj -------- Wysyła żądanie sterowania KONTYNUUJ do usługi.
stop ------------ Wysyła żądanie STOP do usługi.
config ---------- Zmienia konfigurację usługi (trwała).
opis ----- Zmienia opis usługi.
awaria --------- Zmienia działania podejmowane przez usługę w przypadku awarii.
Failflag ----- Zmienia flagę działań niepowodzenia usługi.
sidtype --------- Zmienia typ identyfikatora SID usługi.
privs ----------- Zmienia wymagane uprawnienia usługi.
manageaccount - Zmienia usługę, aby oznaczyć konto usługi
hasło zarządzane przez LSA.
qc -------------- Pyta o informacje dotyczące konfiguracji usługi.
qdescription ---- Odpytuje o opis usługi.
qfailure -------- Sprawdza działania podjęte przez usługę w przypadku awarii.
qfailureflag ---- Sprawdza flagę działań niepowodzenia usługi.
qsidtype -------- Sprawdza typ SID usługi dla usługi.
qprivs ---------- Odpytuje o wymagane uprawnienia usługi.
qtriggerinfo ---- Sprawdza parametry wyzwalające usługi.
qpreferrednode - wysyła zapytanie do preferowanego węzła NUMA usługi.
qrunlevel ------- Sprawdza poziom uruchomienia usługi.
qmanagedaccount-Queries, czy usługa korzysta z konta z
hasło zarządzane przez LSA.
qprotection ----- Sprawdza poziom ochrony procesu usługi.
usuń ---------- Usuwa usługę (z rejestru).
Utwórz ---------- Tworzy usługę. (dodaje go do rejestru).
kontrola --------- Wysyła kontrolę do usługi.
sdshow ---------- Wyświetla deskryptor bezpieczeństwa usługi.
sdset ----------- Ustawia deskryptor bezpieczeństwa usługi.
showsid --------- Wyświetla ciąg SID usługi odpowiadający dowolnej nazwie.
triggerinfo ----- Konfiguruje parametry wyzwalania usługi.
preferowany węzeł --- Ustawia preferowany węzeł NUMA usługi.
poziom pracy -------- Ustawia poziom uruchamiania usługi.
GetDisplayName - Pobiera DisplayName dla usługi.
GetKeyName ------ Pobiera ServiceKeyName dla usługi.
EnumDepend ------ Wylicza zależności serwisowe.
Następujące polecenia nie wymagają nazwy usługi:
sc
boot ------------ (ok | bad) Wskazuje, czy powinien wystartować ostatni boot
zostać zapisany jako ostatnia znana dobra konfiguracja rozruchowa
Zablokuj ------------ Blokuje bazę danych usług
QueryLock ------- Pyta LockStatus o bazę danych SCManager
PRZYKŁAD:
sc uruchom MyService
QUERY i OPCJE QUERYEX:
Jeśli po poleceniu zapytania występuje nazwa usługi, status
za tę usługę jest zwracana. Dalsze opcje nie obowiązują w
ta sprawa. Jeśli po poleceniu zapytania nie występuje nic lub jedno z nich
opcje wymienione poniżej, usługi są wyliczone.
type = Rodzaj usług do wyliczenia (sterownik, usługa, wszystkie)
(domyślnie = usługa)
state = stan usług do wyliczenia (nieaktywne, wszystkie)
(domyślnie = aktywne)
bufsize = Rozmiar (w bajtach) bufora wyliczania
(domyślnie = 4096)
ri = numer indeksu wznowienia, od którego należy rozpocząć wyliczanie
(domyślnie = 0)
group = Grupa usług do wyliczenia
(domyślnie = wszystkie grupy)
PRZYKŁADY SKŁADNI
zapytanie sc - wylicza status aktywnych usług i sterowników
sc dziennik zdarzeń - wyświetla status usługi dziennika zdarzeń
sc queryex dziennik zdarzeń - wyświetla status rozszerzony dla usługi dziennika zdarzeń
sc query type = driver - Wymienia tylko aktywne sterowniki
sc query type = service - Wymienia tylko usługi Win32
stan zapytania sc = wszystkie - wylicza wszystkie usługi i sterowniki
sc query bufsize = 50 - Wylicza z 50-bajtowym buforem
sc zapytanie ri = 14 - Wylicza z indeksem wznowienia = 14
sc queryex group = "" - Wylicza aktywne usługi spoza grupy
sc query type = interact - Zlicza wszystkie usługi interaktywne
sc typ zapytania = grupa sterowników = NDIS - Zlicza wszystkie sterowniki NDIS
net starti wyświetla listę wszystkich uruchomionych usług.
Należy pamiętać, że jeśli istnieją inne usługi zależne od tej usługi - zwykle net stop & net startich nie restartuje. net stop /yzatrzyma wszystkie zależności
Najczęstszy przykład - SQL Server i SQL Agent.
Polecam polecenie cmdlet programu PowerShell, aby rozwiązać ten problem:
powershell -command "Restart-Service MSSQLSERVER -Force"
Po uruchomieniu MSSQLSERVER - cmdlet uruchamia wszystkie wcześniej zatrzymane zależności.
PS: Upewnij się, że uruchomiłeś polecenie jako administrator
Aby ponownie uruchomić usługę Windows z wiersza polecenia lub zaplanowanych zadań, użyj:
cmd /c "net stop "Service Name" & sc start "Service Name""
Narzędzie PsService od PsTools udostępnia restartpolecenie dla usług, z dodatkowymi parametrami, aby uruchomić je na innym komputerze.
psservice [-accepteula] [\\Computer [-u Username [-p Password]]] restart <service-name>
-accepteulaFlag oszczędza okno EULA tylko w przypadku jest to po raz pierwszy skorzystać z tego narzędzia z bieżącego użytkownika.
Jeśli znasz ścieżkę wykonywalną usługi, której możesz użyć
"[service name.exe] console"
W wierszu poleceń.
Pomoże to w debugowaniu problemu, jeśli usługa się nie uruchomi.
[service name].