Come posso accedere al mio server Ubuntu remoto tramite X-windows dal mio Mac?


35

Ho un server Ubuntu (12.04 LTS) in esecuzione in remoto su un servizio di cloud hosting. Ho installato ubuntu-desktoptramite apt-get:

$ sudo apt-get install ubuntu-desktop

Sembra che non sia stato installato alcun problema.

Ho confermato che /etc/ssh/ssh_configsul server contiene le linee

ForwardAgent yes
ForwardX11 yes
ForwardX11Trusted yes

e quello /etc/ssh/sshd_configsul server contiene la riga:

X11Forwarding yes

Ho quindi riavviato il server. È tornato senza problemi.

Ora, avviando X11.app sul mio Mac mi viene presentato un Xterm.

Mi collego al mio server da questo terminale usando:

$ ssh -X <myhost>

e mi collego al server, nessun problema.

A questo punto non so cosa fare. Ho provato

$ sudo startx

ma viene visualizzato l'errore "nessuna schermata trovata".

Non ho schermi perché è un server cloud senza testa, ma voglio solo accedervi dal mio Mac tramite X.

E adesso?


2
Prova a installare xvfb. Non ne ho esperienza, ma si comporta come uno schermo senza hardware.
ζ--

Risposte:


21

Esistono diversi metodi per farlo, a seconda di ciò che devi veramente fare.

Per inoltrare le app remote all'ambiente X locale, devi installare X11 sul tuo Mac (puoi trovarlo sul sito di supporto Apple): http://support.apple.com/kb/DL1605?viewlocale=en_US&locale=en_US

Dall'app X11, aprire il terminale, quindi accedere all'host remoto con:

    ssh -XC user@host

Quindi, una volta effettuato l'accesso, esegui semplicemente il comando per l'app desiderata, es: firefox, nautilus, thunderbird, qualunque cosa ...

Puoi anche avviare solo il menu principale del sistema (Ubuntu, Xubuntu, Mint, ecc.) E interagire con il sistema remoto da lì, senza la necessità di un front-end grafico completo. Su un ambiente Linux Mint remoto, eseguo semplicemente:

    mintmenu&

Se ne hai davvero bisogno, puoi persino avviare l'ambiente grafico remoto localmente sul tuo Mac X11, semplicemente eseguendo:

    ubuntu-session
    xubuntu-session
    etc... (depends of your remote environment)

Meglio di qualsiasi VNC, persino migliore di una connessione X11VNC! Connessione protetta e compressa FTW.


7

Sul tuo Mac, dovrai installare XQuartz, se non l'hai già fatto (vedi http://xquartz.macosforge.org ). Una volta installato, riavvia e apri una finestra del terminale XQuartz e SSH sul tuo sistema Ubuntu Server:

ssh -X yourubuntuserver

Se lightdm è in esecuzione (vedi https://askubuntu.com/a/153423/66799 per leggere come accenderlo e spegnerlo secondo necessità), esegui questo comando per ottenere Ubuntu Unity sintonizzato sul tuo Mac su X11:

gnome-session --session=ubuntu-2d

Questo funziona per me con Ubuntu Server 12.04 LTS e Mac OS X Mountain Lion 10.8.2, ma ricevo errori Composiz occasionali. Detto questo, ho sempre avuto errori Composiz anche quando eseguivo Ubuntu Desktop localmente. (-:

È possibile disconnettersi da Unity per chiudere le finestre di Ubuntu Desktop.


Funziona, è necessario XQuartx.
SmallChess

Funziona alla grande su Windows 10 in WSL con Xming per la visualizzazione.
Duro

-1

Hai l'idea giusta ma la sintassi sbagliata :)

startxnon ricomincerà in sshquesto modo perché ha bisogno di uno schermo (aka Xserver con cui parlare)

prova questo comando per avviare la gui desktop

sudo service gdm start

questo avvierà l'ambiente desktop.

disconnessione.

e prova

ssh -X nautilus username@host 

nota non testato sopra la linea

Se tutto funziona bene, dovresti vedere il popup di Ubuntu File Manager. Altrimenti potresti non avere alcune librerie o la sintassi del comando è errata (dalla parte superiore della mia testa non l'ho provato).


4
Non c'è bisogno (o ragione) di correre sudo service gdm start. Il server X viene eseguito sul client SSH: la macchina viene utilizzata come workstation. Non ha bisogno di essere in esecuzione sul computer remoto per ssh -Xfunzionare.
Eliah Kagan,

Ah, non ero a conoscenza di questo grazie per le informazioni.
Matt Mootz,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.