suセッションを介してX-windowsを渡す

suセッションを介してX-windowsを渡す

Xウィンドウを転送しようとしていますが、セッションに制限されていると思いますか?

私がしたいのは、.x-applicationsを介して別のユーザーとしてx-applicationsを呼び出すことですsudo su -

他のユーザーのパスワードを知っている場合、この問題は簡単に解決されます。

ssh -Y user@host
password:  ********
gedit &

ただし、パスワードなしでユーザーとして実行する場合(例:weblogic):

ssh –Y me@host
xauth list

sudo csh (now root)
xauth add (last line of the xauth list above)
gedit &

しかし、他のユーザーがxディスプレイにアクセスできるようにするのに問題があります。

xauth list
su – weblogic
xauth add (last line of the xauth list above)
gedit (see if gedit launches).

これは失敗しました。

また、sudo経由で他のユーザーに直接移動してみました。

ssh –Y me@host
xauth list
sudo su – weblogic
xauth add (last line of the xauth list above)
gedit (see if gedit launches).

これも失敗しました。

答え1

問題は、su -TERMを除くすべての環境変数が消去され、設定が失われる可能性がありますDISPLAYDISPLAY=localhost:10.0たとえば、geditの前に設定してみてください。

答え2

xauth addコマンド(たとえば、xauth add:15.0)に応答して、次のエラーが表示される場合:xauth:file /root/.Xauthorityは終了しません。ファイルをタップします(/root/.Xauthorityをタッチしてください)。

答え3

私は次の文を使用しています。

su -s /bin/bash -c "xauth add $(xauth -f ~/.Xauthority list|tail -1); cd ~; VirtualBox" vbox

VirtualBoxを実行したいソフトウェアに置き換え、vboxを希望のIDに変更することを忘れないでください:)

関連情報