Команда сеанса Windows конечного пользователя

Обновлено: 02.07.2024

В этом модуле описывается, как можно завершать сеансы и очищать процессы операционной системы, связанные с сеансами.

Темы

В этом модуле обсуждается следующее:

Просмотр скриншотов

Наведите указатель мыши на этот значок, чтобы отобразить все скриншоты. Вы также можете навести указатель мыши на каждый отдельный значок, чтобы увидеть только связанный с ним снимок экрана.

Обзор

В этом модуле вы узнаете, как завершать сеансы с помощью SQL*Plus и Enterprise Manager.

Всегда следует завершать сеансы пользователей с помощью инструментов Oracle. Однако если процесс операционной системы, связанный с прерванным сеансом пользователя Oracle, остается активным, вы можете завершить процесс операционной системы, связанный с сеансом, выполнив соответствующие шаги для вашей операционной системы:

Завершение сеансов с помощью SQL*Plus

Вы можете завершить сеанс с помощью команды ALTER SYSTEM KILL. Когда вы вводите команду сеанса ALTER SYSTEM KILL, вы должны указать порядковый номер и серийный номер сеанса. Чтобы определить порядковый номер сеанса (sid) и серийный номер сеанса, запросите динамическое представление производительности V$SESSION, как показано ниже. Значение столбца STATUS будет ACTIVE, когда сеанс выполняет SQL-запрос к Oracle. Он будет НЕАКТИВНЫМ, если не выполняет SQL-запрос к Oracle.

Определите правильный сеанс и завершите сеанс, выполнив следующие действия:

Запросите V$SESSION, указав имя пользователя для сеанса, который вы хотите завершить:

Выполните команду ALTER SYSTEM, чтобы завершить сеанс:

После очистки PMON после сеанса строка удаляется из V$SESSION:

Завершение сеансов с помощью Enterprise Manager

Определите правильный сеанс и завершите сеанс, выполнив следующие действия.

Примечание. В примерах использовался Oracle Enterprise Manager 9.2.

Выберите ПУСК > Программы > Oracle > OraHome92 > Консоль Enterprise Manager. Выберите «Запустить автономный режим» и нажмите «ОК».

Развернуть базы данных. Расширьте свою базу данных. Разверните Экземпляр и выберите Сеансы. Определите сеанс, который вы хотите завершить.

Развернуть сеансы. Выберите сеанс, который вы хотите завершить, и нажмите «Завершить сеанс»:

Выберите «Немедленно» и нажмите «ОК»:

СТАТУС меняется на УБИТО, а СЕРВЕР меняется на ПСЕВДО:

Ряд удаляется после очистки PMON после сеанса:

Завершение связанных с сеансом процессов операционной системы в UNIX

Фоновый процесс PMON очистится после завершения любого пользовательского сеанса с помощью команды ALTER SYSTEM KILL SESSION. Вы можете завершить процесс операционной системы, связанный с сеансом, выполнив шаги, описанные ниже:

Выполните следующий запрос, чтобы определить идентификатор процесса операционной системы (SPID):

Если вы не можете определить идентификатор процесса операционной системы (SPID) из запроса на шаге 2, вы можете ввести следующий запрос, чтобы помочь определить правильный сеанс:

По запросу операционной системы введите команду kill и укажите идентификатор процесса операционной системы (spid):

Завершение связанных с сеансом процессов операционной системы в Windows

Фоновый процесс PMON очистится после завершения любого пользовательского сеанса с помощью команды ALTER SYSTEM KILL SESSION. Вы можете завершить процесс операционной системы, связанный с сеансом, выполнив шаги, описанные ниже:

Выполните следующий запрос, чтобы определить идентификатор процесса операционной системы (SPID) или поток:

По запросу операционной системы введите команду orakill. Укажите SID и поток, которые вы получили из столбца SPID на шаге 2:

Несмотря на то, что концепция совместного использования одним устройством или одним компьютером нескольких пользователей с каждым днем ​​становится все реже, все еще бывают случаи, когда вам необходимо совместно использовать компьютеры и быстро переключаться между пользователями. Иногда вам нужно завершить сеанс для другого пользователя, выполнившего вход на ваш компьютер. Вот несколько методов, которые вы можете использовать.

Ситуация может быть другой, когда вам нужно завершить сеанс пользователя. Например, кто-то просто забыл выйти из своей учетной записи пользователя и оставил запущенные приложения и открытые документы, поэтому они остаются в памяти вашего компьютера и потребляют его системные ресурсы. В этом случае может быть полезно отключить неактивный сеанс для другого пользователя.

Никаких сторонних инструментов не требуется. Это можно сделать с помощью диспетчера задач, командной строки или PowerShell.

Чтобы выйти из системы другого пользователя в Windows 10

Кроме того, для той же цели можно использовать несколько консольных инструментов. Давайте рассмотрим их.

Отключить другого пользователя из командной строки

  1. Откройте командную строку с повышенными правами.
  2. Введите или скопируйте и вставьте следующую команду: query session . В нем будут перечислены доступные сеансы пользователей.
  3. Запишите значение столбца ID для пользователя, которого вы хотите отключить.
  4. Теперь выполните команду logoff . Например, выход из системы 1 .
  5. Наконец, вы можете использовать PowerShell следующим образом.

    Выйти из системы другого пользователя с помощью PowerShell

    1. Открывать PowerShell от имени администратора. Совет. Можно добавить контекстное меню «Открыть PowerShell от имени администратора».
    2. Введите или скопируйте и вставьте следующую команду: $sessionID = ((quser /server:'имя вашего компьютера' | Where-Object < $_ -match 'имя пользователя для выхода' >) -split '+') [2]
    3. Теперь выполните команду logoff $sessionID .
    4. Метод PowerShell отлично подходит, если вы знаете точное имя пользователя. Вы можете сохранить его как сценарий и при необходимости выключить других пользователей одним щелчком мыши.

      Похожие записи в блоге:

      Winaero очень рассчитывает на вашу поддержку. Вы можете помочь сайту и дальше предлагать вам интересный и полезный контент и программное обеспечение, используя следующие варианты:

      Если вам понравилась эта статья, поделитесь ею с помощью кнопок ниже. Это не потребует от вас многого, но поможет нам расти. Спасибо за вашу поддержку!

      Автор: Сергей Ткаченко

      Сергей Ткаченко — разработчик программного обеспечения из России, который основал Winaero еще в 2011 году. В этом блоге Сергей пишет обо всем, что связано с Microsoft, Windows и популярным программным обеспечением. Следите за ним в Telegram, Twitter и YouTube. Просмотреть все сообщения Сергея Ткаченко

      2 мысли о «Выход из системы другого пользователя в Windows 10»

      Обратите внимание, что команда выхода из системы недоступна в выпусках Windows 10 Home.

      Ни один из этих параметров командной строки вообще не работает в последней сборке. Эта статья предназначена только для того, чтобы пожевать глазные яблоки, пожалуйста, исправьте это.

      Оставить ответ Отменить ответ

      Свяжитесь с нами

      Здесь вы можете подписаться на наши каналы. У нас есть Twitter, YouTube и Telegram, а также RSS-канал и информационный бюллетень по электронной почте.

      Мы прекратили работу Facebook, чтобы доставлять обновления наших сообщений.

      Избранные сообщения

      Реклама

      Недавно обновлено

      Дружественные блоги

      transparent

      Обзор конфиденциальности

      Для наших целей вы будете чаще всего работать с сеансами RDP-Tcp.

      Переключение между сеансами

      Допустим, вы вошли в свой рабочий стол Windows 7 через RDP с учетными данными вашего домена, чтобы вы могли работать на этом компьютере удаленно. При этом сеанс консоли переключается на сеанс RDP, а консоль возвращается к экрану входа в систему. Та же функциональность лежит в основе возможности переключения между сеансами на сервере узла сеансов удаленных рабочих столов с помощью диспетчера служб удаленных рабочих столов или команды tscon. Вы можете переключаться между своими сеансами, если у вас их несколько, или (если вы знаете пароль) вы можете подключиться к сеансу другого пользователя и отключить свой собственный. При подключении к сеансу с помощью этой функции сеанс, с которого вы начали, автоматически отключается.

      • Это работает только для подключения к сеансу RDP-Tcp из другого соединения RDP-Tcp на том же сервере. Вы можете подключиться к активному или отключенному сеансу.
      • Вы не можете подключиться к сеансу RemoteApp, только к полному рабочему столу.
      • Хотя вы можете подключиться к другому сеансу из административного соединения (/admin), вы не можете подключиться к административному соединению из другого соединения RDP-Tcp.
      • Когда вам будет предложено ввести пароль при подключении к сеансу из диспетчера служб удаленных рабочих столов, пароль скрыт на экране. Когда вы вводите пароль инструменту командной строки, пароль может отображаться на экране в виде открытого текста, если хотите. Поэтому будьте осторожны с использованием tscon, когда кто-то стоит позади вас!

      ПРИМЕЧАНИЕ. Если вы попытаетесь подключиться к локальному сеансу входа из tscon, вы увидите код ошибки 31, говорящий вам: «Устройство, подключенное к системе, не работает». Если вы попытаетесь подключиться к удаленному соединению /admin, вы получите сообщение об ошибке, что доступ запрещен.

      1. Начните сеанс RDP с сервером узла сеансов удаленных рабочих столов, на котором размещен сеанс, к которому вы хотите подключиться.
      2. Найти правильный сеанс. В диспетчере служб удаленных рабочих столов найдите нужный сеанс на вкладке «Пользователи» или «Сеансы» на центральной панели. При использовании командной строки найдите идентификатор сеанса, введя запрос сеанса.
      3. Подключиться к сеансу. В диспетчере служб удаленных рабочих столов щелкните сеанс правой кнопкой мыши и выберите «Подключиться» в контекстном меню. В командной строке введите tsconsessionID /password:password, чтобы ввести пароль с помощью команды, или /password*, чтобы ввести пароль. Вам нужно будет включить всю эту информацию в команду.
        ПРИМЕЧАНИЕ. Вы должны указать пароль при подключении из командной строки, иначе команда не будет выполнена.При подключении из диспетчера служб удаленных рабочих столов вам будет предложено ввести пароль, если вы подключаетесь к чужому сеансу.
      4. Если вы введете правильный пароль и сможете подключиться к сеансу, вы немедленно подключитесь к новому сеансу и увидите все приложения или файлы, открытые в другом сеансе. Человек, чья сессия была, будет отключен. Если пароль недействителен, вы увидите сообщение об ошибке.

      Эта функциональность наиболее полезна, если функциональность RemoteApp не рассматривается. В Windows Server 2003 и более ранних версиях единственным способом публикации отдельных приложений было ограничение сеанса одним приложением. Используя Connect, пользователь мог (хотя и неудобно) перемещаться между отдельными приложениями на одном и том же сервере терминалов.

      Сегодня эта команда не применима в большинстве ситуаций, поскольку единственные сеансы, к которым вы должны иметь возможность подключаться (при условии достаточно надежной защиты паролем домена), являются вашими собственными. Один из возможных сценариев использования Connect в настоящей версии RDS — это если вы вошли на сервер узла сеансов удаленных рабочих столов как пользователь и как администратор, используя две разные учетные записи. Вы можете переключиться на свой профиль администратора, подключившись к сеансу, но вы отключите свой профиль пользователя.

      Я ищу некоторые идеи о том, как отключить, выйти из системы или сбросить сеанс пользователя на сервере терминалов 2008 (не могу войти в систему как пользователь, так как он полностью заблокирован). Это производственная среда, поэтому о перезагрузке сервера или выполнении каких-либо общесистемных действий сейчас не может быть и речи. Какие-нибудь хитрости Powershell помогут нам в этом?

      Мы пытались отключиться, выйти из системы и сбросить сеанс, а также убить процессы сеанса непосредственно с того же сервера терминалов (из диспетчера задач, диспетчера служб терминалов и монитора ресурсов) безрезультатно. .

      ОБНОВЛЕНИЕ: в итоге мы перезагрузили сервер, так как никакие другие попытки не сработали. Я оставлю этот вопрос открытым, надеясь, что у кого-то может быть больше информации об этой проблеме и возможных решениях

      У меня точно такая же проблема на терминальных серверах Windows 2008 R2 SP1. Они просто случайным образом зависают, и пользователи не могут выйти из системы или войти на сервер. Я не могу войти локально как локальный администратор или администратор домена. Единственный способ подключиться к серверу — использовать compmgmt.msc, но даже здесь я не вижу никаких проблем в журналах событий. На каком-то этапе я получаю сообщение о том, что служба IMA не отвечает, а сервер удален из фермы. Единственный способ решить эту проблему - перезагрузить сервер Hard. Выключите и снова включите питание. Мне не удалось ни к чему сузить причину этого, и я

      24 ответа 24

      Что помогло мне решить эту же проблему, так это убить все процессы, работающие под заблокированной учетной записью, из диспетчера задач, а затем я смог просто выйти из этой учетной записи (из учетной записи администратора).

      После этого пользователь смог снова войти в систему под учетной записью.

      Нет необходимости в перезагрузке и загрузке стороннего программного обеспечения.


      -Спасибо, избавил меня от перезагрузки сервера! Очень не хотелось выгонять всех в течение рабочего дня из-за 1 застрявшей сессии.

      Безопасно ли убивать эти процессы? У моего пользователя есть csrss.exe, dwm.exe, LoginUI.exe и winlogon.exe. Я думал, что убийство winlogon.exe вызовет BSOD…

      Я хочу поделиться тем, как я сбрасывал аккаунт без перезагрузки сервера. Прежде всего, вам необходимо иметь доступ администратора к серверу. Я использую следующий вариант входа: mstsc /v:имя_сервера /console /admin для доступа к серверу. Затем в «Диспетчере задач Windows» перейдите на вкладку «Пользователи» и щелкните правой кнопкой мыши учетную запись, которую вы хотите «выйти», выберите «Выход из системы». Это должно освободить заблокированный сеанс, используемый этой учетной записью.

      Простой ответ — запустить командную строку с повышенными правами и ввести «Taskmgr», после чего вы сможете выйти из сеансов на вкладке «ПОЛЬЗОВАТЕЛИ». Это не будет работать, если вы не находитесь в сеансе с повышенными правами.

      Решение было таким: подключитесь как пользователь (войдите в систему с его учетными данными, если вы можете сбросить его пароль или использовать какую-либо удаленную помощь, чтобы увидеть, что происходит на его компьютере) и посмотреть, что происходит в окне входа в систему. При подключении я нажал кнопку «Подробности» RDP-клиента - и вот оно, сообщение об ошибке, что winlogon сделал что-то не так, он ждал, пока пользователь нажмет кнопки «повторить/игнорировать/и т. д.», и, поскольку это всемогущий winlogon, он вызвал все это странное поведение.

      пс. Я не мог найти способ принудительно убить сеанс :(

      Это исправило это для меня! Он ждал, пока пользователь решит отключить другого пользователя или нажмет «Отмена». Я нажал «Отмена», и теперь этот пользователь, который застрял на вкладке «Пользователи» диспетчера задач, исчез. Спасибо!

      Все вышеперечисленные приемы не помогли решить проблему. При подключении от имени рассматриваемого пользователя возвращалось сообщение об ошибке, в котором говорилось, что сервер терминалов занят, и следует повторить попытку позже или обратиться к администратору.

      Мы также перезагрузили сервер.


      У меня была такая же проблема в Windows Server 2016. Пользователь не смог войти в систему.

      Поэтому я попытался отключить осиротевший сеанс следующим образом:

      1. в интерфейсе командной строки qwinsta перечисляет все доступные сеансы, неактивные и активные, есть один отключенный сеанс (на скриншоте он называется "getr") без имени пользователя, но с идентификатором сеанса.

      с идентификатором сеанса (7) из 1. Я пытался завершить этот сеанс с помощью сеанса сброса 7 (к сведению: rwinsta — это псевдоним для сеанса сброса)

      Одну сессию это работало, но в следующий раз просто не действовало, поэтому я открыл диспетчер задач и вкладку пользователя. Там вы найдете один расширяемый список, назначенный каждому пользователю удаленного рабочего стола — в одном списке не было имени пользователя и было показано только 4 запущенных задачи.

      Я попробовал очевидный способ: выход пользователя из системы. Без какого-либо эффекта.

      1. Поэтому я попытался завершить эти 4 задачи, назначенные этому пользователю. Будьте осторожны, потому что некоторые задачи, в первую очередь csrss.exe, при уничтожении также приведут к перезагрузке системы. Я пропустил их и просто убил некоторые очевидные RDP-задачи.

      После шага/попытки 4 даже последний прерванный сеанс был прерван, и пользователь снова смог войти в систему

      Читайте также: