![Benutzer brauchen über eine Minute, um sich bei einem 2008 Windows-Server anzumelden. LSM.exe läuft mit über 100 MB Speicher](https://rvso.com/image/515683/Benutzer%20brauchen%20%C3%BCber%20eine%20Minute%2C%20um%20sich%20bei%20einem%202008%20Windows-Server%20anzumelden.%20LSM.exe%20l%C3%A4uft%20mit%20%C3%BCber%20100%20MB%20Speicher.png)
Wir haben einen 64-Bit-Windows Server 2008, auf dem Remote Desktop ausgeführt wird.
Die Anwendung lsm.exe (der lokale Sitzungsmanager) scheint Speicher zu verlieren. Obwohl der Speicherverbrauch beim Neustart des Servers recht gering ist, steigt er weiter an, bis sich Benutzer nicht mehr anmelden können.
Der Server hat keine Audiokarte und keine AV-Software installiert. Der Server ist voll servicegepackt. (Service Pack 2)
Es verfügt über 8 GB Speicher. 60 Benutzer verwenden es regelmäßig. Es scheint keine relevanten Ereignisprotokollmeldungen zu geben. Beim Anmelden wird der Explorer nicht gestartet. Es wird ein „login.vbs“-Skript gestartet. Dieses Anmeldeskript erstellt mehrere wsShell- und wScript.Network-Objekte, aber selbst wenn ich diese auskommentiere, erhalte ich immer noch dasselbe Verhalten. (Hinweis: Ich habe das .vbs-Skript gegen eine ausführbare Datei ausgetauscht. Kein Unterschied)
Es sind mehrere Anwendungen installiert, aber die einzige erwähnenswerte ist: perfectbackup – eine Java-basierte Backup-Lösung.
Der Speicherverlust scheint aufzutreten, wenn sich Benutzer bei Remote Desktop anmelden/abmelden. Beispielsweise ändert sich durch Anmelden die LSM-Speichergröße von 21.180 KB auf 21.512 KB. Durch Abmelden ändert sich die Nutzung von 21.512 KB auf 12.668 KB. Dies kann später nachlassen, aber die allgemeine Tendenz ist nach oben gerichtet. Außerdem wird es schneller nach oben gehen und oben bleiben, wenn ich mich mehrmals an-/abmelde.
Was könnte die Ursache sein und wie kann ich das Problem beheben?
Antwort1
Wie viele Sitzungen sind auf Ihrem Computer im Allgemeinen aktiv? Wenn Benutzer ihre Sitzungen trennen, anstatt sich abzumelden, kann dies zu den von Ihnen angezeigten Problemen führen. Eine Lösung, die ich gesehen habe, besteht darin, getrennte Sitzungen nach einer kurzen Zeit der Inaktivität (1 bis 2 Stunden) zum Abmelden zu zwingen – das hat diese Art von Problem für mich in der Vergangenheit gelöst.
Antwort2
Vielleicht melden Sie sich nicht richtig vom Terminalserver ab, weil Sie eine andere Shell als Windows verwenden. Das Erzwingen von Verbindungsabbrüchen reicht möglicherweise nicht aus?
Versuchen Sie, am Ende des Skripts Folgendes hinzuzufügen:
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate,(Shutdown)}\\.\root\cimv2")
Set colOperatingSystems = objWMIService.ExecQuery ("SELECT * FROM Win32_OperatingSystem")
For Each objOperatingSystem in colOperatingSystems
ObjOperatingSystem.Win32Shutdown(4)
Next
Nur eine wilde Vermutung (und ja, 4 ist erzwungene Abmeldung (http://msdn.microsoft.com/en-us/library/aa394058%28VS.85%29.aspx)
Antwort3
Dies könnte möglicherweise mit dem bei Ihnen aufgetretenen Problem zusammenhängen:
Obwohl der Server keine Audiokarte hat,VielleichtDies könnte die Remote-Audiowiedergabefunktion von RDP betreffen.
Sie sollten versuchen, Remote-Audio beim Herstellen einer Verbindung mit dem Terminalserver zu deaktivieren und prüfen, ob der Speicherverlust verschwindet.
Sie sollten außerdem einen weiteren Schritt zur Fehlerbehebung durchführen: Passiert dies bei der lokalen Anmeldung an der Serverkonsole oder nur bei Verwendung des Terminalservers?
Antwort4
Folgendes habe ich in den Microsoft-Foren gefunden.
„Der Terminalsitzungsmanager von XP/2003 muss alle paar Stunden geschlossen werden. Dadurch wird der Speicherbedarf von lsm.exe zurückgesetzt. Wir überwachen die Speichernutzung von lsm.exe mit SCOM und sehen einen sofortigen Rückgang der Speichernutzung, wenn wir TS-Manager unter XP oder 2003 schließen. Der 2008 TS-Manager scheint dieses Problem nicht zu verursachen.“