Come si esegue un'applicazione GUI tramite SSH?

10

Sono abituato a lavorare su Unix / Linux e recentemente mi sono trasferito su Mac. In usato per essere in grado di fare questo:

derick@linux1:~$ ssh -X linux2
derick@linux2's password:
derick@linux2:~$ xclock

Ho installato X11 da maxports e posso fare lo stesso dal mio mac. Se provo il contrario di ssh-ing nel mio Mac da Linux posso solo eseguire alcune app:

  • /usr/X11/bin/xclock funziona bene
  • Qualcosa come /Applications/Preview.app/Contents/MacOS/Preview apre la GUI sul mac.

    Sembra che questo non sia possibile su un Mac? In caso contrario, come posso eseguire un'applicazione in remoto (su un Mac) con un display locale (linux)? Ho bisogno di qualche app di terze parti?

Aggiornamento: Per essere più precisi: ho una sinergia e uso Mac per la codifica. Sul mio PC Linux mi piacerebbe vedere il display di un'altra applicazione (GUI) da Mac. Pertanto, le app 'live screen sharing' come VNC non funzioneranno.

Ad esempio sto lavorando al mio Mac nell'app A (diciamo Word) e voglio vedere l'output di Excel (in esecuzione su mac) sul mio PC Linux accanto a me. (Simulazione di un doppio schermo tramite la rete). Ha funzionato bene su Linux, sperando in una soluzione per Mac.

    
posta Derick Schoonbee 28.08.2011 - 12:54
fonte

5 risposte

9

Quindi, se non sbaglio, il problema che hai attualmente con VNC è che sta condividendo lo schermo attuale dell'utente Mac con app aperte che non vuoi vedere sul tuo altro computer? Lion introduce la possibilità di condividere la schermata degli utenti registrati sullo sfondo . Citando il testo dal link:

  • Enable Screen Sharing and set a VNC password.
  • Take note of your computer’s IP address.
  • Fire up a VNC client on another machine.
  • Connect to your computer’s IP address along with the password you set earlier.
  • You will see the Mac OS X login screen that appears when you first start the computer. If you log into the currently active user you will be controlling the computer’s screen. If you select a different user, you will be logged into that user’s desktop in the background. It will not affect what what is seen on the physical computer screen.

Probabilmente dovrai solo creare un altro utente per la condivisione.

    
risposta data 03.09.2011 - 05:41
fonte
17

L'applicazione nativa per Mac OS X non usa il protocollo X per il rendering, ma il protocollo specifico per Mac. Quindi non è possibile utilizzare l'inoltro del protocollo ssh X come con una workstation Linux.

Come hai scoperto, il contrario non è vero, puoi installare un server X su Mac OS X e far apparire il programma Linux sul tuo Mac.

Quello che puoi fare è utilizzare la funzione di condivisione desktop del Mac o installare un server VNC. Poi dalla tua Linux box, ti connetti al tuo Mac tramite VNC invece di ssh.

    
risposta data 28.08.2011 - 14:09
fonte
7

Come ha detto Sylvian, non puoi eseguire le tue app Mac e visualizzarle su Linux. Il meglio che puoi fare è VNC. Vedrai l'intero schermo, non solo un'app.

Abilita una password VNC in Preferenze di condivisione dello schermo:

Puoi quindi utilizzare qualsiasi applicazione client VNC su Linux.

    
risposta data 28.08.2011 - 22:37
fonte
0

Sei un po 'sfortunato, ma ScreenRecycler ti farà avvicinare il più possibile. Funziona su VNC ma convince OS X la connessione VNC è in realtà un monitor separato, dovrebbe consentire di avvicinarsi a ciò di cui si ha bisogno. L'ho usato, è abbastanza buono, c'è una prova gratuita, quindi è abbastanza economico. Ho smesso di usarlo solo perché ero su una rete schifosa e c'era troppa latenza a meno che non stessi collegando direttamente i due.

    
risposta data 06.09.2011 - 12:27
fonte
0

Ottenere un po 'di creatività, ma puoi anche eseguire un'applicazione java usando VNC che ha un server http o, nel mio caso, usa un loop per cercare un file e crearlo usando SSH.

Qui è la mia app java.

    
risposta data 02.09.2015 - 22:22
fonte

Leggi altre domande sui tag