Neustart eines Remotedesktop-Sitzungshostservers in einer RDS-Farm

Windows Server 2012 R2Windows Server 2016Windows Server 2019

Mit dem auf dieser Seite verfügbaren PowerShell-Skript lässt sich ein Remote Desktop-Hostserver einer RDS-Farm (2012R2/2016/2019) neu starten.

Verwendung:

  • Ändern Sie die beiden Variablen$ServerBroker und $ServerHost
  • Erstellen Sie eine geplante Aufgabe, indem Sie das Skript auf dem Remote-Desktop-Sitzungshost-Server ausführen, der neu gestartet werden soll.

Durch die Verwendung des Skripts wird vermieden, dass sich Ordner mit dem Namen xxxxx.BACKUP-Y im Ordner C:\Users des Servers befinden.

Wenn bei einem Neustart noch Netzlaufwerke eingebunden sind, wird für jede noch geöffnete Sitzung ein temporärer Ordner erstellt.

#
# RDR-IT
# Get close and active sessions of a desktop session host server remotely and reboot the server
# Compatible with RDS farms 2012R2 / 2016/2019
#

$ServerBroker = "Broker.dom.local"
$ServerHost = "RDH-01.dom.local"

# Get sessions from broker
$Sessions = Get-RDUserSession -ConnectionBroker $ServerBroker

# Browse all open sessions and close sessions on the session host server configured in parameter
foreach($Session in $Sessions){

    #Write Event
    Write-EventLog -LogName "System" -Source "EventLog" -EventId 6013 -EntryType Information -Message "$Session.UserName close session"

    # Write-Host $Session.UnifiedSessionID -ForegroundColor Red
    Invoke-RDUserLogoff -HostServer $ServerHost -UnifiedSessionID $Session.UnifiedSessionID -Force
}

Restart-Computer

Romain Drouche
Romain Drouche
Systemarchitekt | MCSE: Kerninfrastruktur
IT-Infrastrukturexperte mit über 15 Jahren Berufserfahrung. Aktuell tätig als Projektmanager für Systeme und Netzwerke sowie als Experte für Informationssystemsicherheit (ISS), nutze ich mein Fachwissen, um die Zuverlässigkeit und Sicherheit technologischer Umgebungen zu gewährleisten.

Schreibe einen Kommentar