Nützliche Befehle für die Verwaltung von Windows Server Core

    OCsetupDie schlanke Installationsvariante Core von Windows Server 2008 verzichtet auf den gewohnten Desktop und bietet die Kommandozeile als Benutzer-Interface. Daneben stellt Server 2008 R2 mit sconfig ein einfaches textorientiertes Admin-Tool zur Verfügung und zudem besteht die Möglichkeit der Remote-Verwaltung von Server Core. Trotzdem führt oft kein Weg an der Kommandozeile vorbei, entweder weil die Management-Tools auf dem Client nicht alle Funktionen beherrschen, oder weil man eine Aufgabe an der Konsole erledigen möchte.

    Während sich über MMC-Snap-Ins die installierten Rollen von Server Core gut verwalten lassen, gibt es vor allem Lücken bei der Basiskonfiguration, die sconfig und Server-Manager offen lassen. Microsoft bietet ein über die Jahre gewachsenes Sammelsurium an Dienstprogrammen mit teilweise überlappendem Funktionsumfang. Diese sehr unterschiedlich zu benutzenden Tools gibt es natürlich auch in der Vollinstallation von Windows, aber unter Server Core erlangen sie eine besondere Bedeutung.

    Server-Rollen und Features

    Um herauszufinden, welche Rollen auf dem Server installiert sind, gibt es den Befehl oclist. Er listet sämtliche verfügbare Rollen und Features in einer Baumstruktur gemäß ihrer Abhängigkeiten auf, sowohl installierte als auch nicht installierte. Er kennt nimmt keine Argumente und kennt auch keine seitenweise Ausgabe. Daher empfiehlt sich der Einsatz der Filter more und find. Wenn man wissen möchte, welche Rollen installiert sind, dann hilft

    oclist|find "Installiert:"|more

    Der Suchbegriff muss groß geschrieben werden, weil sonst auch die Zeilen mit der Zeichenkette "Nicht installiert:" gefunden werden.

    Rollen lassen sich bei Bedarf mit ocsetup.exe hinzufügen oder entfernen. Als Parameter benötigt das Tool den Namen der betreffenden Komponente. Diesen kann man unter anderem aus dem Output von oclist entnehmen. Wie gewohnt zeigt

    ocsetup /?

    die verfügbaren Optionen für das Programm an. ocsetup eignet sich nicht für die Installation von Active Directory, dafür gibt es dcpromo.

    Alternativ zu den beiden genannten Befehlen kann man DISM nutzen, um sich verfügbare bzw. installierte Rollen / Features anzeigen zu lassen und sie zu installieren. Das Tool gehört auch zum Lieferumfang des WAIK und wird vornehmlich verwendet, um Windows-Images zu mounten und zu aktualisieren. Es ist aber zusätzlich in der Lage, das aktive System zu verwalten.

    dism /online /get-features /format:table

    gibt die Liste der aktivierten und inaktiven Features und Rollen aus. Will man nur die einen oder die anderen sehen, muss man wieder find bemühen.

    Um ein Feature zu aktivieren, gibt man

    dism /online /enable-feature /featurename:Microsoft-Hyper-V

    ein, in diesem Beispiel installiert dism die Hyper-V-Rolle. Den Namen des Features / der Rolle entnimmt man dem Output von dism /online /get-features. Für die Installation eines Domain-Controllers sollte man wieder auf dcpromo zurückgreifen und nicht dism verwenden.

    Netzwerk und Firewall

    Um die Einstellungen für das Netzwerk und die Firewall anzuzeigen bzw. zu verändern gibt es den Befehl netsh. Dieses Dienstprogramm ist sehr mächtig, aber deswegen fällt es auch schwer, alle Optionen zu überblicken. Die Liste der Argumente mutet sich gelegentlich an wie ein Bandwurm, weshalb die meisten Admins grafische Tools vorziehen werden. Für überschaubare Aufgaben kann netsh jedoch hilfreich sein.

    Um Server Core nach der Installation von DHCP auf eine feste IP-Adresse umzustellen, eignet sich als Alternative zu sconfig der Befehl

    netsh interface ip set address name="LAN-Verbindung" source=static 192.168.12.20 255.255.255.0 192.168.12.1 1

    Er setzt die IP-Adresse auf 192.168.12.20, die Netzmaske auf 255.255.255.0 und das default Gateway auf 192.168.12.1. Den Namen Interfaces erfrägt man zuvor mittels

    netsh interface ip show config

    Für die Netzwerkkonfiguration und die Diagnose von Verbindungsproblemen stehen unter Server Core natürlich auch alle bekannten TCP/IP-Tools von Windows zu Verfügung.

    Mit netsh lässt sich auch die Windows-Firewall weitgehend konfigurieren, Regeln definiert man jedoch einfacher über die Remote-Verwaltung mittels Server-Manager. Um die aktuelle Konfiguration auszulesen, dient der Befehl netsh advfirewall firewall show rule plus zusätzlicher Angaben, nach denen die Regeln gefiltert werden sollen. Beispielsweise zeigt

    netsh advfirewall firewall show rule name=all dir=in

    alle Regeln für eingehende Verbindungen in allen Profilen und mit beliebigen Bezeichnungen.

    In manchen Fällen ist es zur Diagnose für Verbindungsproblemen, etwa bei der Remote-Verwaltung, notwendig, die Firewall zu deaktivieren, um festzustellen, ob sie den Zugriff blockiert. Der Befehl

    netsh advfirewall set allprofiles state off

    schaltet die Firewall für alle Profile (public, private, domain) aus. Eine fehlkonfigurierte Firewall schließlich lässt sich mit

    netsh advfirewall reset

    auf die Standardeinstellung zurücksetzen.

    Dienste starten und stoppen

    Windows-Services zu steuern ist eine weitere Aufgabe, die sich sehr gut remote erledigen lässt. Aber auch auf der Kommandozeile bietet hier einfach zu nutzende Möglichkeiten. Der altbekannte Befehl

    net start <service>

    startet einen Windows-Dienst,

    net stop <service>

    macht erwartungsgemäß das Gegenteil. Um den Namen eines bestimmten Service und dessen Status zu eruieren, gibt es sc.exe. Das Programm akzeptiert eine Vielzahl von Argumenten und Schaltern, für das Auflisten von Services ist query zuständig:

    sc query [service]

    listet ohne Angabe eines Dienstes alle aktiven auf, sonst nur Angaben zum spezifizierten Service. Zusätzlich bietet sc eine Reihe von Filtern für die Ausgabe an, die wie gewohnt mit

    sc /?

    erfragt werden können. Als Alternative zu zu net.exe kann sc auch Dienste starten und stoppen, dies geschieht über

    sc start <service>

    bzw.

    sc stop <service>

    Energieverwaltung

    Mangels eines grafischen Tools für das Power-Management bedient man sich unter Server Core des Dienstprogramms powercfg.exe. Wie viele andere dieser Tools ist es sehr mächtig und bietet eine Vielzahl von Optionen. Für die gängigsten Operationen ist es aber durchaus einfach zu verwenden.

    Um sich die vorhandenen Energieschemata anzeigen zu lassen (standardmäßig "ausbalanciert", "Höchstleistung" und "Energiesparmodus"), gibt man

    powercfg -l

    ein. Die Ausgabe zeigt für sämtliche Schemata eine GUID an, die man benötigt, um etwa von ausbalanciert auf Höchstleistung umzustellen:

    powercfg -setactive 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c

    Um einzelne Einstellungen zu ändern, verwendet man den Schalter -x. Beispielsweise versetzt

    powercfg -x -monitor-timeout-ac 10

    den Monitor nach 10 Minuten Inaktivität des Benutzers in den Ruhezustand (die Endung "ac" bezieht sich auf den Betrieb mit Wechselstrom, also am Stromnetz). Weitere Parameter betreffen die Festplatten (-disk-timeout-ac) oder den Hibernate-Modus (-hibernate-timeout-ac).

    Verwaltung von Benutzern und Passwörtern

    Um lokale Benutzer anzulegen, zu löschen oder einer Gruppe hinzuzufügen, kann man net.exe verwenden. Das Erstellen eines Benutzerkontos funktioniert mittels

    net user Benutzername Passwort /add

    Gibt man statt des Passworts einen '*' an, dann verlangt net.exe die anschließende Eingabe desselben, aber ohne es am Bildschirm anzuzeigen. Über eine Vielzahl von Schaltern lassen sich alle Eigenschaften des Kontos festlegen, darunter der volle Name des Benutzers oder den Pfad zum Home-Verzeichnis.

    Ein neuer Benutzer landet standardmäßig in der Gruppe "Benutzer". Will man ihn in eine andere Gruppe aufnehmen, dann kann man dies mit net localgroup machen. Dieser Befehl ohne zusätzliche Angaben listet alle auf der Maschine eingerichteten Benutzergruppen auf. Mit

    net localgroup Administratoren

    kann man dagegen herausfinden, wer Mitglied der Administratoren ist. Um einen Benutzer dieser Gruppe hinzuzufügen, gibt man zum Beispiel

    net localgroup Administratoren Mustermann /add

    ein. Um schließlich das Passwort eines Benutzers zu ändern, eignet sich der Befehl

    net user Benutzername *

    Rechner neu starten oder ausschalten

    Für diesen Zweck existiert der Befehl shutdown, den man über mehrere Schalter zu unterschiedlichem Verhalten bewegen kann. Die wichtigsten davon sind /r (restart), /s (shutdown) und /h (hibernate). Über den Schalter /t lässt sich die zeitliche Verzögerung festlegen, nach der ein Rechner heruntergefahren wird.

    2 Kommentare

    Bild von Giuseppe Perrucci
    Giuseppe Perrucci sagt:
    31. Oktober 2015 - 12:06

    Hallo,

    Hier ist meine Azubi auf ein Fehler gestoßen:

    Um schließlich das Passwort eines Benutzers zu ändern, eignet sich der Befehl

    Falsch:
    net Benutzername *

    Richtig:
    net user Benutzername *

    Viele Grüße
    Giuseppe

    Bild von Wolfgang Sommergut
    1. November 2015 - 10:58

    Danke!