Perché dovresti usare VNC (o per quello NX) invece di usarlo ssh -X (-Y)
. Ho letto che VNC utilizza meno larghezza di banda, ma ci sono altre differenze / vantaggi con il rispettivo strumento?
Perché dovresti usare VNC (o per quello NX) invece di usarlo ssh -X (-Y)
. Ho letto che VNC utilizza meno larghezza di banda, ma ci sono altre differenze / vantaggi con il rispettivo strumento?
Risposte:
A parte i problemi di larghezza di banda e latenza (che possono variare leggermente), le grandi differenze sono le funzionalità che fornisce.
VNC esporta un'intera sessione, desktop e tutto, mentre ssh eseguirà un singolo programma e mostrerà le sue finestre sulla workstation.
Il server VNC esporta una sessione che sopravvive anche quando si disconnette lo schermo e si può riconnettersi successivamente con tutte le finestre aperte ecc. Questo non è possibile con un tunnel X SSH, poiché quando il server X muore, le finestre scompaiono .
ssh user@host
; e dopo loggato: screen bash
; per disconnettersi, ctrl+a
seguito da ctrl+d
. È possibile disconnettersi e accedere nuovamente, quindi: screen -ls
e screen -r
. L'uscita da bash esce dalla sessione dello schermo. Per di più (molto di più), vedi vari tutorial sullo schermo GNU
ssh -X
reindirizza i comandi X11 al tuo server X locale. Quindi è come se steste eseguendo il programma localmente, quando è davvero in esecuzione sul computer all'altra estremità. È molto lento perché utilizza molta larghezza di banda. (Questo è ciò di cui le persone parlano quando dicono che X11 è "rete trasparente").
VNC e altre app per desktop remoto invece lasciano che l'altro computer elabori tutti i disegni grafici e così via e catturi, in sostanza, uno screenshot e lo rimandi al tuo computer. Può sembrare molto più veloce, perché per visualizzare tutto sono necessarie molte meno informazioni. Tuttavia, invia anche l'intero desktop, anziché una singola applicazione.
Non consiglio usando ssh -X
su Internet per una semplice ragione: Esso sarà usare tutta la vostra larghezza di banda disponibile. È abbastanza utile su una LAN, secondo me, quindi se hai solo bisogno di un'applicazione e non vuoi eseguire un intero desktop, questo è un buon modo per andare. Altrimenti, basta usare VNC.
VNC condividerà un intero desktop da un sistema remoto. Richiede un desktop completo sul sistema remoto.
ssh -X consente di eseguire un'applicazione X singola da un server remoto. Non è necessario che il sistema remoto esegua un desktop completo e spesso è necessario installare solo una manciata di pacchetti sul sistema remoto.
ssh -X
può essere utile durante l'installazione di pacchetti software complessi tramite una connessione remota. Alcuni prodotti software possono utilizzare un programma di installazione della GUI (Oracle Database, ecc.). Non voglio installare un desktop Gnome completo sul mio server remoto. Quindi, installi uno o due pacchetti X11 (Xauth?) Sul server remoto e consenti al DBA di eseguire il programma di installazione Oracle in remoto usando qualcosa di semplice come 'ssh -X / media / cdrom / oracle-installer'.