Ubuntuサーバーを持つAmazon EC2インスタンスの永続デスクトップ

Ubuntuサーバーを持つAmazon EC2インスタンスの永続デスクトップ

Amazonのubuntu 14.04サーバーインスタンスでプログラムを実行しようとしている場合は、GUIが必要です。 lunbuntuをインストールしてx2goを使用してデスクトップを表示できますが、インターネット接続に問題が発生するとすぐにx2goが切断され、デスクトップ環境が(私のプログラムで)終了するようです。

接続が切断されてもデスクトップを実行できるように、インスタンスで常にデスクトップを実行し、x2goを使用して(接続時に作成するのではなく)アクセスする方法はありますか? EC2 で実行する重要な点は、複雑な接続ではなく安定性を向上させることです。

DISPLAYファイルとxauthファイルを設定するためにさまざまなソリューションを何時間も読み込もうとした後も正しく機能しないようです。まだできますか?

ベストアンサー1

確かに。 2つのオプションがあります。

  1. 時々デスクトップにアクセスする必要がある場合は、以下を使用してくださいvncserver

    sudo apt-get install tightvncserver
    

    注:他の実装もありますが、この方法は正しく機能します。インストール後、次を実行します。

    vncserver :1
    

    初めて実行すると、デスクトップにアクセスするためのパスワードの入力を求められます。 1つを選択してください。これで、VNCクライアントを使用してアクセスできます。ノート:VNCプロトコルは暗号化されません。一種の暗号化(SSHポート転送、VPNなど)を介してトンネリングし、ファイアウォールを介してそのポート(この場合はポート5901)を分離する必要があります。

  2. GUIにアクセスする必要がなく実行する必要がある場合は、セッションxvfbで次のものを使用できます。screen

    sudo apt-get install screen xvfb
    screen xvfb-run your_application
    

    これにより、xvfbとアプリケーションが起動するスクリーンセッションが開始されます。screen作業を開始し、後で接続を切断して再接続できるプログラムです。切断はctrl- を介して行われますadつまり、制御を維持し、両方とも解いて、d)を押すと経由で再接続されますscreen -r

    xvfb-runXvfb「X for Virtual Framebuffer」の略語である起動スクリプトです。 X11プロトコルを使用しますが、アプリケーションがXサーバーに送信するすべての操作は画面に表示されません。しかし、まだXサーバーです。これを使用するには、いくつかの環境変数を設定し、いくつかのXauthority魔法を実行する必要があります。xvfb-run存在するため、これを手動で実行する必要はありません。最後に、すべてが設定されたら、xvfb-runアプリケーションを起動し、それを起動Xvfbしたグラフィックスと端末(この場合はスクリーンセッション)に接続して標準出力を取得します。アプリケーションがXサーバーから切断されるたびに、アプリケーションXvfb(拡張xvfb-run)が終了します。

Xvfbコンテンツの変更は許可されていないため、リソースが少なくてすみ、速度が速くなる可能性があります。ただし、GUIにアクセスする必要がある場合、これはオプションではありません。

おすすめ記事