2011-12-05 3 views
1

ログイン時にサーバの.bashrcから起動されるアプリケーションを継承しました。アプリケーションは2つのgnome-terminalを起動します。私がgnomeデスクトップでログインしていれば、うまくいきます。デスクトップ上に2つの端末が開きます。Linux - 端末を別のディスプレイで起動するようにする

時々私はアプリケーションを終了し、それを再起動する必要があります。デスクトップ上の端末から手動で起動すると素晴らしい(3つの端末が開いている)。

しかし、私がアプリケーションがインストールされているマシンにtelnetすると、.bashrcが実行されるので、私はあらゆる種類の "can not open display"エラーを受け取ります。

もちろん、私はguiインターフェイスからはログインしていませんが、デスクトップはISで、私のサーバで稼働しており、同じIDでログインしています!なぜターミナルをそこに置かないのですか?

bashでは、「このアプリケーションを起動し、その出力を1)現在の表示にするか、2)現在サーバー上に表示していますか? (私は、env varディスプレイを見て見つけたと仮定します)

Ubuntu 10.04 64ビット。私は上記のデスクトップにアクセスできるようにvncserverを起動するためにサーバにtelnetします。

おかげで、

+0

これはプログラミング上の質問ではないので、トピックにはなりません。それは代わりにhttp://superuser.com/に属しています - FAQを参照してください:http://stackoverflow.com/faq – Polynomial

+0

ありがとう、pgl。答えはスポットライトだった。 –

答えて

2

まさにアプリケーションに依存するが、一般的には、単にDISPLAY環境変数をエクスポートし、アプリケーションが指定したディスプレイ上で開始する必要があります。

例:

export DISPLAY=localhost:0.1 
xterm & 

一部のアプリケーションでも(あるいは)--displayコマンドライン引数を取る - あなたが使用しているアプリケーションで使用可能な特定のオプションにチェックイン。

関連する問題