Saya mencoba memulai sesi gnome jarak jauh menggunakan: ssh -X [email protected] gnome-session
Baik klien dan server adalah versi Ubuntu 12.04
Saya mendapatkan yang berikut (dan tidak banyak yang terjadi) ...
GNOME_KEYRING_CONTROL=/tmp/keyring-3aeNAh
GPG_AGENT_INFO=/tmp/keyring-3aeNAh/gpg:0:1
GNOME_KEYRING_PID=3573
GNOME_KEYRING_CONTROL=/tmp/keyring-3aeNAh
GPG_AGENT_INFO=/tmp/keyring-3aeNAh/gpg:0:1
GNOME_KEYRING_CONTROL=/tmp/keyring-3aeNAh
GPG_AGENT_INFO=/tmp/keyring-3aeNAh/gpg:0:1
SSH_AUTH_SOCK=/tmp/keyring-3aeNAh/ssh
GNOME_KEYRING_CONTROL=/tmp/keyring-3aeNAh
GPG_AGENT_INFO=/tmp/keyring-3aeNAh/gpg:0:1
SSH_AUTH_SOCK=/tmp/keyring-3aeNAh/ssh
(gnome-settings-daemon:3572): color-plugin-WARNING **: failed to get contents of /sys/class/dmi/id/board_version: Failed to open file '/sys/class/dmi/id/board_version': No such file or directory
** (gnome-settings-daemon:3572): WARNING **: You can only run one xsettings manager at a time; exiting
** (gnome-settings-daemon:3572): WARNING **: Unable to start xsettings manager: Could not initialize xsettings manager.
compiz (core) - Error: Screen 0 on display "localhost:10.0" already has a window manager; try using the --replace option to replace the current window manager.
Initializing nautilus-gdu extension
Created new window in existing browser session.
** Message: applet now removed from the notification area
** Message: using fallback from indicator to GtkStatusIcon
(gnome-settings-daemon:3572): keyboard-plugin-WARNING **: Failed to set the keyboard layouts: GDBus.Error:org.freedesktop.Accounts.Error.PermissionDenied: Not authorized
** (gnome-settings-daemon:3572): WARNING **: Failed to connect context: Connection refused
(gnome-settings-daemon:3572): clipboard-plugin-WARNING **: Clipboard manager is already running.
(gnome-settings-daemon:3572): color-plugin-WARNING **: failed to create device: GDBus.Error:org.freedesktop.ColorManager.Failed: failed to obtain org.freedesktop.color-manager.create-device auth
(gnome-settings-daemon:3572): color-plugin-WARNING **: GDBus.Error:org.freedesktop.ColorManager.Failed: failed to obtain org.freedesktop.color-manager.create-profile auth
(gnome-settings-daemon:3572): color-plugin-WARNING **: no xrandr-Samsung Electric Company-SAMSUNG device found: Failed to find output xrandr-Samsung Electric Company-SAMSUNG
Shutting down nautilus-gdu extension
** (gnome-settings-daemon:3572): WARNING **: Failed to connect context: Connection refused
Connection failure: Connection refused
pa_context_connect() failed: Connection refused
Jawaban:
Saya berasumsi bahwa apa yang Anda coba lakukan adalah memulai sesi Gnome jarak jauh lengkap yang ditampilkan pada mesin lokal Anda. Ini gagal karena Anda sudah memiliki manajer sesi lokal yang mengendalikan tampilan server X Anda.
Pilihan Anda adalah:
Cukup jalankan aplikasi remote individual menggunakan
ssh -X [email protected] xclock
Dengan asumsi XDMCP diaktifkan pada mesin jarak jauh ...
2a. Gunakan
Xnest -query 192.168.1.107 -geometry 1024x768 :1
untuk memulai sesi login jarak jauh di jendela lokal.2b. Gunakan
Xephyr :1 -screen 1024x768 -query 192.168.1.107
yang merupakan server X yang lebih baik daripadaXnest
Juga dengan asumsi XDMCP pada mesin jarak jauh, konfigurasikan mesin lokal Anda untuk menggunakan pemilih XDMCP alih-alih penyambut standar saat startup.
Mengaktifkan XDMCP hanyalah kasus menempatkan
masuk
/etc/gdm/custom.conf
dan mulai ulanggdm
atau reboot (dengan asumsi Anda menjalankangdm
).Jika Anda hanya ingin menjalankan beberapa aplikasi dari jarak jauh, maka opsi 1 adalah yang paling sederhana dan terus menggunakan lalu lintas terenkripsi SSH, yang tidak dilakukan oleh yang lain (jadi yang terbaik hanya digunakan pada jaringan lokal tepercaya).
Jika Anda perlu sesuatu yang lebih rumit, maka 2b (Xephyr) mungkin lebih baik, tetapi saya biasanya hanya menggunakan
ssh -X ... &
beberapa aplikasi jarak jauh untuk mencukupi.Jika Anda melakukan semuanya dari jarak jauh, yaitu mesin lokal hanya server tampilan dan tidak melakukan apa-apa sendiri, maka Anda perlu melihat ke dalam menggunakan opsi 3, memulai pemilih XDMCP bukan login standar.
PS: Seperti tercantum dalam komentar, baik
Xnest
danXephyr
aplikasi yang menangani protokol X server dan menempatkan seluruh sesi ke jendela.Xnest
menggunakan fungsi yang disediakan oleh server X lokal sementaraXephyr
menangani lebih banyak protokol server itu sendiri sehingga lebih kuat. Mereka mungkin tidak diinstal secara default karena rata-rata pengguna tidak akan menggunakannya.PPS: Setelah sedikit berpikir, sudah jelas bagaimana cara mengenkripsi
Xephyr
atauXnest
sesi ...sumber
ssh -Y
dari terminal, kemudian jalankan apa yang saya butuhkan dari sana.Jika Anda pernah ingin belajar menggunakan ssh standar dari terminal, saya pikir saya akan memberi Anda ikhtisar cepat, karena Anda mengalami kesulitan menggunakan kunci ssh, tampaknya. Keuntungannya adalah lebih universal, dan sangat fleksibel.
Untuk menggunakan kunci ssh, yang lebih aman, kadang-kadang diperlukan, dan lebih nyaman karena Anda hanya perlu memasukkan kunci sekali, Anda perlu melakukan ini sekali untuk server ssh jarak jauh:
menghasilkan kunci (dapat menggunakan dsa bukan rsa, jika diperlukan)
mentransfer kunci ke host jarak jauh
jika bukan port standar 22, gunakan ini: Perhatikan kutipan di sekitar argumen
Jika menggunakan dsa, ada perintah yang sedikit berbeda, menambahkan
-i <homedirectory>/.ssh/id_dsa
Di suatu tempat setelah ini, Anda harus memasukkan kata sandi, yang terpisah dari kata sandi masuk normal Anda. Sudah lama, dan saya lupa urutan yang tepat, tetapi harus jelas. Kemudian, saat pertama kali terhubung, Anda akan diminta kata sandi ini, sekali. Saya menggunakan nama login yang sama, jadi saya tidak perlu memasukkan nama pengguna (diasumsikan sama dengan nama pengguna jarak jauh). Juga, untuk server di lan Anda, Anda dapat memasukkan ".local" bukan alamat IP, saya percaya (berfungsi untuk saya).
Anda bahkan dapat memasang sistem file jarak jauh menggunakan sshfs (dengan asumsi sshfs diinstal); gantikan jalur direktori untuk direktori mount-lokal:
sshfs remote-host: local-mount-directory
(lepaskan penggunaan
fusermount -u local-mount-directory
)Saya pikir itu akan menggunakan direktori home Anda secara default, jika Anda meninggalkan direktori local-mount-. `
Menyalin file dapat dilakukan dengan scp.
sumber