Windows-Dienst - Windows service
In Windows NT- Betriebssystemen ist ein Windows-Dienst ein Computerprogramm, das im Hintergrund ausgeführt wird . Es ähnelt im Konzept einem Unix- Daemon . Ein Windows-Dienst muss den Schnittstellenregeln und -protokollen des Service Control Managers entsprechen , der Komponente, die für die Verwaltung von Windows-Diensten verantwortlich ist. Es ist die Dienste- und Controller-App services.exe, die alle Dienste startet und ihre Aktionen wie Start, Ende usw. verwaltet.
Windows-Dienste können so konfiguriert werden, dass sie beim Starten des Betriebssystems gestartet und im Hintergrund ausgeführt werden, solange Windows ausgeführt wird. Alternativ können sie manuell oder durch ein Ereignis gestartet werden. Windows NT-Betriebssysteme umfassen zahlreiche Dienste, die im Kontext von drei Benutzerkonten ausgeführt werden : System, Netzwerkdienst und Lokaler Dienst. Diese Windows-Komponenten werden häufig mit Host Process for Windows Services in Verbindung gebracht . Da Windows-Dienste im Kontext ihrer eigenen dedizierten Benutzerkonten ausgeführt werden, können sie ausgeführt werden, wenn ein Benutzer nicht angemeldet ist.
Vor Windows Vista konnten Dienste, die als "interaktiver Dienst" installiert wurden, mit dem Windows- Desktop interagieren und eine grafische Benutzeroberfläche anzeigen . In Windows Vista sind interaktive Dienste jedoch veraltet und können aufgrund der Absicherung von Windows-Diensten möglicherweise nicht ordnungsgemäß ausgeführt werden .
Verwaltung
Windows-Administratoren können Dienste verwalten über:
- Das Dienste- Snap-In (zu finden unter Verwaltung in der Windows- Systemsteuerung )
- Sc.exe
- Windows PowerShell
Service-Snap-In
Das auf der Microsoft Management Console basierende Dienste-Snap-In kann eine Verbindung mit dem lokalen Computer oder einem Remote-Computer im Netzwerk herstellen und Benutzern Folgendes ermöglichen:
- eine Liste der installierten Dienste zusammen mit Dienstnamen, Beschreibungen und Konfiguration anzeigen
- Dienste starten, stoppen, pausieren oder neu starten
- spezifizieren Sie ggf. Serviceparameter
- den Starttyp ändern. Akzeptable Starttypen sind:
- Automatisch : Der Dienst startet bei der Systemanmeldung.
- Automatisch (Verzögert) : Der Dienst startet kurz nach dem Hochfahren des Systems. Diese Option wurde in Windows Vista eingeführt , um die Boot-to-Desktop-Zeit zu verkürzen. Allerdings unterstützen nicht alle Dienste einen verzögerten Start.
- Manuell : Der Dienst startet nur, wenn er explizit aufgerufen wird.
- Deaktiviert : Der Dienst ist deaktiviert. Es wird nicht ausgeführt.
- den Kontext des Benutzerkontos ändern, in dem der Dienst betrieben wird
- Wiederherstellungsaktionen konfigurieren, die ausgeführt werden sollen, wenn ein Dienst fehlschlägt
- Service-Abhängigkeiten untersuchen und feststellen, welche Dienste oder Gerätetreiber von einem bestimmten Dienst abhängen oder von welchen Diensten oder Gerätetreibern ein bestimmter Dienst abhängt
- die Leistungsliste als Textdatei oder als CSV- Datei exportieren
Befehlszeile
Entwickler | Microsoft , ReactOS-Mitwirkende |
---|---|
Betriebssystem | Windows , ReactOS |
Typ | Befehl |
Lizenz | Windows: Proprietäre kommerzielle Software ReactOS: GNU General Public License |
Webseite | docs |
Das Befehlszeilentool zum Verwalten von Windows-Diensten ist sc.exe. Es ist für alle Versionen von Windows NT verfügbar . Dieses Dienstprogramm ist in Windows XP und höher sowie in ReactOS enthalten .
Der sc
Verwaltungsbereich des Befehls ist auf den lokalen Computer beschränkt. Ab Windows Server 2003 kann es jedoch nicht nur sc
alles tun, was das Dienste-Snap-In tut, sondern auch Dienste installieren und deinstallieren.
Der sc
Befehl dupliziert einige Funktionen des net
Befehls.
Die ReactOS-Version wurde von Ged Murphy entwickelt und steht unter der GPL .
Name | Beschreibung | Windows-Unterstützung | ReactOS-Unterstützung |
---|---|---|---|
Anfrage | Servicestatus anzeigen | Jawohl | Jawohl |
Abfrageex | Erweiterte Serviceinfos anzeigen (z. B. PID, Flags) | Jawohl | Jawohl |
Anfang | Starten Sie einen Dienst | Jawohl | Jawohl |
Pause | Einen Dienst pausieren | Jawohl | Jawohl |
abfragen | Jawohl | Jawohl | |
fortsetzen | Einen Dienst fortsetzen | Jawohl | Jawohl |
halt | Stoppen Sie einen Dienst | Jawohl | Jawohl |
Konfiguration | Jawohl | Jawohl | |
Bezeichnung | Servicebeschreibung ändern | Jawohl | Jawohl |
Versagen | Jawohl | Jawohl | |
Fehlerflagge | Jawohl | Nein | |
Seitentyp | Jawohl | Nein | |
privat | Jawohl | Nein | |
verwaltetes Konto | Jawohl | Nein | |
qc | Zeigen Sie die Dienstkonfiguration an (z. B. Abhängigkeiten, vollständiger Pfad usw.) | Jawohl | Jawohl |
qBeschreibung | Abfrage einer Servicebeschreibung | Jawohl | Jawohl |
qFehler | Jawohl | Nein | |
qFailureflag | Jawohl | Nein | |
qsidtype | Jawohl | Nein | |
qprivs | Jawohl | Nein | |
qtriggerinfo | Jawohl | Nein | |
qbevorzugter Knoten | Jawohl | Nein | |
qverwaltetes Konto | Jawohl | Nein | |
qSchutz | Jawohl | Nein | |
quserservice | Jawohl | Nein | |
löschen | Einen Dienst löschen | Jawohl | Jawohl |
schaffen | Erstellen Sie einen Dienst | Jawohl | Jawohl |
Steuerung | Jawohl | Jawohl | |
sdshow | Jawohl | Jawohl | |
sdset | Jawohl | Jawohl | |
zeigt | Jawohl | Nein | |
Triggerinfo | Jawohl | Nein | |
bevorzugter Knoten | Jawohl | Nein | |
GetDisplayName | Den Dienst DisplayName anzeigen | Jawohl | Jawohl |
GetKeyName | Zeigen Sie den Dienst ServiceKeyName an | Jawohl | Jawohl |
EnumAbhängig | Zeigen Sie die Service-Abhängigkeiten an | Jawohl | Jawohl |
Stiefel | Jawohl | Nein | |
Sperren | Jawohl | Nein | |
AbfrageSperre | Jawohl | Nein |
Beispiele
Das folgende Beispiel zählt den Status für aktive Dienste und Treiber auf.
C:\>sc query
Das folgende Beispiel zeigt den Status für den Windows-Ereignisprotokolldienst an.
C:\>sc query eventlog
Power Shell
Das Microsoft.PowerShell.Management PowerShell-Modul (im Lieferumfang von Windows enthalten) verfügt über mehrere Cmdlets, die zum Verwalten von Windows-Diensten verwendet werden können:
- Get-Service
- Neu-Service
- Neustart-Service
- Lebenslauf-Service
- Set-Service
- Dienst starten
- Dienst anhalten
- Suspend-Service
Andere Verwaltungstools
Windows enthält auch Komponenten, die eine Teilmenge dessen ausführen können, was das Snap-In, Sc.exe und PowerShell tun. Der net
Befehl kann einen Windows-Dienst starten, stoppen, anhalten oder fortsetzen. In Windows Vista und höher kann der Windows Task-Manager eine Liste der installierten Dienste anzeigen und diese starten oder stoppen. MSConfig kann Windows-Dienste aktivieren oder deaktivieren (siehe Beschreibung des Starttyps oben).
Installation
Windows-Dienste werden über *.INF-Setup-Skripte von SetupAPI installiert und entfernt ; ein installierter Dienst kann unmittelbar nach seiner Installation gestartet werden und ein laufender Dienst kann vor seiner Deinstallation gestoppt werden.
Entwicklung
Schreiben von nativen Diensten
Damit ein Programm als Windows-Dienst ausgeführt werden kann, muss das Programm so geschrieben sein, dass es Start-, Stopp- und Pausierungsnachrichten des Dienststeuerungs-Managers (SCM) über die Systemdienste-API verarbeitet . SCM ist die Windows-Komponente, die für die Verwaltung von Dienstprozessen verantwortlich ist.
Anwendungen als Service verpacken
Das Windows Resource Kit für Windows NT 3.51 , Windows NT 4.0 und Windows 2000 bietet Tools zur Steuerung der Nutzung und Registrierung von Diensten: SrvAny.exe
fungiert als Service-Wrapper , um die von einem Dienst erwartete Schnittstelle zu handhaben (z. B. service_start handhaben und später mit service_started antworten oder service_failed) und lassen Sie jede ausführbare Datei oder jedes Skript als Dienst konfigurieren. Sc.exe
ermöglicht das Installieren, Starten, Stoppen und Deinstallieren neuer Dienste.
Siehe auch
- Windows-Dienste
- Konzept
Verweise
Weiterlesen
- Savill, John (5. März 1999). "Wie lauten die ErrorControl-, Start- und Type-Werte unter den Dienstunterschlüsseln?" . Windows-IT-Pro . Penton-Medien . Abgerufen am 29. März 2013 .
- David B. Probet, Windows-Dienstprozesse
Externe Links
- Windows Sysinternals: Autoruns für Windows v13.4 – Eine extrem detaillierte Abfrage von Diensten
- Dienstverwaltung mit Windows Sc über die Befehlszeile – Tutorial zur Windows-Dienstverwaltung
- Windows Service Manager Tray