
VNCサーバー(ミントのvnc4server)を設定していて、ウィンドウマネージャを使用するデフォルトのxstartupファイルがあります~/.vnc.
。twm
VNCサーバーに接続すると認証に成功し、端末も表示されますが、プロンプトは表示されません。マウスを使用して端末で新しいタブを開くことができますが、端末アプリケーションは押されたキーに対して機能しません。任意のキーをいくつか押してパケットをキャプチャすると、そのキーはVNCサーバーボックスに「クライアントキーイベント」として受信されます。 VNCクライアントはキーボードとマウスのイベントを渡すことができ、フレームバッファの更新を受け取ることができますが、何らかの理由でサーバー上で実行されているアプリケーションがキーボードイベントを処理できないようです。
x 起動ファイル:
~/.vnc$ ls
passwd rag-tos-laptop:1.log rag-tos-laptop:1.pid xstartup* xstartup.bak*
~/.vnc$ cat xstartup
#!/bin/sh
# Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
#x-window-manager &
twm &
追加の調査でgeditを実行すると機能することがわかりました(文章入力)。これは、すべての端末(+シェル)で動作する問題にすぎないようです。 xstartupでgnome-terminalを起動しても、VNCビューアからシェルを取得できません。追加の診断情報:
~/.vnc$ ps --ppid 3334 -o pid,ppid,stat,cmd
PID PPID STAT CMD
3342 3334 S gnome-pty-helper
3343 3334 Ss+ bash
~/.vnc$ ls -l /proc/3334/fd
total 0
lr-x------ 1 rag rag 64 Jan 5 23:25 0 -> /dev/null
l-wx------ 1 rag rag 64 Jan 5 23:25 1 -> /home/rag/.vnc/rag-tos-laptop:1.log
lrwx------ 1 rag rag 64 Jan 5 23:25 10 -> socket:[17343]
lrwx------ 1 rag rag 64 Jan 5 23:25 11 -> anon_inode:[eventfd]
lrwx------ 1 rag rag 64 Jan 5 23:25 12 -> /dev/ptmx
lrwx------ 1 rag rag 64 Jan 5 23:25 13 -> /dev/pts/4
lrwx------ 1 rag rag 64 Jan 5 23:25 14 -> socket:[19273]
lrwx------ 1 rag rag 64 Jan 5 23:25 15 -> anon_inode:[eventfd]
l-wx------ 1 rag rag 64 Jan 5 23:24 2 -> /home/rag/.vnc/rag-tos-laptop:1.log
lrwx------ 1 rag rag 64 Jan 5 23:25 3 -> socket:[19263]
lrwx------ 1 rag rag 64 Jan 5 23:25 4 -> socket:[19267]
lrwx------ 1 rag rag 64 Jan 5 23:25 5 -> anon_inode:[eventfd]
lrwx------ 1 rag rag 64 Jan 5 23:25 6 -> anon_inode:[eventfd]
lrwx------ 1 rag rag 64 Jan 5 23:25 7 -> socket:[20165]
lrwx------ 1 rag rag 64 Jan 5 23:25 8 -> socket:[17342]
lrwx------ 1 rag rag 64 Jan 5 23:25 9 -> anon_inode:[eventfd]
~/.vnc$ ls -l /proc/3343/fd
total 0
lrwx------ 1 rag rag 64 Jan 5 23:23 0 -> /dev/pts/4
lrwx------ 1 rag rag 64 Jan 5 23:23 1 -> /dev/pts/4
lrwx------ 1 rag rag 64 Jan 5 23:23 2 -> /dev/pts/4
lrwx------ 1 rag rag 64 Jan 5 23:25 255 -> /dev/pts/4
答え1
私も同じ問題があります。薄くて軽いのでTWMを好む。 Linux Mintボックスは私のホームサーバーで、GUIツールはほとんど必要ありません。私がやっていることはほとんどすべてのコマンドラインです。多数のスクリプトが実行されます。
私がしたことは次のとおりです。
- sudo apt-get インストール xterm
- xtermを使用するには、~/.vnc/xstartupを編集してください。
#!/bin/sh
exec /etc/X11/xinit/xinitrc [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic & #!/bin/sh
/usr/bin/xterm -geometry 80x24+10+10 -ls -title "xterm" &
/usr/bin/xterm -geometry 80x24+200+200 -ls -T "xterm" &
twm &
だから私はmate-terminal、gnome-terminal、x-terminal-emulatorではなくxtermを使います。
なぜ他のものがうまくいかないのかわかりませんが、xtermに満足しています。 1つのウィンドウで複数のセッション/タブを実行するようには思えませんが、xtermと入力して独自のウィンドウで新しいセッションを開くと同じ結果が得られます。
ShiftCtrl-CとShift-V を使用して切り取りと貼り付けもCtrl機能しませんが、マウスでテキストを強調表示してからターゲットウィンドウに移動し、マウスの中央ボタン(または左右のボタンを同時に押して貼り付け)で同じ操作を実行できます。 )。これが私のラップトップのvncviewerウィンドウから同じノートブックのFirefoxブラウザウィンドウに上記のxstartupファイルを貼り付ける方法です。サーバーのxterm間でも同じアプローチが適用されます。
注:この-title
パラメータは無視されます。理由がわからない。