web-dev-qa-db-ja.com

最初にマシンにログインせずにLinuxサーバー上のVNCにアクセスするにはどうすればよいですか?

重複の可能性:
起動時にVNCサーバーを自動的に起動します

私は自宅にLinuxサーバーを持っていますが、デフォルトでは誰もそのボックスにログインしていません。

VNCを使用してリモートデスクトップ接続を確立したいのですが、最初に物理的にログインしない限り、これは失敗します。

VNCビューアーが資格情報を要求することすらなく、「接続が拒否されました」というエラーメッセージが表示されるだけであるのは不思議です。

これを行うための最良の方法は何ですか?サーバーでUbuntu10.04を実行しています。

5
Wabbitseason

VncはWindowsリモートデスクトップと同じではないと思います。画面共有用なので、ログインしていないとvncサービスは実行されません。

解決策は、ホームサーバーを自動的にログインするように設定するか、リモートコンピューターでxserverを実行し、ssh/PuTTYを使用して接続することです。以前はcygwinを使用していて、常にssh -Xでubuntuボックスに接続していましたが、試してみたところ、 xming で感動しました。フルインストール後、xlaunchを実行し、フルスクリーンを実行するように設定し、PuTTYとリモート接続するgnome-sessionを実行します。これはリモートデスクトップと同じで、私のLANではvncよりも高速に見えます。

2
Adam Butler

VNCとリモートデスクトップは異なる原理で動作します。リモートデスクトップの基本的な操作モデルは、リモートマシンの実際の物理ディスプレイにアクセスできるようにすることです。ローカルユーザーの操作に関係なく、マシンへのリモート接続は提供されません。 VNCの基本的な運用モデルは、リモートで接続できる仮想ディスプレイを提供することです。 VNCは、ローカルユーザーが行っていることとは独立して動作します。

Linuxマシンでグラフィカルアプリケーションを実行し、それらをローカルマシンに表示させたい場合、VNCは最初に頭に浮かぶツールではありません。これを行うUNIXの方法は、ssh -Xを使用してリモートマシンに接続することです。次に、リモートXアプリケーションがローカルXディスプレイに表示されます。これには、ローカルにXサーバーが必要です。 Windowsの場合、これにはさらに別のプログラムをインストールしてセットアップする必要があります。

Linuxマシンでグラフィカルアプリケーションを起動し、世界中のどこからでも接続できるようにする場合は、VNCサーバーを実行します(vncserverコマンド)。これにより、どこからでも接続できる仮想ディスプレイが作成されます(ファイアウォールを除く)。 VNCクライアントを実行して、その仮想ディスプレイに何が表示されているかを確認します。

Linuxマシンのモニターに表示されているXサーバーに直接アクセスしたい場合は、x2vncを確認してください。