Я ищу некоторые идеи о том, как отключить, выйти из системы или сбросить сеанс пользователя на сервере терминалов 2008 (невозможно войти в систему как пользователь, так как он полностью заблокирован). Это производственная среда, поэтому о перезагрузке сервера или выполнении общесистемных операций пока не может быть и речи. Какие-нибудь хитрости Powershell, чтобы помочь нам с этим?
Мы попытались отключить, отключить пользователя и сбросить сеанс, а также убить процессы сеанса также напрямую с одного и того же сервера терминалов (из диспетчера задач, диспетчера служб терминалов и монитора ресурсов) без результатов.
Помогите!
ОБНОВЛЕНИЕ: Мы закончили тем, что перезагрузили сервер, поскольку никакие другие попытки, о которых мы могли думать, не работали. Я оставлю этот вопрос открытым, надеясь, что у кого-то будет больше информации об этой проблеме, и это потенциальные исправления
Ответы:
Для решения этой же проблемы мне удалось убить все процессы, запущенные под заблокированной учетной записью, из-под диспетчера задач, а затем я смог просто выйти из этой учетной записи (из учетной записи администратора).
Затем пользователь смог снова войти в систему под учетной записью.
Никакая перезагрузка не была необходима, и никакое стороннее программное обеспечение не должно было быть загружено.
источник
csrss.exe
,dwm.exe
,LoginUI.exe
иwinlogon.exe
. Я думал, что убийствоwinlogon.exe
вызовет BSOD ...Я хочу поделиться тем, как я сбрасываю учетную запись без необходимости перезагрузки сервера. Прежде всего вам необходимо иметь доступ администратора к серверу. Я использую следующую опцию входа в систему: mstsc / v: имя_сервера / console / admin для доступа к серверу. Затем в «Менеджере Windows Taks» перейдите на вкладку « Пользователи » и выполните правый клик по учетной записи, для которой вы хотите «Выйти», выберите «Выйти из системы». Это должно освободить заблокированный сеанс, используемый этой учетной записью.
источник
Простой ответ - запустить командную строку с повышенными привилегиями и ввести «Taskmgr», после чего вы сможете выйти из сеансов на вкладке USERS. Это не будет работать без участия в повышенном сеансе.
источник
Вы можете запустить cmd, выполнить сеанс запроса , проверить идентификатор сеанса, который нужно уничтожить, а затем выполнить сеанс сброса . Например, если с сеансом запроса вы получаете, что имя сеанса rdp-tcp # 1 является тем, которое вы хотите убить, тогда вы можете выполнить сброс сеанса rdp-tcp # 1 и убить его.
источник
reset session 9
эту команду просто зависает. Моя сессия продолжает иметь четыре запущенные процессы , не представляясь быть активным:crss.exe
,dwm.exe
,LogonUI.exe
, иwinlogon.exe
. i.imgur.com/cFM62RA.png иquery session 9
результатыNo User exists for 9
.Я полагаю, то же самое произошло сегодня на моем терминальном сервере Win2008R2. Симптомы были: 1. Он позвонил мне с сообщением «Соединение просто висит навсегда». Он простой пользователь, поэтому я не могу ожидать подробного описания проблемы. 2. Пробовал выходить из системы / сбрасывать сеанс (что обычно помогает в этих случаях) - не сработало. Сессия все еще висит в списке со статусом «отключено». 3. Пробовал убивать все процессы для этого пользователя - не помогло. Сессия продолжается и отказывается быть убитой.
Решение было - подключиться как пользователь (войдите с его учетными данными, если вы можете сбросить его пароль или использовать какую-то удаленную помощь, чтобы увидеть, что происходит на его компьютере) и посмотреть, что происходит в окне входа. При подключении я нажал на кнопку «Подробности» клиента RDP - и вот оно, было сообщение об ошибке, что winlogon сделал что-то не так, он ждал, когда пользователь нажмет на кнопки «повторить / игнорировать / и т. Д.», И так как это был всемогущий winlogon, он вызвал все это странное поведение.
PS Я не мог найти способ действительно заставить убить сеанс :(
источник
У нас только что была похожая проблема с нашим сервером удаленного рабочего стола Windows Server 2008 R2. Сеанс пользователя показывал «Активно» при просмотре RDS Manager, но у него не было идентификатора ассоциированного сеанса или показа подключенного устройства (оба были пустыми).
Все вышеперечисленные трюки не решили проблему. При подключении в качестве пользователя, о котором идет речь, возвращалось сообщение об ошибке, в котором говорилось, что сервер терминалов был занят и повторите попытку позже или обратитесь к администратору.
Мы также перезагрузили сервер.
источник
У меня была такая же проблема в Windows Server 2016. Пользователь не смог войти в систему.
Поэтому я попытался выполнить следующие шаги, чтобы отключить потерянный сеанс:
показывать активные сессии и убивать их
с идентификатором сеанса (7) из 1. Я пытался убить этот сеанс с помощью любого сеанса сброса 7 (fyi: rwinsta - псевдоним для сеанса сброса)
это работало в течение одного сеанса, но в следующий раз это не имело никакого эффекта, поэтому я открыл диспетчер задач и вкладку пользователя. Там вы найдете один расширяемый список, назначенный каждому пользователю удаленного рабочего стола - один список не имеет имени пользователя и показывает только 4 запущенных задачи.
Я попробовал очевидное: выход пользователя из системы. Без какого-либо эффекта.
пытаясь выйти из системы пользователя
После шага / попытки 4 даже последний сбойный сеанс был уничтожен, и пользователь смог снова войти в систему
источник
winlogon.exe
но не уверен , о других , какLoginUI.exe
,csrss.exe
, иdwm.exe
.Возможно, стоит проверить, что у пользователя нет всплывающего окна с учетными данными, скрытого за окном удаленного рабочего стола с помощью alt + tab.
У коллеги возникла та же проблема; не удалось выйти из системы или выполнить сброс, и все его процессы были закрыты вручную. Когда я попытался получить доступ к графическому интерфейсу системы, с которой он удаленно работал, я обнаружил поле для учетных данных, скрытое за удаленным сеансом.
источник
Я бы поступил точно так же: Windows Server 2008 R2 со службами удаленных рабочих столов, RDP-соединение, настроенное для выхода из системы пользователей после того, как сеанс неактивен или отключен через 3 часа, а некоторые сеансы все еще остаются заблокированными. Я попытался выйти из системы с помощью Remote Desktop Manager и qwinsta / quser, но безуспешно.
Вот как я решил это:
qwinsta
.winlogon.exe
для зависшей сессииquery process /ID:yourid
.taskkill /f /PID yourPID
.Путь В противном случае я бы хотел найти решение, чтобы этого не произошло.
источник
Что сработало для меня:
источник
У меня была эта проблема с заблокированными пользователями приложения удаленного рабочего стола. Я написал этот сценарий Powershell для выполнения запланированной задачи по выходу из системы пользователей, которые были отключены более 2 минут. Единственное, что требуется отредактировать, - это имя_СЕРВЕРА, которое я установил, чтобы исключить сервер посредника удаленных рабочих столов, однако вы можете исключить любой понравившийся вам сервер или ни одного вообще.
Мой скрипт был написан для Windows Server 2012 R2, кстати ...
Сценарий делает это:
Меня устраивает! Я надеюсь, что это помогает кому-то еще! :)
Или, если вы предпочитаете версию, вы можете видеть, что происходит на экране:
источник
Создайте файл в блокноте и назовите его findsession.cmd. Поместите команду Query Session / server: имя_сервера | найти / i "% 1" и сохранить в каталог. Создайте другой файл с именем resetsession.cmd, поместите команду «Сбросить сеанс% 1 / сервер:% 2» и сохраните.
В командной строке перейдите в каталог, в котором вы сохранили эти файлы, и введите findsession username (логин пользователя, которого вы пытаетесь найти). Нажмите Enter, и вы должны увидеть логин и идентификатор сессии. Введите resetsession.cmd ID Servername, и он сбросит этот сеанс. Я использую это ежедневно, и это очень быстро для поиска пользователей и сброса их сессий.
источник
qwinsta
.taskkill /FI "SESSION eq 1" /F
, предполагая, что ID сеанса, который вы хотите завершить, возвращен из qwinsta, равным 1.Это работало на Server 2012 версии 6.2 Build 9200, я ожидаю, что он будет работать на всех версиях Windows.
источник
Этот скрипт Power-Shell работал для меня, он даже дает хороший файл журнала. Я получил это отсюда. Я надеюсь, что это поможет кому-то еще, так как другие ответы имели много предпосылок и не работали для меня.
Редактировать:
я изначально использовал этот скрипт для выхода из системы и закрытия всех «отключенных» сессий. У нас есть пара приложений терминального сервера со многими пользователями и ограниченными лицензиями. Отключенные сеансы оставались открытыми в течение очень долгого времени, а иногда они оставались открытыми неограниченное время. Это привело к неиспользуемым сеансам, которые занимали бы некоторые лицензии, и в результате другие пользователи не могли бы подключиться в результате.
отключать сеансы на некоторых из моих серверов. Он работает автономно
без какого-либо взаимодействия.
источник
Возможно, процесс все еще работает, блокируя процесс выхода из системы. Проверьте все еще запущенные процессы для затронутого пользователя. Затем убейте процесс один за другим, чтобы увидеть, кто вызывает эту проблему.
Проверьте также
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
ключ реестра, в котором запускаются только необходимые процессы. В 64bit это такHKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Run
.источник
Вы можете скачать инструмент « Process Explorer » от Microsoft и использовать его для решения вашей проблемы. Если у вас есть идентификаторы сеансов, вы можете найти их соответствующие процессы. Затем, если пользовательский сеанс отключен, вы можете завершить процесс с помощью Process Explorer.
источник
Не совсем та же среда (у нас 2012r2), но перезапуск службы управления виртуальными машинами Hyper-V (VMMS) освободил мне соединение.
источник
Вам нужно нажать на процесс и показать процесс от всех пользователей, и тогда вы сможете отключиться.
почему бы не создать политику сеанса в разделе Конфигурация хоста сеанса удаленного рабочего стола в конце отключен или неактивен после определенного интервала.
источник
Мое исправление: на другом сетевом сервере я подключился к проблемному серверу с помощью инструмента «Управление компьютером», в открытых сеансах я щелкал правой кнопкой мыши и закрывал каждый открытый файл, после чего смог подключиться через mstsc
источник
вы всегда можете использовать powershell с вашей локальной машины и делать это удаленно
источник
К сожалению. Мой пользовательский сеанс был отключен. Диспетчер задач не показал никаких процессов, запущенных от имени пользователя. Я не мог выйти из системы из диспетчера задач. Я попытался сбросить команду идентификатора сеанса и закончил тем, что зависал также. Мне пришлось в конечном итоге войти в другой сеанс с правами администратора, удалить учетную запись и заново создать новую.
источник
Вы пытались выйти из системы из диспетчера служб удаленных рабочих столов? Перейдите в Администрирование -> Службы удаленных рабочих столов -> Диспетчер служб удаленных рабочих столов и выйдите из сеанса. Это может сработать.
источник
Перейти в стартовое окно и нажмите на свое имя
Смотрите образец здесь
источник