treedown’s Report

システム管理者に巻き起こる様々な事象を読者の貴方へ報告するブログです。会社でも家庭でも"システム"に携わるすべての方の共感を目指しています。

※https化しました。その影響でしばらくリンク切れなどがあるかもしれませんが徐々に修正していきます。 リンク切れなどのお気づきの点がございましたらコメントなどでご指摘いただけますと助かります。

RDPサービスマネージャが使えないとき使うコマンド

いつも使おうと思ったとき忘れてしまうので自分用の備忘録。
リモートデスクトップで接続中のユーザ一覧を見たいときにどうするか、というTIPSをご報告します。

リモートデスクトップは便利に利用できますが、社内で使っているとWindows Updateなどの適用後に再起動していいかどうか迷う時があります。
そういう時はたいてい「ほかの人がこのコンピュータにログオンしています。Windows をシャットダウンするとその人のデータが失われる可能性があります。」とか「現在このコンピュータに別のユーザーがログオンしています。続行すると、このコンピュータからそのユーザーの接続を切らなければなりません。続行しますか?」というような感じのメッセージが表示されます。

で、誰が接続しているんですかね?って思って調べるとき。

昔はリモートデスクトップサービスマネージャが使えた

Windows Server 2008の世代のOSには「リモートデスクトップサービス」という項目が管理ツール内に存在していて、その中の「リモートデスクトップサービスマネージャー」というのが存在していまして、

f:id:treedown:20171029140948p:plain

これを起動すると、いまログイン中のユーザが一覧で表示できました。

f:id:treedown:20171029141004p:plain
バージョンが上がってからというもの、これがなくなってしまい、パッと誰がログイン中かを見ることができなくなっていました。

さて、どうしようか、というところで見つけたのが、コマンドです。

コマンドライン

結論から言うと、コマンドでquery sessionとquery userを利用すると今接続されているデスクトップセッションを確認できます。

参考URL:

https://technet.microsoft.com/ja-jp/library/cc771505(v=ws.11).aspx

「query session」コマンドでコマンドプロンプトを起動しているサーバ上のセッションに関する情報が表示されます。

f:id:treedown:20171029141037p:plain
「query user」コマンドでコマンドプロンプトを起動しているサーバ上にログイン中のユーザ情報を表示できます。

f:id:treedown:20171029141048p:plain
「query user」と同じような表示になるのが「quser」コマンド、同様に「query session」と同じ表示がされるのが「qwinsta」コマンド、普通に使う分にはそれぞれは同じ情報になり、ちょっと違いが分かりませんでしたが、どっちかを覚えておくと役に立つようです。

f:id:treedown:20171029141103p:plain

あとは表示されたユーザを利用している人にログオフを依頼するなり、コマンドで「logoff セッション名orセッションID」という具合に指定して強制的にログオフさせてしまうもよし、といったところです。

追記(2020-12-15):

新たに、コマンド以外の方法もあるので、一度まとめてみることにしました。

blog.treedown.net

GUIで確認する方法もあるので、コマンドだけじゃない便利が手に入るかも。