トップ 一覧 置換 検索 ヘルプ RSS ログイン

Xの画面を他のXサーバーに表示するの変更点

  • 追加された行はこのように表示されます。
  • 削除された行はこのように表示されます。
!!!gnome の注意点
 gdmsetup
この画面のセキュリティタブの
 TCP接続を禁止する
にチェックが入っているとX転送が出来なくなる。
ただし、SSHのX転送とは'''無関係'''。

!!ファイルマネージャ
 nautilus --no-desktop --browser
でファイルブラウザが起動できる。

{{anchor im}}
!!!Input Method(IM)について
!!scim の場合
https://wiki.archlinux.org/index.php/Smart_Common_Input_Method_platform_%28%E6%97%A5%E6%9C%AC%E8%AA%9E%29
リモートのアプリケーションに対して、ローカルのIMを使用する場合
 export GTK_IM_MODULE="scim"
だけでも大丈夫だけど、
 export XMODIFIERS=@im=SCIM
 export GTK_IM_MODULE="scim"
 export QT_IM_MODULE="scim"
または
 export XMODIFIERS=@im=SCIM
 export GTK_IM_MODULE="scim-bridge"
 export QT_IM_MODULE="scim-bridge"

==export QT_IM_MODULE=scim==
==export XMODIFIERS=@im=SCIM==
==export GTK_IM_MODULE=scim-bridge==
などのように環境変数の設定が必要。

 X11 connection rejected because of wrong authentication.
って出ることがある。特に問題無くscimが使えているのだけど気になる・・・。

!!ibus の場合
  ibus-daemon -d -x
で デーモンを起動して、環境変数を以下のように設定する。
 export GTK_IM_MODULE=ibus
 export XMODIFIERS=@im=ibus
 export QT_IM_MODULE=ibus

xming-terminal.sh
 #! /bin/bash
 ibus-daemon -d -x
 export GTK_IM_MODULE=ibus
 export XMODIFIERS=@im=ibus
 export QT_IM_MODULE=ibus
 gnome-terminal
のようなシェルを作成しておくと良いかも。
ibus の設定画面は
 ibus-setup
で表示できる。

また、
 WARNING **: Couldn't connect to accessibility bus: Failed to connect to socket /tmp/dbus-xxxx
のようなワーニングが出る場合は
 export NO_AT_BRIDGE=1
を定義すると消える。

!imの優先順位変更1
環境によっては、日本語入力のIMが優先になっていないために日本語入力ができない場合がある。
 ibus-setup
でショートカットを指定するか、日本語入力以外のIMを消す

!imの優先順位変更2
設定を書き換えることでIMの優先順位を変更できる。
 dconf dump /desktop/ibus/general/
で
 preload-engines
を確認。優先順位順をdconf write で書き込む
 例1 dconf write /desktop/ibus/general/engines-order "['kkc']"
      dconf write /desktop/ibus/general/preload-engines "['kkc']"
 例2 dconf write /desktop/ibus/general/engines-order "['mozc-jp', 'xkb:jp::jpn', 'xkb:us::eng']"
      dconf write /desktop/ibus/general/preload-engines "['mozc-jp', 'xkb:jp::jpn', 'xkb:us::eng']"


!imの優先順位変更3
dconfが使えない場合、gconfしか使えない場合は
 gconftool-2 --set /desktop/ibus/general/preload_engines --type list --list-type string "[mozc-jp]"
で変更可能。


!SSHで使う場合の例
.bashrcの最後に以下を加える
  if [[ "${SSH_CONNECTION}" ]] ; then
     export GTK_IM_MODULE=ibus
     export XMODIFIERS=@im=ibus
     export QT_IM_MODULE=ibus
     export NO_AT_BRIDGE=1
     ibus-daemon -d -x
  fi

!!!SSHの経路を使わない(xauthを使う)
!1.[画面取得側]設定
 xauth list
でクッキー確認。
もし、設定されていなければ
 xauth generate isplayname protocolname オプション
で作成する。例えば
 xauth generate localhost:0
 または
 xauto generate xxx.xxx.xxx.xxx:0 . trusted
など。ディスプレイ名は 基本的にDISPLAY 環境変数と同じでOK。

!2.[画面送信側]画面の表示をXサーバーに設定
1.で確認したクッキを追加
 xauth add 画面取得側:0 MIT-MAGIC-COOKIE-1  00112233445566778899aabbccddeeff
 setenv DISPLAY 画面取得側:0
その後
 xeyes
などで画面が飛ぶことを確認。

!!!SSHの経路を使わない(xhostを使う)
!1.[画面取得側]設定
Fedora5 以降は初期設定ではXの画面取得をしない設定になっているので
/etc/gdm/custom.conf 
に設定が必要。 gdmsetup でも可。
 [securiry]
  AllowRemoteRoot=true

!2.[画面取得側]Xサーバーへのアクセス許可
 xhost 画面送信側IP

!3.[画面送信側]画面の表示をXサーバーに設定
 setenv DISPLAY 画面取得側IP:0.0
その後
 xeyes
などで画面が飛ぶことを確認。

!!!SSHの経路を使う
!1.[画面送信側]
※'''xauth がインストールされていること。'''
/etc/ssh/sshd_config
 XForwarding yes
となっていることを確認

!2.[画面取得側]
/etc/ssh/ssh_config か ~/.ssh/config 
 ForwardX11 yes
となっていることを確認
または、
 ssh -X オプションを使う

!ディスプレイ番号を 0.0 以外にする場合
teraterm や LinuxなどのSSHを使う場合にディスプレイ番号を変更したい場合は
 環境変数 DISPLAY
を設定すれば、そのディスプレイが適用される。
例えば、Linuxの場合は
 export DISPLAY=localhost:3.0
 ssh  hoge -X

teraterm の場合も
 set DISPLAY=localhost:3.0
 ttermpro.exe


!3.[画面取得側]画面送信側へSSHでログイン
SSHでログイン前に、 DISPLAY 環境変数を確認。
 DISPLAY=localhost:0.0
とかになっているかを確認する。
ログイン後、環境変数のDISPLAY を確認(10.0以上くらいになっているはず)。
 xeyes
などで画面が飛ぶことを確認。

!!!sudo で Xの画面を表示する
http://d.hatena.ne.jp/suzumura_ss/20090714
 sudo xeyes
などとすると画面が表示されない。sudo でXの画面を表示するには
  sudo XAUTHORITY=~/.Xauthority コマンド
とする。


{{category2 OS,Linux}}