Je cherche des idées sur la façon de déconnecter, fermer une session ou réinitialiser la session d'un utilisateur dans un serveur Terminal Server 2008 (impossible de se connecter en tant qu'utilisateur car il est complètement verrouillé). Il s'agit d'un environnement de production, il n'est donc pas question pour l'instant de redémarrer le serveur ou de faire quelque chose à l'échelle du système. Des astuces Powershell pour nous aider?
Nous avons essayé de déconnecter, de déconnecter l'utilisateur et de réinitialiser la session, ainsi que de tuer également les processus de la session, directement depuis le même serveur de terminaux (depuis le gestionnaire de tâches, le gestionnaire de services Terminal Server et le moniteur de ressources) sans résultat.
Aidez-moi!
MISE À JOUR: Nous avons fini par redémarrer le serveur car aucune autre tentative à laquelle nous pouvions penser n'a fonctionné. Je laisse cette question ouverte en espérant que quelqu'un puisse avoir plus d'informations sur ce problème, et ses correctifs potentiels
Réponses:
Ce qui a fonctionné pour moi pour résoudre ce même problème a été de tuer tous les processus en cours d'exécution sous le compte verrouillé sous le Gestionnaire des tâches, puis j'ai pu simplement me déconnecter de ce compte (à partir d'un compte administrateur).
L'utilisateur a ensuite pu se reconnecter sous le compte.
Aucun redémarrage n'a été nécessaire et aucun logiciel tiers n'a dû être téléchargé.
la source
csrss.exe
,dwm.exe
,LoginUI.exe
etwinlogon.exe
. Je pensais que tuerwinlogon.exe
déclencherait un BSOD…Je veux partager comment je réinitialise le compte sans avoir besoin de redémarrer le serveur. Tout d'abord, vous devez avoir un accès administrateur au serveur. J'utilise l'option d'ouverture de session suivante: mstsc / v: nom_serveur / console / admin pour accéder au serveur. Ensuite, dans "Windows Taks Manager", allez dans l' onglet Utilisateurs et faites un clic droit sur le compte que vous souhaitez "Fermer la session", sélectionnez Fermer la session. Cela devrait libérer la session verrouillée utilisée par ce compte.
la source
La réponse simple consiste à exécuter une invite de commande élevée et à taper «Taskmgr», puis cela vous permettra de fermer la session sous l'onglet UTILISATEURS. Cela ne fonctionnera pas sans être dans la session élevée.
la source
Vous pouvez démarrer une cmd, effectuer une session de requête , vérifier l'ID de la session à tuer, puis effectuer une session de réinitialisation . Par exemple, si avec la session de requête vous obtenez que le nom de session rdp-tcp # 1 est celui que vous voulez tuer, alors vous pouvez exécuter réinitialiser la session rdp-tcp # 1 et le faire tuer.
la source
reset session 9
cette commande se bloque simplement. Ma session continue d'avoir les quatre processus en cours d' exécution sans avoir l' air d'être actif:crss.exe
,dwm.exe
,LogonUI.exe
etwinlogon.exe
. i.imgur.com/cFM62RA.png etquery session 9
sortiesNo User exists for 9
.Je suppose que la même chose s'est produite aujourd'hui sur mon serveur Terminal Server Win2008R2. Les sympthoms étaient: 1. Il m'a téléphoné avec "le message" se reliant "se bloque pour toujours". C'est juste un simple utilisateur, donc je ne peux pas m'attendre à une description détaillée du problème. 2. Session de déconnexion / réinitialisation essayée (ce qui aide généralement dans ces cas) - n'a pas fonctionné. La session se bloque toujours dans la liste avec le statut «déconnecté». 3. J'ai essayé de tuer tous les processus pour cet utilisateur - n'a pas aidé. La session persiste et refuse de se faire tuer.
La solution était - connectez-vous en tant qu'utilisateur (connectez-vous avec ses informations d'identification si vous pouvez réinitialiser son mot de passe ou utilisez une sorte d'assistance à distance pour voir ce qui se passe sur son ordinateur) et voir ce qui se passe dans la fenêtre de connexion. Lors de la connexion, j'ai cliqué sur le bouton `` Détails '' du client RDP - et le voici, un message d'erreur indiquant que winlogon a fait quelque chose de mal, il attendait que l'utilisateur clique sur les boutons `` réessayer / ignorer / etc '' et puisque c'est le winlogon omnipotent qu'il a provoqué tout ce comportement bizarre.
ps je ne pouvais pas trouver de moyen de forcer vraiment tuer une session :(
la source
Nous venons d'avoir un problème similaire avec notre serveur Bureau à distance Windows Server 2008 R2. La session utilisateur a montré "Actif" lors de la consultation de RDS Manager, mais n'a pas affiché l'ID de session associé ou le périphérique connecté (les deux étaient vides).
Toutes les astuces ci-dessus n'ont pas résolu le problème. Lors de la connexion en tant qu'utilisateur en question, un message d'erreur est revenu indiquant que le serveur Terminal Server était occupé et pour réessayer plus tard ou contacter l'administrateur.
Nous avons également redémarré le serveur.
la source
J'ai eu le même problème dans Windows Server 2016. L'utilisateur n'a pas pu se connecter.
J'ai donc essayé les étapes suivantes pour déconnecter la session orpheline:
montrer des sessions actives et les tuer
avec l'id de session (7) de 1. J'ai essayé de tuer cette session avec la session de réinitialisation 7 (fyi: rwinsta est un alias pour la session de réinitialisation)
cela a fonctionné pendant une session, mais la prochaine fois, cela n'a eu aucun effet, j'ai donc ouvert le gestionnaire de tâches et l'onglet utilisateur. Vous y trouverez une liste extensible attribuée à chaque utilisateur de bureau à distance - une liste n'avait pas de nom d'utilisateur et n'affichait que 4 tâches en cours d'exécution.
J'ai essayé la plus évidente: déconnecter l'utilisateur. Sans aucun effet.
essayer de déconnecter l'utilisateur
Après l'étape / essai 4, même la dernière session bloquée a été tuée et l'utilisateur a pu se reconnecter
la source
winlogon.exe
mais je ne suis pas sûr d' autres commeLoginUI.exe
,csrss.exe
etdwm.exe
.Il peut être utile de vérifier que l'utilisateur n'a pas de boîte de dialogue d'informations d'identification cachée derrière la fenêtre du bureau distant avec alt + tab.
Un collègue avait le même problème; n'a pas pu se déconnecter ou se réinitialiser, et tous ses processus ont été arrêtés manuellement. Lorsque j'ai essayé d'accéder à l'interface graphique du système à partir duquel il se connectait, j'ai trouvé une boîte d'informations d'identification se cachant derrière la session distante.
la source
J'aurais la même situation: un Windows Server 2008 R2 avec les services Bureau à distance, une connexion RDP configurée pour déconnecter les utilisateurs après que la session est inactive ou déconnectée 3 heures, et certaines sessions restent verrouillées. J'ai essayé de les déconnecter avec Remote Desktop Manager et qwinsta / quser, sans succès.
Voici comment je l'ai résolu:
qwinsta
.winlogon.exe
la session bloquée avecquery process /ID:yourid
.taskkill /f /PID yourPID
.Marche à suivre. J'aimerais autrement trouver une solution pour que cela ne se produise pas.
la source
Ce qui a fonctionné pour moi, c'est:
la source
J'ai rencontré ce problème avec les utilisateurs verrouillés de l'application Bureau à distance. J'ai écrit ce script Powershell pour qu'il s'exécute sur une tâche planifiée pour déconnecter les utilisateurs qui se sont montrés déconnectés pendant plus de 2 minutes. La seule modification requise est le SERVERNAME que j'ai défini pour exclure le serveur Remote Desktop Broker, mais vous pouvez exclure tout serveur que vous aimez, ou aucun du tout.
Soit dit en passant, mon script a été écrit pour Windows Server 2012 R2 ...
Le script fait ceci:
Ça marche pour moi! J'espère que ça aide quelqu'un d'autre! :)
Ou si vous préférez une version que vous pouvez voir ce qui se passe à l'écran:
la source
Créez un fichier dans le bloc-notes et appelez-le findession.cmd. Placez la commande Query Session / server: servername | recherchez / i "% 1" et enregistrez-le dans un répertoire. Créez un autre fichier appelé resetsession.cmd et exécutez la commande Réinitialiser la session% 1 / serveur:% 2 et enregistrez.
À partir d'une invite de commande, accédez au répertoire dans lequel vous avez enregistré ces fichiers et tapez nom d'utilisateur findessions (connexion de l'utilisateur que vous essayez de trouver). Appuyez sur Entrée et vous devriez voir l'identifiant de connexion et de session. Tapez resetsession.cmd ID Servername et il réinitialisera cette session. J'utilise cela quotidiennement et c'est super rapide pour trouver des utilisateurs et réinitialiser leurs sessions.
la source
qwinsta
.taskkill /FI "SESSION eq 1" /F
, en supposant que l'ID de session que vous souhaitez terminer renvoyé par qwinsta était 1.Cela a fonctionné sur Server 2012 Version 6.2 Build 9200, je m'attendrais à ce qu'il fonctionne sur toutes les versions de Windows.
la source
Ce script Power-Shell a fonctionné pour moi, il donne même un joli fichier journal. Je l'ai eu d' ici. : J'espère que cela aidera quelqu'un d'autre car les autres réponses avaient beaucoup de prérequis et ou ne fonctionnaient pas pour moi.
Edit:
J'ai utilisé ce script à l'origine pour me déconnecter et fermer toutes les sessions "déconnectées". Nous avons quelques applications de serveur terminal avec de nombreux utilisateurs et des licences limitées. Les sessions déconnectées resteraient ouvertes très longtemps et parfois elles resteraient ouvertes indéfiniment. Cela a entraîné des sessions inutilisées qui occuperaient certaines des licences et les autres utilisateurs ne pourraient alors pas se connecter.
déconnecter régulièrement les sessions sur certains de mes serveurs. Il fonctionne de manière autonome
sans aucune interaction nécessaire.
la source
Il y a peut-être un processus toujours en cours, bloquant le processus de déconnexion. Vérifiez les processus en cours d'exécution pour l'utilisateur concerné. Ensuite, tuez le processus un par un pour voir celui qui cause le problème.
Vérifiez également la
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
clé de Registre que seuls les processus nécessaires sont démarrés. En 64 bits c'est le casHKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Run
.la source
Vous pouvez télécharger l' outil " Process Explorer " de Microsoft et l'utiliser pour résoudre votre problème. Si vous disposez des ID de session, vous pouvez trouver leurs processus respectifs. Ensuite, si une session utilisateur est déconnectée, vous pouvez tuer le processus avec Process Explorer.
la source
Pas exactement le même environnement (nous avons 2012r2) mais le redémarrage du service de gestion de machine virtuelle Hyper-V (VMMS) a libéré la connexion pour moi.
la source
Vous devez cliquer sur le processus et afficher le processus de tous les utilisateurs, puis vous pourrez vous déconnecter.
pourquoi ne pas créer une stratégie de session sous la configuration de l'hôte de la session Bureau à distance, terminer la session déconnectée ou inactive après un certain intervalle.
la source
Ma solution: sur un autre serveur réseau, je me suis connecté au serveur problématique via l'outil de gestion de l'ordinateur, dans les sessions ouvertes, j'ai cliqué avec le bouton droit et fermé chaque fichier ouvert, puis j'ai pu me connecter via mstsc
la source
vous pouvez toujours utiliser PowerShell à partir de votre machine locale et le faire à distance
la source
Malheureusement. Ma session utilisateur a été déconnectée. Le gestionnaire de tâches n'a montré aucun processus exécuté en tant qu'utilisateur. Je n'ai pas pu déconnecter l'utilisateur du gestionnaire de tâches. J'ai essayé de réinitialiser la commande de session id et j'ai fini par geler également. J'ai dû finir par me connecter à une session différente en tant qu'administrateur, supprimer le compte et en recréer un nouveau.
la source
Avez-vous essayé de vous déconnecter de l'utilisateur de Remote Desktop Services Manager? Accédez à Outils d'administration -> Services Bureau à distance -> Gestionnaire des services Bureau à distance et fermez la session. Cela peut fonctionner.
la source
Allez dans la fenêtre de démarrage et cliquez sur votre nom
Voir l'exemple ici
la source