Bagaimana cara saya bekerja dengan alat GUI melalui server jarak jauh?

26

Saya memiliki server Ubuntu yang berjalan di EC2 (yang tidak saya instal sendiri, baru saja mengambil AMI). Sejauh ini saya menggunakan puttyuntuk bekerja dengannya, tetapi saya bertanya-tanya bagaimana cara mengatasinya dengan alat GUI (Saya tidak terbiasa dengan alat-alat Linux UI, tetapi saya ingin belajar). Konyol saya, saya kehilangan kenyamanan Windows Explorer.

Saat ini saya hanya memiliki Windows di rumah. Bagaimana cara mengatur alat GUI untuk bekerja dengan server jauh? Haruskah saya melakukan ini, atau saya harus tetap berpegang pada baris perintah? Apakah jawaban berubah jika saya memiliki mesin linux lokal untuk bermain?

ripper234
sumber
Jika penerusan X11 cukup cepat (ada kasus di mana tidak) itu harus baik-baik saja. CLI selalu lebih kuat sehingga berguna untuk tidak mengabaikannya tetapi ini tidak berarti bahwa GUI tidak pernah berguna :)
sakisk
Tapi tugas apa yang ingin Anda penuhi di server? Alat apa yang ingin Anda gunakan? Ini informasi penting untuk jawaban. Katakanlah, Anda menyebutkan sesuatu yang disebut "Windows Explorer"; tetapi mungkin tidak ada "Windows Explorer" di Ubuntu, jadi solusinya menyarankan menjalankan beberapa program X dari jarak jauh tidak cocok.
imz - Ivan Zakharyaschev
Tidak ada Explorer yang setara untuk Ubuntu? Serius?
ripper234
1
@imz - saat ini saya tertarik dengan masalah umum. Saya tidak berpengalaman dengan aplikasi GUI linux sama sekali, jadi saya tidak tahu apa yang saya inginkan sekarang ... penggunaan pertama yang muncul dalam pikiran adalah menavigasi folder dalam Explorer seperti mode, dan mungkin mengedit.
ripper234
1
@ ripper234: Untuk menavigasi direktori, lihat mc.
Faheem Mitha

Jawaban:

31

Anda dapat menggunakan penerusan X11 melalui SSH; pastikan opsinya

X11Forwarding yes

diaktifkan di /etc/ssh/sshd_configpada server jarak jauh, dan baik mengaktifkan penerusan X11 dengan tangan dengan

ssh -X remoteserver

atau tambahkan pepatah garis

ForwardX11 yes

ke entri host yang relevan di ~/.ssh/config

Tentu saja, itu memerlukan tampilan X yang berfungsi di ujung lokal, jadi jika Anda menggunakan Windows, Anda harus menginstal sesuatu seperti XMing , lalu mengatur penerusan X11 di Putty seperti yang ditunjukkan dalam referensi ini:

ETA: Membaca lagi dan melihat klarifikasi Anda di komentar, FTP mungkin lebih sesuai dengan kebutuhan Anda, karena akan membuat Anda 'me-mount' folder SFTP seolah-olah itu drive jaringan biasa. Lihat di sini , di sini , di sini (untuk Windows XP / 7 / Vista) , atau di sini (untuk Windows 8) .

Shadur
sumber
6

Shadur membahas cara mengaktifkan X. Perhatikan bahwa /etc/ssh/sshd_configdi ujung server, dan ~/.ssh/configdi ujung klien, jadi kita secara umum berbicara tentang dua mesin yang berbeda. Penerusan X akan menampilkan aplikasi jarak jauh Anda pada tampilan X lokal. Jadi kedua konfigurasi harus memberi tahu masing-masing remote dan lokal untuk memungkinkan operasi ini terjadi.

Seperti apakah Anda harus menggunakan X, itu tergantung. Anda perlu mempertimbangkan (setidaknya) faktor-faktor berikut.

  • Bandwidth macam apa yang Anda miliki? Berapa kecepatannya? Apakah ini meteran? Apakah ada topi? Jika Anda memiliki koneksi yang sangat cepat ke internet dan tidak ada batasan, X itu lebih bermanfaat, jika tidak maka bisa sangat lambat. Ingatlah bahwa secara umum X adalah babi jaringan; ini bukan bandwidth yang dioptimalkan (atau apa pun frasa yang tepat).

  • Alat apa yang Anda rencanakan untuk digunakan lebih dari X? Apakah ada pengganti / setara non-gui? Jika Anda memberikan contoh jenis alat yang ingin Anda gunakan, orang dapat menyarankan alternatif jika tersedia. Perlu diketahui juga bahwa beberapa alat terkenal datang dalam bentuk gui dan commandline / console. Misalnya. emacs, aptitude, reportbug.

Secara umum rekomendasi saya adalah menggunakan baris perintah (apt, wget, rsync) atau mengutuk aplikasi (seperti aptitude atau mc) jika tersedia dan lakukan apa yang Anda butuhkan. Aplikasi semacam itu tidak selalu lebih buruk daripada aplikasi X; beberapa di antaranya adalah aplikasi yang bagus. Misalnya. Perangkat lunak John Davis, misalnya jed dan slrn, keduanya aplikasi konsol, menunjukkan estetika yang khas, dan merupakan karya seni. BTW, menjalankan server X pada klien Windows untuk terhubung ke server Linux adalah sebuah opsi, meskipun tidak terlalu bagus.

Jika Anda memiliki server linux lokal, maka masalah bandwidth hilang, dan X adalah pilihan yang jauh lebih layak.

Faheem Mitha
sumber
Saya setuju bahwa kecuali Anda mengerjakan tautan yang cukup cepat (latensi rendah sedikit lebih penting daripada bandwidth), umumnya merupakan ide yang lebih baik untuk menggunakan alat baris perintah jika tersedia.
Shadur
1
@ Safur - latensi saya bukan acara hebat di baris perintah, mungkin saya seharusnya tidak mencoba alat UI karena mungkin akan terlalu lambat.
ripper234
5

Saya telah menemukan freenxdan nxclientmenjadi solusi remote desktop berkinerja sangat tinggi, jauh lebih baik daripada vncatau X11. Saya akan mencobanya.

Steve
sumber
3

Anda harus mempertimbangkan tetap berpegang pada baris perintah, karena a) kebanyakan server bahkan tidak memiliki GUI yang diinstal, dan b) semua GUI agak lambat untuk digunakan melalui jaringan.

Yang mengatakan, saya sarankan melihat-lihat VNC. Ada klien asli untuk Windows dan server untuk Linux, jadi Anda tidak perlu mengatur X11 pada kotak Windows Anda.

kuhkatz
sumber
1

Jika Anda menggunakan Emacs, Anda dapat menjalankan Emacs yang diinstal secara lokal di Windows Anda, dan melakukan pengeditan file, manajemen file & direktori ( dired ), kontrol versi, kompilasi, dan juga beberapa pekerjaan acak lainnya di shell ( M-xshellatau M-xeshell), dan mungkin beberapa hal lagi melalui TRAMP di Emacs lokal Anda. (Beberapa video demo yang mudah ditemukan yang mungkin dapat membuat seseorang tidak begitu takut dengan Emacs yang tidak diketahui, dan TRAMP, dll .: 1 , 2. )

Itu gambaran bahwa program X jarak jauh mungkin bukan solusi yang tepat untuk Anda. Berbeda dengan cara klien X jarak jauh, cara TRAMP tidak melibatkan lalu lintas "grafis" kelas berat melalui koneksi jarak jauh, ia menggunakan koneksi ssh hanya untuk mengirim daftar direktori, file, dan memerintahkan output bolak-balik.

Katakanlah, jika Anda ingin bekerja dengan "Windows Explorer", maka masih tidak akan ada "Windows Explorer" di server Ubuntu, jadi Anda tidak dapat menjalankannya dari jarak jauh.

Tetapi jika "Windows Explorer" memiliki sesuatu seperti TRAMP sebagai fitur (untuk akses jarak jauh melalui SSH), Anda dapat terus menggunakan "Windows Explorer" lokal Anda, jika hanya itu yang Anda butuhkan.

imz - Ivan Zakharyaschev
sumber
Dia bertanya tentang alat GUI, bukan editor GUI untuk file konfigurasi. [ xkcd.com/378/] selain itu, Emacs bukanlah jawaban untuk semuanya, dan dalam hal ini Anda menemukan memegang palu hanya mencari cara untuk menggambarkan masalah sebagai paku.
Shadur
@ Safur: (Saya tertawa.) Dia belum menentukan alat apa yang dia butuhkan. Editor GUI juga merupakan alat GUI, bukan? Atau apakah Anda memiliki pemahaman khusus tentang apa "alat" itu?
imz - Ivan Zakharyaschev
@ Shadur BTW, inti dari jawaban saya adalah untuk menyarankan pendekatan potensial untuk solusi yang akan sesuai dengan tuntutannya setepat mungkin, tanpa kita tahu persis tugas apa yang ingin dia selesaikan. Logika saya adalah: 1) dia suka "Windows Explorer" 2) kita tidak tahu fitur "Windows Explorer" mana yang dia suka karena dia belum menentukan ini. ==> Jadi, jika "Windows Explorer" memiliki sesuatu seperti TRAMP, itu akan menjadi semacam solusi dan jawaban yang ideal: fitur yang dia suka ada di sana, dan itu akan bekerja dengan server jarak jauhnya.
imz - Ivan Zakharyaschev
Apakah jawaban saya tidak relevan untuk pertanyaan ini? .. :) Tidak, saya kira tidak, karena ripper234 sedang mencari ide - (s) ia menulis "Haruskah saya melakukan ini, atau haruskah saya tetap berpegang pada baris perintah?" Dan itu ide baru: cari solusi seperti TRAMP juga. Itu mirip dengan pengalaman pribadi saya: ketika saya bertanya-tanya tentang cara yang nyaman untuk bekerja pada server jarak jauh, seorang teman saya mengatakan IIRC bahwa dia senang menggunakan TRAMP di Emacs; dan saya mulai mempertimbangkan ini sebagai opsi juga.
imz - Ivan Zakharyaschev
1
Dan saya kadang-kadang menggunakan yang setara di gedit melalui ssh / sftp backends untuk gnome-vfs Sekali lagi, "cara untuk menggunakan editor GUI untuk mengubah file konfigurasi pada sistem jarak jauh" adalah pertanyaan yang berbeda dari "menggunakan antarmuka administrasi GUI dari jarak jauh"
Shadur
1

Tidak seperti RDP, X kehilangan sesi jika server atau ssh tunnel terputus. Anda dapat menggunakan XVNC, yang menyajikan server X ke program klien dan menghubungkan ke klien VNC. Ini membuat sesi X tetap hidup dan memungkinkan Anda untuk terhubung dan memutuskan sesi VNC.

Saya sudah menggunakannya dengan sukses melalui koneksi DSL Jetstart 128k / 128k (Ya, Telecom NZ benar-benar dulu menawarkan layanan DSL 128k / 128k!). Itu cukup reponsive, hanya melambat ketika harus mengunduh bitmap besar ke klien VNC.

Anda dapat melihat bagaimana melakukan tunnel VNC pada ssh di artikel ini.

ConcernedOfTunbridgeWells
sumber
0

Saya menggunakan nautilus --no-desktoppada server Ubuntu 11,04 untuk fungsionalitas tipe MS Windows Explorer.

bschafer
sumber
Bagaimana ini membantu dengan akses jarak jauh?
reinierpost
0

Saya memang menemukan gvfs-treeperintah, atau dalam beberapa rasa Linux tree, untuk membantu dalam melihat representasi CLI dari pohon direktori.

jkm
sumber
2
Selamat datang di U&L! Saya akan memperbaiki format jawaban Anda setelah ini, tetapi saya akan menunjukkannya sementara gvfs-treedan treemungkin perintah yang berguna, bagaimana mereka menjawab poin pertanyaan ini "Bagaimana cara mengatur alat GUI untuk bekerja dengan server jauh? " ?
Jeff Schaller
Posnya memiliki beberapa pertanyaan, ("Saya tidak terbiasa dengan alat-alat Linux UI, tetapi saya ingin belajar" dan "Haruskah saya melakukan ini, atau saya harus tetap berpegang pada baris perintah?").) Saya pikir itu membuatnya sadar akan perintah gvfs-tree mungkin membuatnya lebih nyaman di CLI, yang akan membuat gui kurang diperlukan.
jkm