Backup Windows 10 Services Konfiguration af opstartstype

2016-09-19 17:40:27
Vigtigste·Microsoft·Backup Windows 10 Services Konfiguration af opstartstype

Efter at have udført en ny installation af Windows 10 er deaktivering af ubrugte Windows Services en af ​​de tidskrævende opgaver, du udfører. Når den er konfigureret, kan du sikkerhedskopiere servicestartstatus ved hjælp af et script, så den kan bruges til efterfølgende installationer, eller hvis du har brug for at automatisere opgaven på flere computere.

Servicestatus-sikkerhedskopier kan også hjælpe, når du fejler Windows-tjenester og hurtigt vil gendanne de ændringer, du foretager.

RELATERET: Slet en service i Windows ved hjælp af kommandolinje, Regedit eller Autoruns

Backup Services-konfiguration (opstartstype) i Windows

Her er en Windows Services-startkonfigurationskopi VBScript, som jeg skrev. Scriptet sikkerhedskopierer startstatus for alle tjenester ved at udlæse servicekonfigurationen i to filformater - .reg (registreringsposter) og .bat (Windows Batch-fil), så du kan gendanne servicekonfigurationen senere.

 'Beskrivelse: Dette script sikkerhedskopierer Windows Services opstartkonfiguration til en REG-fil. 'For Windows 10, Windows Server 2016' © 2016-2019 Ramesh Srinivasan 'Hjemmeside: https://www.winhelponline.com/blog/' Revideret: 7. juli, 2019 Option Eksplicit Hvis WScript.Arguments.length = 0 Så Dim objShell : Indstil objShell = CreateObject ("Shell.Application") objShell.ShellExecute "wscript.exe", Chr (34) & _ WScript.ScriptFullName & Chr (34) & "uac", "", "runas", 1 Else Dim WshShell, objFSO, strNow, intServiceType, intStartupType, strDisplayName, iSvcCnt Dim sREGFile, sBATFile, r, b, strComputer, objWMIService, colListOfServices, objService Set WshShell = CreateObject ("Wscript." FilesystemObject ") strNow = År (dato) & højre (" 0 "& måned (dato), 2) & højre (" 0 "& dag (dato), 2) Dim objFile: Angiv objFile = objFSO.GetFile (WScript.ScriptFullName ) sREGFile = objFSO.GetParentFolderName (objFile) & "\ svc_curr_state_" & strNow & ".reg" sBATFile = objFSO.GetParentFolderName (objFile) & "\ svc_curr_state_" & strNow & rTxt = "objFile GFile, True) r.WriteLine "Windows Registry Editor Version 5.00" r.WriteBlankLines 1 r.WriteLine "; Services Startup Configuration Backup" & Nu r.WriteBlankLines 1 Sæt b = objFSO.CreateTextFile (sBATFile, True) b.WriteLine " echo Restore Service Startup State gemt ved "& Nu b.WriteBlankLines 1 strComputer =". " iSvcCnt = 0 Dim sStartState, sSvcName, sSkippedSvc Sæt objWMIService = GetObject ("winmgmts:" _ & "{impersonationLevel = imiterer}! \\" & strComputer & "\ root \ cimv2") Indstil colListOfServices = obxWIS Select * fra Win32_Service ") For hver objService i colListOfServices iSvcCnt = iSvcCnt + 1 r.WriteLine" [HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ "& trim (objService.Name) &"] "sStartState = lcasetName objService.Name Vælg sag sStartState sag "boot" r.WriteLine chr (34) & "Start" & Chr (34) & "= dword: 00000000" b.WriteLine "sc.exe config" & sSvcName & "start = boot" Sag "system" r.WriteLine chr (34) & "Start" & Chr (34) & "= dword: 00000001" b.WriteLine "sc.exe config" & sSvcName & "start = system" Sag "auto" 'Kontroller hvis det er automatisk (forsinket start) r.WriteLine chr (34) & "Start" & Chr (34) & "= dword: 00000002" Hvis objService.DelayedAutoStart = Sandt derefter r.WriteLine chr (34) & "DelayedAutostart" & Chr (34) & "= dword: 00000001" b.WriteLine "sc.exe config" & sSvcName & "start = forsinket-auto" Ellers r.WriteLine chr (34) & "DelayedAutostart" & Chr (34) & "= -" b.WriteLine "sc.exe config" & sSvcName & "start = auto" Slut hvis sag "manual" r.WriteLine chr (34) & "Start" & Chr (34) & "= dword: 00000003" b.WriteLine "sc.exe config" & sSvcName & "start = demand "Sag" deaktiveret "r.WriteLine chr (34) &" Start "& Chr (34) &" = dword: 00000004 "b.WriteLine" sc.exe config "& sSvcName &" start = deaktiveret "Sag" ukendt "sSkippedSvc = sSkippedSvc & ", " & sSvcName 'Sag Else End Vælg r.WriteBlankLines 1 Næste Hvis trim (sSkippedSvc) "" Så blev WScript.Echo iSvcCnt & "Services fundet. Tjenestene "& sSkippedSvc &" kunne ikke sikkerhedskopieres. "Else WScript.Echo iSvcCnt &" Services fundet og deres startkonfiguration sikkerhedskopieret. "Slut Hvis r.Close b.WriteLine" @pause "b.Close WshShell.Run" notepad.exe "& sREGFile WshShell.Run" notepad.exe "& sBATFile Set objFSO = Intet sæt WshShell = Intet slut Hvis 

Sådan bruges VBScript?

  1. Kopier ovenstående kodelinjer til Notepad
  2. Gem filen med .vbs udvidelse - f.eks services_startup_config_backup.vbs .
  3. Dobbeltklik for at køre scriptet.

Scriptet genstarter sig selv som administrator (forhøjet) og forespørger listen over Windows-tjenester og deres konfiguration af opstartstype. Resultaterne skrives til .reg og .bat filer til senere restaurering. De to filer oprettes i den samme mappe som scriptet.

Outputfilerne har præfikset svc_curr_state _ og derefter efterfulgt af den aktuelle dato i yyyymmdd-format - f.eks svc_curr_state_20190706.reg & svc_curr_state_20190706.bat

Bemærk: Scriptet tager også hensyn til, om en tjeneste er konfigureret til en forsinket start eller ej. For tjenester med automatisk opstartstype (forsinket start) bruges en ekstra registreringsdatabaseværdi med navnet DelayedAutoStart . Hvis DelayedAutoStart er indstillet til 1 og Start-værdien er indstillet til 2 (Automatisk), konfigureres tjenesten som Automatisk (forsinket start) . Og batch-filen har den delayed-auto som opstarttilstand for disse tjenester.

RETTET: Sådan sikkerhedskopieres registreringsdatabasen automatisk i Windows 10

Gendannelse af konfigurationen af ​​Services-opstarttype

Vælg en af ​​de to formater for at gendanne konfigurationen af ​​services opstarttype fra sikkerhedskopiering.

.reg fil

Hvis du bruger .reg-filen til at gendanne præferencerne for serviceopstart, skal du genstarte Windows efter at have anvendt .reg-filen til servicekonfigurationen til at opdatere. Dette er dog den foretrukne metode.

.bat-fil

Batch-filen indeholder SC-kommandoer, der vil ændre startkonfigurationen af ​​tjenesterne i realtid. Du kræver ikke en genstart, hvis du bruger metoden. Sørg for, at du kører batch-filen fra et admin-kommandopromptvindue.

RELATERET: Windows 10 Standard Services-konfiguration

Ekstra Noter

  1. For nogle tjenester kan du støde på fejl som [SC] ChangeServiceConfig FAILED 5: eller lignende. Dette skyldes servicetilladelser eller sikkerhedsbeskrivelser, der låser tjenester. I dette tilfælde kan du starte et kommandopromptvindue som under LOCALSYSTEM-kontoen og køre Batch-filen.
  2. I Windows 10 kan du se mange servicenavne, der har en understregning ( _ ) og efterfulgt af nogle numre. Disse numre (suffiks) stemmer muligvis ikke med det for andre Windows 10-computere. Her er nogle eksempler:
    • AarSvc_8561415
    • BcastDVRUserService_8561415
    • BluetoothUserService_8561415
    • CaptureService_8561415
    • cbdhsvc_8561415
    • CDPUserSvc_8561415
    • ConsentUxUserSvc_8561415
    • CredentialEnrollmentManagerUserSvc_8561415
    • DeviceAssociationBrokerSvc_8561415
    • DevicePickerUserSvc_8561415
    • DevicesFlowUserSvc_8561415
    • LxssManagerUser_8561415
    • MessagingService_8561415
    • OneSyncSvc_8561415
    • PimIndexMaintenanceSvc_8561415
    • PrintWorkflowUserSvc_8561415
    • UnistoreSvc_8561415
    • UserDataSvc_8561415
    • WpnUserService_8561415

    Tallene suffiks 8561415 i ovennævnte tjenester (korte) navne er muligvis ikke de samme på andre Windows 10-computere. Det er en ting, du skal passe på, når du gendanner indstillingerne til en anden Windows 10-computer. Gendannelse af disse tjenester ved hjælp af kommandoen SC.exe kan forårsage fejlen ChangeServiceConfig FAILED 87: Parameteren er forkert .

For ældre versioner af Windows

I Windows-versioner tidligere end Windows 10 (Windows Vista gennem Windows 8.1) skal du bruge script services_conf_backup.zip. Bemærk, at det ældre script ikke understøtter automatisk (forsinket start) starttype - på grund af en WMI-begrænsning. Det behandler Automatisk og Automatisk (forsinket start) som det samme.

Redaktørens Valg