gnome-terminal は、vnc セッションで「env -i」を使用しても、一部の環境を継承します。

gnome-terminal は、vnc セッションで「env -i」を使用しても、一部の環境を継承します。

どういうわけかgnome-terminalは、シェル初期化ファイルに設定されていないいくつかの環境(システム全体/ユーザーレベル)を取得できます。

env -i DISPLAY=":1.0" /usr/bin/gnome-terminal

$> env他の多くの変数が提供されていますが、そのうちxtermは次の変数のみを提供します。

env -i DISPLAY=":1.0" /usr/bin/xterm
$> env
DISPLAY=:1.0
TERM=xterm
WINDOWID=37748770
XTERM_VERSION=X.Org 6.8.99.903(253)
XTERM_LOCALE=C
LOGNAME=bkatkam
XTERM_SHELL=/bin/csh
HOSTTYPE=x86_64-linux
VENDOR=unknown
OSTYPE=linux
MACHTYPE=x86_64
SHLVL=1
PWD=/home/bkatkam
USER=bkatkam
GROUP=inv
HOST=inv2

ただし、これは新しいVNCセッションでクリアされます。私の考えでは、vncセッションがどこかに環境を保存しているようです。どこに保存されているのかわかりません。

私も経験しましたが、csh: 端末が不明な場所から環境変数を継承します。しかし、この問題の根本的な原因は見つかりませんでした。

編集: env -i開いているすべてのGNOME端末を閉じた後、コマンドは正しい環境を提供します。しかし、正常に端末を開くと(何もないenv -i)、無関係な環境が継承されます。

ベストアンサー1

gnome-terminalデバッグ後、親プロセスからXvnc環境を継承することがわかりました。

Xvnc次に、vncserverVNCが生成された端末から環境を取得します。したがって、VNCの環境がきれいであることを確認してください。命令で作った

env -i PATH="/usr/bin:/bin" HOME="/home/bkatkam" vncserver -geometry 1920x1080

おすすめ記事