Come visualizzare sul Mac con X11 applicazioni Unix da remoto?

La prima cosa da tener presente è che per visualizzare un'applicazione grafica da remoto, è necessaria una quantità di banda non indifferente. Fatta questa premessa, lanciamoci nell'impresa.
Come requisito MacOS X deve avere installato un Server X11. Quello della Apple va benissimo (l'installazione è un tipico doppioclick, la configurazione interamente automatica). Dobbiamo inoltre avere un account sulla macchina remota i cui programmi vogliamo usare.

Controlliamo le impostazioni del firewall: se è attivo, assicuriamoci che accetti connessioni sulla porta 6000 che è quella usata da X ( System Preferences | Sharing (Condivisione) | firewall | New, a questo punto inserite nel campo Porte &qyot;6000" ed "X11" come descrizione)

A questo punto:

  1. Lanciamo il server X11 di MacOS X (/Applications/Utilities/X11.app)
     
  2. Dalla shell del server X (se non c'è nessuna shell aprite un terminale dal menu di X) connettiamoci con ssh alla macchina dalla quale fare girare applicazioni. Digitiamo:

    ssh -X nomeutente@nomehost

    oppure:

    ssh -Y nomeutente@nomehost

    Questa seconda forma permette spesso di far funzionare alcuni applicativi X11, come il MySQL admin o VMware, che altrimenti darebbero errore al momento dell'avvio.

    Ovviamente sostituiremo a nomeutente il nome dell'utente per il login, ed a nomehost il nome in rete o la URL della macchina a cui ci stiamo connettendo.
    Su richiesta va inserita la password dell'utente.
     
  3. Siamo dentro, e pronti a lanciare applicativi in GUI. Alcuni comandi che possiamo trovare utili:
    • gnome-session per avviare Gnome
    • kde-panel per avviare KDE
    • gnome-panel per avviare i soli menu di Gnome

Note miste:

  • Facendo seguire il comando da & (per esempio xedit& invece di xedit) si possono lanciare i processi grafici da xterm in background, in questo modo viene restituito immediatamente il controllo alla shell.
     
  • Avviando la sessione ssh con ssh -CX (ecc.) tutto il traffico ssh viene compresso con gzip, e questo migliora le prestazioni se il collegamento remoto dovesse essere troppo lento.
     
  • Se lanciando ad esempio "gnome-session" dovessimo ottenere un errore "Bad Atom request" molto probabilmente il client SSH che stiamo usando su Mac OS X non è configurato per accettare il forward di X11.

    In questo caso aprire con "sudo vi" o qualcosa di analogo il file /etc/ssh_config, cercare la linea:
    #   Host *
    Sostituirla con:
    Host *
    ForwardX11Trusted yes
    Salvare il file, e riaprire la connessione SSH. L'errore dovrebbe essere scomparso.
     
  • Le applicazioni Unix, anche se fatte girare sotto MacOS X effettivamente risiedono sul server remoto. I files verranno creati nella directory utente remota, non sull'hard disk del mac.
    Ovviamente anche il calcolo verrà effettuato in remoto, il Mac si incaricherà solo della visualizzazione. Stiamo usando la macchina remota, semplicemente usando come schermo quello del vostro mac.
     
  • Una curiosità: usando un server che ha wine (tipicamente una macchina GNU/Linux x86), si possono emulare programmi Windows su una macchina GNU/Linux, vedendo il risultato su un Mac... quasi grottesco :-)))
ATTENZIONE: Le note sono inserite in modo anonimo dai visitatori del sito, e non sono state verificate da chi cura le Faq.
Nota di qqupp
Si puo eseguire anche una sessione di X11 remota senza usare ssh. Basta abilitare il protocollo XDMCP nel getore di login KDM/Xdm/Gdm l'opzione di [Xdmcp] Enable=True Per chi usa KDM si puo abilitare nel file kdmrc. Da mac aprite un terminale (non X11) e digitate: /usr/X11R6/bin/X -query ip_macchina_linux Vi apparira il gestore di login sul quale effetuare il login con il vostro wm/desktop preferito.

[ Home | Elenco delle FAQ | Forum | Segnalazioni | Risorse | Feed RSS ]