コマンドラインでGnomeリモートデスクトップを有効にしますか?

コマンドラインでGnomeリモートデスクトップを有効にしますか?

Linux環境を設定するためにいくつかの自動化スクリプトを設定しようとしています。ユーザーが実際にGUIを使用せずにリモートデスクトップ共有を有効にしたいと思います。私の計画は、可能であれば、それを自動化するためにいくつかのファイルを編集できるバッチスクリプトを作成することです。

私はFedora 16とGnomeを使用しています。

私は次の目標を達成したいと思います。 http://docs.fedoraproject.org/en-US/Fedora/13/html/User_Guide/chap-User_Guide-Sharing_your_desktop.html

編集するファイルに関するアドバイスをいただきありがとうございます。

答え1

私が正しく理解したら、gnomeや他の環境をそのままリモートで共有したい場合は、これを達成する最も簡単な方法はx11vncを使用することです。ユーザーがログインしたときと同様に、実際のX11サーバーを共有します。

x11vnc -display :0

または、ログイン後にvncサーバーを実行するには、次のスクリプトを使用して自動化できます。

#!/bin/bash
/usr/bin/x11vnc -nap -wait 50 -noxdamage -passwd PASSWORD -display :0 -forever -o /var/log/x11vnc.log -bg

このスクリプトをgnomeの起動プログラムに配置して、ユーザーがログインしたときに自動的に実行されるようにすることができます。セッションPASSWORD変数はファイルを読むことができるすべての人に明確に表示され、パスワードを知っている人は誰でもvncセッションに接続できるため、このスクリプトは安全ではありません。 (この場合、パスワードはリモート接続の8つの記号語です。尋ねたとき)。より安全な接続が必要な場合は、vnc sshトンネル方法を検索してください。

答え2

私のお気に入りのリモート接続方法はvinoを使用することです。 x11vncに似ていますが、設定は簡単です(通常はGUIを使用します)。 Vinoを有効にすると、gnomeは起動するたびにアクティブセッション(現在ログインしているセッション)のvnc接続を許可するように設定されます。画面に開いているすべてのウィンドウまたはアプリケーションは、VNC接続内で表示できます。

一般的な状況では(たとえば、GUIを介して)以下を実行して設定するだけで十分です。

$ vino-preferences

GUIがない場合は、設定変更を使用する必要がありますgsettings。それはまるで

$ gsettings set org.gnome.Vino enabled true
$ gsettings set org.gnome.Vino view-only true
$ gsettings set org.gnome.Vino authentication-methods "['vnc']"
$ gsettings set org.gnome.Vino prompt-enabled false
$ gsettings set org.gnome.Vino require-encryption true

合理的な値のリモートデスクトップが有効になります。dconf-editorオプションを開いてナビゲートすると、オプションの全リストとその効果の説明が表示されますdesktop.gnome.remote-access

コンピュータに複数のユーザーがいる場合は、各ユーザーにVinoを設定する必要があります。


リモートセッションに接続するには、標準のvncクライアントを使用できます。ただし、ルーターファームウェアのポート5900を接続するコンピューターに転送する必要があります。あるいは、これらのシステムへのSSH接続も許可している場合は、SSHトンネルを介してvncを使用する方が簡単で安全です。ローカルコンピュータから:

ssh -L 5900:localhost:5900 <remote server>

次に、vncクライアントを開き、127.0.0.1:5900に接続し、リモートサーバーのユーザー名とパスワードを使用してログインします。

答え3

次のスクリプトを使用して、リモートSSH接続で新しいUbuntu 16.04インストールを設定できます。

#!/bin/bash
export DISPLAY=:0
read -e -p "VNC Password: " -i "ubuntu" password
dconf write /org/gnome/desktop/remote-access/enabled true
dconf write /org/gnome/desktop/remote-access/prompt-enabled false
dconf write /org/gnome/desktop/remote-access/authentication-methods "['vnc']"
dconf write /org/gnome/desktop/remote-access/require-encryption false
dconf write /org/gnome/desktop/remote-access/vnc-password \"\'$(echo -n $password | base64)\'\"
dconf dump /org/gnome/desktop/remote-access/
sudo service lightdm restart

すべての文字列設定には引用符が重要です(引用符内の一重引用符)。

dconf作成できるようにするにはXWindowsへのアクセスが必要なので、そのexport DISPLAY部分が必要です。この後もVNCに接続するには、実際のUbuntuシステムのデスクトップにログインする必要があると思います。

dumpコマンドは、すべての設定が適用されていることを確認するためのものであり、実際には必要ありません。

答え4

デスクトップにアクセスする必要がある場合は、通常SSH経由でログインし、「x11vnc」を実行してからVNCを使用して接続します。

関連情報