内部コールセンターのスタッフのためのヘルプデスクを運営しています。すべての従業員は作業中にヘッドセットを着用しており、リモートサポートにさらに役立つように、SSHを介してリモートで最小限のMumbleセッションを開始するスクリプトを作成しています。すべてのリモートユーザーはLinux Mint XFCEを使用します。
Ollieの最良の解決策に従って、この問題を解決しました。SSH経由でリモートLinux PCでGUIソフトウェアを起動する方法私は彼の例を使ってDevilspieを起動し(Mumbleを最小限に抑えるように事前設定しました)、Mumble自体を起動するこのコードを書いています。
export DISPLAY=:0
devilspie & echo loading devilspie
mumble
リモート管理プロファイルでログインした状態でこのコードをテストすると、本当に魅力的です。 Devilspieが起動した後、Mumbleが起動し、すぐに最小化されます。しかし、私の問題は、私がサポートしたいエンドユーザーがワークステーションの管理者ではないということです。管理者以外のユーザーとしてログインしているときにリモートコンピュータでSSHを介して同じスクリプトを実行すると、Devilspieで次のエラーが発生します。
No protocol specified
Gdk-WARNING **: devilspie: Fatal IO error 11 (Resource temporarily unavailable) on X server :0.
そしてMumbleは私に次のエラーを与えました:
No protocol specified
mumble: cannot connect to X server :0
この同じスクリプトは管理者プロファイルで完全に実行されるため、エラーが権限に関連している可能性があると仮定します。助ける!管理者以外のユーザーのためにこれらのアプリケーションを起動する方法がわかりません。
答え1
質問を正しく理解した場合:
- ワークステーションがXを実行しており、ユーザー$ USERがログインしています。
- ユーザー $ADMIN は、このコンピューターで X クライアントを起動し、$USER の X サーバーに接続しようとします。
.xsession
Xセッションの開始を制御できる場合は、次のように$ ADMINへのアクセスを許可するように(おそらく$ USER'sで)準備する必要がありますxhost
。
xhost +SI:localuser:$ADMIN
私はXディスプレイを含む組み込みデバイスをデバッグするときにこの技術を時々使用します。
xhost
完全なオプションセットについては、マニュアルページを参照してください。