Windowsで、サーバにログオン中のユーザーをリモートから切断/ログオフさせるTech TIPS

管理用リモート・デスクトップ機能では最大2人まで同時にログオンできるが、3人目以降はログオンできない。必要ならば現在ログオン中のユーザーを一時的に切断したり、ログオフさせるとよい。リモートから切断するにはtsdisconコマンドを、ログオフさせるにはlogoffコマンドを使用する。

» 2009年10月23日 05時00分 公開
[打越浩幸デジタルアドバンテージ]
「Tech TIPS」のインデックス

連載目次

対象OS:Windows XP/Windows Server 2003/Windows Vista/Windows Server 2008/Windows 7/Windows Server 2008 R2



解説

 TIPS「サーバにログオン中のユーザーをリモートから調査する」では、サーバOSにログオンしているユーザーをリモートから調査する方法を紹介した。サーバOSの「管理用リモート デスクトップ」機能を利用すると、1台のサーバに同時に最大2人がログオンして作業を行うことができる(これに加えて、コンソールからもう1人ログオンすることも可能)。すでに2人がリモートからログオンしている状態で、さらにリモートからログオンしようとすると、次のようなダイアログが表示され、ログオンすることはできない。

リモートデスクトップの接続数を超えた場合の表示 リモートデスクトップの接続数を超えた場合の表示
サーバOSのリモート管理デスクトップ機能を利用すると、リモートから同時に2人までログオンできるが、3人目はログオンできない。
  (1)3人目がログオンしようとすると、このようなダイアログが表示される。

 このようなダイアログが表示された場合は、先のTIPSの方法でログオン中のユーザーを調べ、使用中のユーザーを一時的に切断させたり、ログオフさせればよい。本TIPSでは、サーバにログオンしているユーザーをリモートから切断/ログオフさせる方法について解説する。

操作方法

●tsdisconコマンドでリモートから切断させる

 リモートからユーザーをログオフするには、tsdiscon.exeというコマンドを利用する。コマンドの使い方は「tsdiscon /?」で表示される。引数なしでtsdisconコマンドを実行すると、今ログオンしているセッション(つまり自分自身)がすぐに切断されてしまうので注意する。

C:\>tsdiscon /?  …使い方の表示
ターミナル セッションを切断します。

TSDISCON [セッション ID | セッション名] [/SERVER:サーバー名] [/V]

  セッション ID     セッションの ID です。
  セッション名      セッション名を指定します。
  /SERVER:サーバー  ターミナル サーバーを指定します (既定値は現在のサーバー)。
  /V                実行中に詳細情報を表示します。



 tsdisconコマンドで指定するセッション名やセッションIDは、TIPS「サーバにログオン中のユーザーをリモートから調査する」で紹介した「query user(もしくはquser)」や「query session(もしくはqwinsta)」で表示されるものと同じである。まずリモート・サーバのログオン・ユーザーを調べ、そこで得られたセッションIDを指定してtsdisconコマンドを実行する。いずれも/server:オプションで対象となるサーバを指定する。

※これはWindows XPからWindows Server 2003を調査した例

C:\>qwinsta /server:server999 …qwinstaはquery sessionと同じ
 セッション名   ユーザー名         ID  状態    種類     デバイス
 console                            0  Conn    wdcon
 rdp-tcp                        65536  Listen  rdpwd
 rdp-tcp#27     hiroyu              1  Active  rdpwd …ログオン中

※セッションIDを指定して切断する
C:\>tsdiscon 1 /server:server999 …セッション1を切断

C:\>qwinsta /server:server999 …確認
 セッション名   ユーザー名         ID  状態    種類     デバイス
 console                            0  Conn    wdcon
 rdp-tcp                        65536  Listen  rdpwd
                hiroyu              1  Disc    rdpwd …切断中。状態が「Disc(切断)」になっている



●logoffコマンドでリモートからログオフさせる

 リモートからユーザーをログオフするには、logoff.exeというコマンドを利用する。コマンドの使い方は「logoff /?」で表示される。引数なしでlogoffコマンドを実行すると、今ログオンしているセッション(つまり自分自身)がすぐにログオフしてしまうので注意する。

C:\>logoff /?  …使い方の表示
セッションを終了します。

LOGOFF [セッション名 | セッション ID] [/SERVER:サーバー名] [/V]

  セッション名        セッション名を指定します。
  セッション ID       セッション ID を指定します。
  /SERVER:サーバー名  ログオフするユーザー セッションが実行されている
                      ターミナル サーバー (既定値は現在のサーバー)。
  /V                  実行中に詳細情報を表示します。



 logoffコマンドで指定するセッション名やセッションIDは、「query user」や「query session」で表示されるものと同じである。まずリモート・サーバのログオン・ユーザーを調べ、そこで得られたセッションIDを指定してlogoffコマンドを実行する。

※これはWindows XPからWindows Server 2003を調査した例

C:\>qwinsta /server:server999 …qwinstaはquery sessionと同じ
 セッション名   ユーザー名         ID  状態    種類     デバイス
 console                            0  Conn    wdcon
 rdp-tcp                        65536  Listen  rdpwd
 rdp-tcp#19     hiroyu              2  Active  rdpwd  …ユーザー1
 rdp-tcp#18     keisuke             3  Active  rdpwd  …ユーザー2

※セッションIDを指定してログオフする
C:\>logoff 2 /server:server999 …ユーザー1をログオフ

※セッション名を指定してログオフする(/vオプション指定付き)
C:\>logoff rdp-tcp#18 /server:server999 /v …ユーザー2をログオフ
セッション ID 3 をログオフしています。 …動作中のメッセージ

C:\>qwinsta /server:server999 …ユーザーの確認
 セッション名   ユーザー名         ID  状態    種類     デバイス
 console                            0  Conn    wdcon
 rdp-tcp                        65536  Listen  rdpwd
…ユーザー1とユーザー2がログオフしている



「Tech TIPS」のインデックス

Tech TIPS

Copyright© Digital Advantage Corp. All Rights Reserved.

スポンサーからのお知らせPR

注目のテーマ

Microsoft & Windows最前線2025
AI for エンジニアリング
ローコード/ノーコード セントラル by @IT - ITエンジニアがビジネスの中心で活躍する組織へ
Cloud Native Central by @IT - スケーラブルな能力を組織に
システム開発ノウハウ 【発注ナビ】PR
あなたにおすすめの記事PR

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。