Sysinternals auf Nano Server verwenden

    Sysinternals RamMapMicrosoft stellt eine eigene Ver­sion der popu­lären Sysin­ternals-Tools für Nano Server bereit. Nach­dem die schlank­ste Vari­ante von Server 2016 keine GUI bietet und keine 32-Bit-Programmen aus­führt, muss man sich auch bei der Nutzung der Sysin­ternals-Werk­zeuge umstellen.

    Nachdem Nano Server keine Shell auf der Konsole starten kann, erfolgt das Management remote. Die wenigen Funktionen, welche die Wieder­herstellungs­konsole bietet, dienen nur der anfänglichen Basis­konfiguration.

    Sysinternals für das Troubleshooting

    Das bevorzugte Werkzeug für die Verwaltung von Nano Server ist PowerShell, das in der Core Edition zum Liefer­umfang des super­schlanken Servers gehört. Standard­mäßig ist Remoting bereits aktiviert, so dass man von einer Workstation aus gleich eine Session aufbauen kann.

    Auch wenn zahlreiche Cmdlets das Storage, Netzwerk oder Clustering-Feature verwalten können, so haben die praktischen Sysinternals-Tools auch auf dem Nano Server ihre Berechtigung und erledigen manche Aufgaben schneller und einfacher als PowerShell. Beim Troubleshooting füllen sie zudem eine Lücke in den Bordmitteln.

    Eigene 64-Bit-Versionen für Nano Server

    Die herkömmliche Variante der Sysinternals eignet sich nicht für Nano Server, weil sie so genannte Fat Binaries verwendet, die das 32-Bit-Subsystem benötigen. Microsoft hat daher für den Einsatz auf dem Nano Server reine 64-Bit-Programme bereit­gestellt. Diese sind auch Bestandteil der "normalen" Sysinternals, die aber auch 64-Bit-GUI-Programme enthalten, die sich nicht für den Nano Server eignen.

    Neben PowerShell-Remoting und WinRS kann auch mit PsExec64 eine Sitzung auf einem Nano Server eröffnet werden.

    Die 64-Bit-Varianten braucht man nicht nur in einer Remote-Session auf dem Nano Server. Vielmehr muss man etwa auch das beliebte PsExec auf einer Workstation in der 64-Bit-Version starten, wenn man ein Kommando remote auf dem Nano Server ausführen möchte. Das Tool installiert nämlich auf dem Zielrechner einen Dienst, der ebenfalls als ein reines 64-Bit-Programm vorliegen muss.

    Tools auf Nano Server übertragen

    Der Download der Sysinternals Suite erfolgt wie üblich als ZIP-Archiv von der Microsoft-Website, eine Installation der Tools ist nicht erforderlich. Daher reicht es, wenn man die entpackten Dateien auf den Nano Server kopiert.

    Dazu kann man sich die administrativen Shares zunutze machen, indem man die Dateien etwa nach \\nano\c$\Program Files\Sysinternals kopiert. Alternativ bietet PowerShell die Möglichkeit, die Tools mit Copy-Item und dem Parameter ToSession auf den Nano Server zu übertragen.

    Dazu baut man erst eine Sitzung mit dem Befehl nach diesem Muster auf:

    $s = New-PSSession -ComputerName nano -Credential contoso\admin

    Anschließend kopiert man den Ordner, in den man die Tools entpackt hat:

    Copy-Item -r c:\users\me\Downloads\Sysinternals\ `
    -ToSession $s -Destination "c:\Program Files"

    Sysinternals Suite mit PowerShell auf den Nano Server übertragen.

    Nun kann man eine interaktive Session mit dem Nano Server eröffnen, um die Sysinternals-Programme dort auszuführen:

    Enter-PSSession $s

    Grundsätzlich wäre es auch möglich, statt PowerShell für die Remote-Sitzung PsExec oder winrs zu nutzen (siehe dazu meinen Tipp in diesem Beitrag). Allerdings bietet PowerShell einen höheren Benutzerkomfort und einen größeren Funktionsumfang.

    Dateien umbenennen

    Wie man nun gleich feststellen wird, unterscheiden sich die Namen der Dateien von der herkömmlichen Version dadurch, dass sie am Ende ein "64" enthalten. Nachdem auf dem Nano Server ohnehin nur diese Version der Sysinternals läuft, besteht keine Verwechslungsgefahr und man kann die Programme umbenennen, um sich unnötige Fehleingaben zu sparen.

    In einer PowerShell-Sitzung würde man das so machen:

    gci 'C:\Program Files\Sysinternals\*.exe' |
    ren -NewName {$_.Name -replace "64",""}

    Lizenzbedingungen akzeptieren

    Ein weiterer Unterschied zu den herkömmlichen Sysinternals besteht darin, dann man beim ersten Start des Programms die Lizenzbedingungen nicht über den gewohnten Dialog bestätigen kann, weil Nano Server ja keine GUI bietet. Daher muss man jedes Programm zumindest einmal mit dem Schalter -accepteula starten.

    Reduzierte Suite

    Wenn man sich nun alle Tools mit

    gci 'C:\Program Files\Sysinternals\' | fw -Property Name

    anzeigen lässt, dann stellt man fest, dass viele der gewohnten Werkzeuge fehlen. Während der Befehl

    gci 'C:\Program Files\Sysinternals\*.exe' -Exclude *64.exe |
    measure -l

    bei der herkömmlichen Suite 77 Mitglieder ausweist, sind es auf dem Nano Server nur 40.

    Übersicht über die Tools der Sysinternals Suite für Nano Server

    Auf der Strecke geblieben sind natürlich alle grafischen Tools, darunter Disk Monitor und Process Monitor. Letzteren kann man durch eine Kombination von Listdlls und Handle ersetzen. Beide sollen laut Mark Russinovich voraussichtlich zu einem Konsolen­programm verschmolzen werden, das sich für Nano Server eignet.

    Keine Kommentare