Služba Windows - Windows service
![]() | Tento článek má několik problémů. Prosím pomozte vylepši to nebo diskutovat o těchto problémech na internetu diskusní stránka. (Zjistěte, jak a kdy tyto zprávy ze šablony odebrat) (Zjistěte, jak a kdy odstranit tuto zprávu šablony)
|
v Windows NT operační systémy, a Služba Windows je počítačový program že pracuje na pozadí.[1] Koncept je podobný konceptu a Unix démon.[1] Služba Windows musí odpovídat pravidlům rozhraní a protokolům Správce řízení služeb, komponenta odpovědná za správu služeb Windows. Je to aplikace Services and Controller, services.exe, která spouští všechny služby a spravuje jejich akce, jako je začátek, konec atd.[2]
Služby systému Windows lze nakonfigurovat tak, aby se spouštěly při spuštění operačního systému a běžely na pozadí, pokud běží systém Windows. Alternativně je lze spustit ručně nebo pomocí události. Operační systémy Windows NT zahrnují řadu služeb které běží v kontextu tří uživatelské účty: Systém, síťová služba a místní služba. Tyto součásti systému Windows jsou často spojeny s Hostitelský proces pro služby Windows. Protože služby Windows fungují v kontextu jejich vlastních vyhrazených uživatelských účtů, mohou fungovat, když uživatel není přihlášen.
Před Windows Vista „služby nainstalované jako„ interaktivní služba “mohou interagovat s Windows plocha počítače a ukázat a grafické uživatelské prostředí. V systému Windows Vista jsou však interaktivní služby zastaralé a v důsledku toho nemusí fungovat správně Zpevnění služby Windows.[3][4]
Správa
Správci systému Windows mohou spravovat služby prostřednictvím:
- Služby modul snap-in (nalezeno pod Administrativní nástroje ve Windows Kontrolní panel )
- Sc.exe
- Windows PowerShell
Modul snap-in služby
Modul snap-in Služby, založený na Konzola pro správu Microsoft, se mohou připojit k místnímu počítači nebo ke vzdálenému počítači v síti, což uživatelům umožňuje:[1]
- zobrazit seznam nainstalovaných služeb spolu s názvem služby, popisem a konfigurací
- spustit, zastavit, pozastavit nebo restartovat služby[5]
- případně uveďte parametry služby
- změnit typ spouštění. Přijatelné typy spouštění zahrnují:
- Automatický: Služba začíná při přihlášení do systému.
- Automaticky (zpožděno): Služba se spustí krátce po spuštění systému. Tato možnost byla zavedena v Windows Vista ve snaze zkrátit dobu spouštění počítače. Ne všechny služby však podporují zpožděný start.[6]
- Manuál: Služba se spustí, pouze když je výslovně vyvolána.
- Zakázáno: Služba je zakázána. Nebude to fungovat.
- Změň Uživatelský účet kontext, ve kterém služba funguje
- konfigurovat akce obnovy, které by se měly provést, pokud služba selže
- zkontrolovat závislosti na službě, zjistit, které služby nebo ovladače zařízení závisí na dané službě nebo na kterých službách nebo ovladačích zařízení je daná služba závislá
- exportovat seznam služeb jako textový soubor nebo jako CSV soubor
Příkazový řádek
The příkazový řádek nástroj pro správu služeb Windows je sc.exe. Je k dispozici pro všechny verze Windows NT.[7] Tento nástroj je součástí Windows XP[8] a později[9] a také v ReactOS.
The sc
rozsah správy příkazu je omezen na místní počítač. Počínaje však Windows Server 2003, nejen že může sc
dělat vše, co modul snap-in služby dělá, ale může také instalovat a odinstalovat služby.[9]
The sc
příkaz duplikuje některé funkce síť
příkaz.[10]
Verze ReactOS byla vyvinuta Gedem Murphym a je licencována pod GPL.[11]
název | Popis | Podpora Windows | Podpora systému ReactOS | Poznámky |
---|---|---|---|---|
dotaz | Zobrazit stav služby | Ano | Ano | |
queryex | Zobrazit rozšířené servisní informace (např. Pid, vlajky) | Ano | Ano | |
Start | Spusťte službu | Ano | Ano | |
pauza | Pozastavit službu | Ano | Ano | |
vyslýchat | Ano | Ano | ||
pokračovat | Pokračujte ve službě | Ano | Ano | |
stop | Zastavte službu | Ano | Ano | |
konfigurace | Ano | Ano | ||
popis | Změňte popis služby | Ano | Ano | |
selhání | Ano | Ano | ||
selhání | Ano | Ne | ||
vedlejší typ | Ano | Ne | ||
privs | Ano | Ne | ||
spravovaný účet | Ano | Ne | ||
qc | Zobrazit konfiguraci služby (např. Závislosti, úplná cesta atd.) | Ano | Ano | |
qpopis | Dotaz na popis služby | Ano | Ano | |
qfailure | Ano | Ne | ||
qfailureflag | Ano | Ne | ||
qsidtype | Ano | Ne | ||
qprivs | Ano | Ne | ||
qtriggerinfo | Ano | Ne | ||
qpreferrednode | Ano | Ne | ||
qmanagedaccount | Ano | Ne | ||
qochrana | Ano | Ne | ||
quserservice | Ano | Ne | ||
vymazat | Odstranit službu | Ano | Ano | |
vytvořit | Vytvořte službu | Ano | Ano | |
řízení | Ano | Ano | ||
sdshow | Ano | Ano | ||
sdset | Ano | Ano | ||
showid | Ano | Ne | ||
triggerinfo | Ano | Ne | ||
preferovaný uzel | Ano | Ne | ||
GetDisplayName | Zobrazit službu DisplayName | Ano | Ano | |
GetKeyName | Zobrazit službu ServiceKeyName | Ano | Ano | |
EnumDepend | Zobrazit závislosti služby | Ano | Ano | |
boot | Ano | Ne | ||
Zámek | Ano | Ne | ||
QueryLock | Ano | Ne |
Příklady
V následujícím příkladu je uveden výčet stavu aktivních služeb a ovladačů.[12]
C:>sc dotaz
Následující příklad zobrazuje stav pro Protokol událostí systému Windows servis.[12]
C:>sc dotaz eventlog
PowerShell
Modul Microsoft.PowerShell.Management PowerShell (součástí Windows) má několik rutin, které lze použít ke správě služeb Windows:
- Získejte službu[13]
- Nová služba[14]
- Restartujte službu[15]
- Obnovit službu[16]
- Set-Service[17]
- Start-Service[18]
- Stop-Service[19]
- Pozastavení služby[20]
Další nástroje pro správu
Windows také obsahuje komponenty, které mohou provádět podmnožinu toho, co modul snap-in, Sc.exe a PowerShell. The síť
příkaz může spustit, zastavit, pozastavit nebo obnovit službu Windows.[21] V systému Windows Vista a novějším Správce úloh systému Windows může zobrazit seznam nainstalovaných služeb a spustit nebo zastavit je. MSConfig může povolit nebo zakázat (viz popis typu spouštění výše) služby Windows.
Instalace
Služby Windows se instalují a odebírají pomocí instalačních skriptů * .INF od Nastavení API; nainstalovanou službu lze spustit ihned po její instalaci a spuštěnou službu lze zastavit před její odinstalací.[22][23][24]
Rozvoj
Psaní nativních služeb
Služba Windows se vytváří pomocí vývojových nástrojů, jako je Microsoft Visual Studio nebo Embarcadero Delphi. Aby mohla být službou Windows, musí být program napsán takovým způsobem, aby mohl zpracovávat spouštění, zastavování a pozastavování zpráv od správce řízení služeb. Správce řízení služeb je součást systému Windows, která je zodpovědná za spouštění a zastavování služeb.
Zabalení aplikací jako služby
The Windows Resource Kit pro Windows NT 3.51, Windows NT 4.0 a Windows 2000 poskytuje nástroje pro řízení používání a registrace služeb: SrvAny.exe
působí jako obálka služby zpracovat rozhraní očekávané od služby (např. zpracovat service_start a reagovat někdy později pomocí service_started nebo service_failed) a umožnit, aby byl jakýkoli spustitelný soubor nebo skript nakonfigurován jako služba. Sc.exe
umožňuje instalaci, spuštění, zastavení a odinstalaci nových služeb.[25]
Viz také
- Služby Windows
- Pojem
Reference
- ^ A b C "Přehled služeb". TechNet. Microsoft. Citováno 29. března 2013.
- ^ „Služby“. Microsoft Developer Network. Microsoft. Citováno 29. března 2013.
- ^ „Nové elevační PowerToys pro Windows Vista“. Časopis TechNet. Microsoft. Červen 2008. Citováno 21. června 2013.
Služba CmdAsSystem je nakonfigurována jako interaktivní, jejíž podpora je zastaralá. Služba nemusí fungovat správně. Problém je v tom, že tento skript se pokouší vytvořit a spustit interaktivní službu. Interaktivní služby nebudou fungovat správně kvůli izolaci relace 0 v systému Windows Vista.
- ^ „Služby ve Windows“. MSDN. Microsoft. 18. října 2010. Citováno 21. června 2013.
- ^ „Start, stop, pause, resume, or restart a service“. TechNet. Microsoft. Citováno 29. března 2013.
- ^ "ServiceInstaller.DelayedAutoStart vlastnost (System.ServiceProcess)". Microsoft. Citováno 28. listopadu 2017Viz část Poznámky
- ^ "Jak vytvořit službu Windows pomocí Sc.exe". Podpěra, podpora. Microsoft. 11. září 2011. Citováno 29. března 2013.
- ^ "Odkaz na příkazový řádek A-Z: SC". TechNet. Microsoft. Citováno 8. ledna 2014.
- ^ A b "Odkaz na příkazový řádek: Sc". TechNet. Microsoft. Citováno 8. ledna 2014.
Windows 7, Windows 8, Windows Server 2003, Windows Server 2003 R2, Windows Server 2003 s aktualizací SP1, Windows Server 2003 s aktualizací SP2, Windows Server 2008, Windows Server 2008 R2, Windows Server 2012, Windows Vista
- ^ SC - Service Control - Windows CMD - SS64.com
- ^ reagos / sc.c ve společnosti master · Reactos / Reactos · GitHub
- ^ A b Příkaz sc příkazového řádku MS-DOS a Windows
- ^ „Get-Service“. TechNet. Microsoft. Citováno 29. března 2013.
- ^ „Nová služba“. TechNet. Microsoft. Citováno 29. března 2013.
- ^ „Restart-Service“. TechNet. Microsoft. Citováno 29. března 2013.
- ^ „Obnovit službu“. TechNet. Microsoft. Citováno 29. března 2013.
- ^ "Set-Service". TechNet. Microsoft. Citováno 29. března 2013.
- ^ "Start-Service". TechNet. Microsoft. Citováno 29. března 2013.
- ^ „Stop-Service“. TechNet. Microsoft. Citováno 29. března 2013.
- ^ „Pozastavit službu“. TechNet. Microsoft. Citováno 29. března 2013.
- ^ „Start, stop, pause, resume, or restart a service“. TechNet. Microsoft. Citováno 8. ledna 2014.
- ^ „Směrnice INF AddService“. Microsoft. Citováno 10. července 2017.
- ^ "Funkce SetupInstallServicesFromInfSection". MSDN. Microsoft. Citováno 10. července 2017.
- ^ "Funkce SetupInstallServicesFromInfSectionEx". MSDN. Microsoft. Citováno 10. července 2017.
- ^ „Jak vytvořit službu definovanou uživatelem“. Podpěra, podpora. Microsoft. Citováno 29. března 2013.
Další čtení
- Savill, John (5. března 1999). „Jaké jsou hodnoty ErrorControl, Start a Type v podklíčích služeb?“. Windows IT Pro. Penton Media. Citováno 29. března 2013.
- David B. Probert, Procesy služby Windows
externí odkazy
- Windows Sysinternals: Autoruns pro Windows v13.4 - Mimořádně podrobný dotaz na služby
- Správa služeb s Windows Sc z příkazového řádku - Výukový program pro správu služeb Windows
- Zásobník Windows Service Manager