Не удается завершить требуемую операцию при входе по RDP
Доброго времени суток! Уважаемые читатели и гости IT блога Pyatilistnik.org. Сегодня хочу добавить еще одну статью в коллекцию ошибок RDP. В прошлый раз я вам подробно описал решение невозможности загрузить профиль пользователя. В этот раз я столкнулся уже вот с такой проблемой: "Не удается завершить требуемую операцию, поскольку службы удаленных рабочих столов сейчас заняты". Давайте смотреть в чем дело. Вообще нужно будет как-нибудь написать общую статью со всеми ошибками, думаю будет удобно для общего понимания, с чем можно столкнуться.
Описание проблемы
Есть RDS (Терминальная ферма), состоящая из двух посредников в режиме высокой доступности "High Availability" и 15 хостов подключения. Все, это добро работает на Windows Server 2012 R2. В один из прекрасных дней прилетела заявка, в которой пользователь не мог подключиться к терминальной ферме вот с такой формулировкой:
Причины ошибки
Данная проблема качует еще с Windows Server 2008 R2, а может быть и раньше. Ниже я попытаюсь рассказать, что может быть полезным. Когда я увидел данную ошибку подключения к терминальному серверу, то первым делом я полез в консоль управления RDS фермой. Если вы не помните, то делается это из оснастки "Диспетчер серверов".
Мне было интересно, нет ли случайно на текущий момент у пользователя активной сессией, помните, такое уже было, когда мы видели ошибку "Задача, которую вы пытаетесь выполнить, не может быть завершена". Там в диспетчере задача висел зависший профиль пользователя в виде (4).
Попав в настройки коллекции служб удаленных рабочих столов, я произвел фильтрацию по активным сессиям и обнаружил нужного пользователя.
Я попытался выкинуть пользователя, сделав ему (Выйти - Log Off). Это не дало эффекта, сессия все так же висела, сделать "Отключиться (Disconnect)" так же не привело ни к каким действиям. Так же вы можете использовать для принудительного разлогирования учетной записи (4) утилиты qwinsta, tasklist, reset session и Stop-TSSession.
Дай думаю тогда зайду на сам узел сеансов удаленных рабочих столов (Session Host). Кто не помнит, как подключаться к нужному хосту сервера терминалов, прошу посетить ссылку слева.
Зайдя на Session Host, я пользовательскую сессию просто не обнаружил в диспетчере задач Windows, значит в настройках коллекции есть, а тут нет, и выкинуть ее не получается. Перезапуск оснастки "Диспетчер серверов", так же не дал результата.
Помня золотое правило Microsoft, семь бед, один ресет, я решил данный хост вечером перезагрузить, когда уже все закончат работу. Чтобы это правильно сделать, нужно закрыть новые подключения к нему, чтобы новые пользователи не могли к нему подключиться. Делается это из настроек коллекции RDS фермы. Выбираете в списке "Серверы узлов (Host Servers)", щелкните по нему правым кликом и выберите пункт "Не разрешать новые подключения (Do not allow new connections)". В итоге на против вашего узла сеансов удаленных рабочих столов, сменится статус с "Истина (True)" на "Ложь (False)". Что будет означать, невозможность новых подключений.
Сделал я это и забыл, стал ждать вечера, чтобы перезагрузить сервер. Проходит минут 10 и что я вижу, что пользователь пропал из активных подключений в оснастке управления коллекциями терминальных серверов. Я попросил его попробовать подключиться к терминалу, и все успешно было выполнено. Видимо какой-то был глюк в связке посредника подключений (connection broker) и узлом подключения, который не правильно отдавал информацию, о сессиях.
Дополнительные варианты решения
Если у вам не помогло мое решение и ошибка "Не удается завершить требуемую операцию, поскольку службы удаленных рабочих столов сейчас заняты" у вас все так же высвечивается, то можно попробовать все же перезагрузить нужный хост. Если перезагрузка не помогла, то советую проверить настройки на стороне клиента, а именно в окне mstsc (Подключение к удаленному рабочему столу), выберите показать параметры.
Перейдите на вкладку "Взаимодействие" и снимите галку "Постоянное кэширование точечных рисунков"
В большинстве случаев, это решает проблему. Если вам это не помогло, то советую:
- Проверить не блокируется ли трафик со стороны клиентской станции и со стороны узла подключения.
- Проверьте нагрузку на сеть и наличие антивируса, такое было уже при сообщении "Работает служба профилей пользователей"
- Убедитесь, что у вас доступен сервер лицензирования вашей терминальной фермы и хватает ли лицензий на пользователей или компьютеры.
- Microsoft в случае с Windows 7 или Windows Server 2008 R2, рекомендует установить патч (https://support.microsoft.com/ru-ru/help/3014783/remote-desktop-services-is-currently-busy-or-the-group-policy-client-f) и вообще полностью обновить ваши системы
- Так же если вы можете попасть на сервер по RDP или консольно, то можете попытаться перезапустить службу удаленных рабочих столов из оснастки "Службы" или в командной строке выполнив net stop termservice && net start termservice, так же не забываем, что вы можете удаленно перезапустить службу RDP, я это описывал используя утилиту PsExec.exe
- Ну уж коли больше ничего не помогает, то пробуйте простую перезагрузку сервера, главное не забывайте предупредить пользователей в их сессиях, если кто-то еще остался там работать
Надеюсь вам удалось устранить ошибку подключения "Не удается завершить требуемую операцию, поскольку службы удаленных рабочих столов сейчас заняты. Повторите попытку через несколько минут. Другие пользователи должны по-прежнему иметь возможность входа". С вами был Иван Семин, автор и создатель IT блога Pyatilistnik.org,
Была вчера такая проблема на 2016 сервере. Решилась перезапуском службы удалённых рабочих столов.
Иногда это помогает
не зря его зовут «мастдай». долбанный виндоуз, пришлось ехать за 50км чтобы перегрузить комп!!
+1 Подтверждаю! Такая проблема на 2016 сервере. Решилась перезапуском службы удалённых рабочих столов. Спасло то, что держал две административные записи одна зависла, подключился со второй и перезапустил сервис.
Спасибище добрый человек!!!
помогло снятие галки «Постоянное кеширование точечных рисунков»
ДА снятие галочки помогло
а мне снятие галки не помогло
Снятие галочки частично помогает, при активной работе на сервере 40 пользователей, ошибка ушла на 90%.
галочка помогает но не решает на 100%
Рекомендую ее убрать.