停止できないアプリケーションでキーボードとマウスを解放するには? [コピー]

停止できないアプリケーションでキーボードとマウスを解放するには? [コピー]

キーボードとマウスを通常の作業モード(QEMUなど)として使用するXアプリケーションがあります。通常、リモート端末でアプリケーションをシャットダウンしますkill(1)が、アプリケーションがディスクスリープモードにある場合は、実際にシャットダウンできません。ユーティリティを使用すると、Xサーバーへのアプリケーションの接続を切断できますが、今回はマウスがキャッチされて実行されないため、xkillそうすることはできません。xkill

したがって、このクライアントを犠牲にすることを望んでいるが、オペレーティングシステムを介してクライアントをシャットダウンできない場合、Xクライアントがプリエンプションしないようにキーボードとマウスをどのようにオフにできますか?

ベストアンサー1

最もよく知られている使用モードは「クリックして終了」ですが、Xサーバーとの接続を切断したいクライアントのウィンドウIDを提供するxkillオプションがあります。-idその後、リモート端末/ VTからXセッションにアクセスできる場合は、xprop別の方法でIDを取得してくださいxkill

現在アクティブなウィンドウがキーとマウスをプリエンプトするXクライアントに属しているとします。次のコマンドは、Xサーバーへのクライアント接続を終了してキーボードとマウスを解放します。

winid=$(xprop -root _NET_ACTIVE_WINDOW | cut -d# -f2)
xkill -id $winid

これは、QEMUがディスクスリープモードにある間にグラブを取り外そうとしたときに実際に効果がありました。

おすすめ記事