X encaminhamento via SSH do Mac para uma caixa do Linux

8

Eu preciso executar aplicativos Mac em uma máquina Mac remota e exibi-lo em um servidor X da máquina Linux local (muitos artigos na Internet parecem estar detalhando como você faria da maneira oposta).

$ ssh -X mac-box
$ cd /Developer/Applications/Xcode.app
$ ./Contents/MacOS/Xcode
Sat Oct  3 20:41:26 mac-box.local Xcode[15634] <Error>: kCGErrorFailure: Set a breakpoint @ CGErrorBreakpoint() to catch errors as they are logged.
_RegisterApplication(), FAILED TO establish the default connection to the WindowServer, _CGSDefaultConnection() is NULL.
^C
  1. Minha variável $DISPLAY parece estar vazia. Qual deve ser a aparência para que o encaminhamento funcione corretamente?
  2. Posso executar aplicativos OSX dessa maneira?
por Alex B 03.10.2009 / 12:46

3 respostas

6

Se o Aqua de um Mac fosse X, você não precisaria executar o X (XQuartz) para iniciar outros programas X em um Mac ...

Então: não, acho que você não pode fazer isso.

Mas, para ajudar você a começar, eu primeiro tentaria obter verdadeiros programas X encaminhados para sua máquina Linux:

  • No seu Mac: instale o XQuartz se você ainda não o fez (como o XQuartz 2.3.4 de instalações opcionais no DVD do OS X 10.6, ou faça o download do mais recente de o projeto XQuartz ).

  • No seu Mac: altere X11Forwarding no para X11Forwarding yes (e verifique se não há hash ( # ) na frente dessa linha) usando sudo vi /private/etc/sshd_config ou usando o comando sed da Apple < href="http://developer.apple.com/mac/library/qa/qa2004/qa1383.html"> Ativando o encaminhamento do X11 . Isso também garantirá que a variável DISPLAY seja configurada automaticamente.

  • Na sua máquina Linux:

    ssh -Y user@mac-box
    xterm
    

(Algumas próximas etapas podem incluir a pesquisa no Google para Xephyr (ou o antigo Xnest ). E se você encontrar problemas de teclado: Google xmodmap ou xev para depuração. Google xfs e xset +fp tcp/mac-box:7100 . Mas duvido que você possa rodar programas Aqua dessa maneira.)

    
por 03.10.2009 / 13:14
4

Parece que o seu principal objetivo aqui é visualizar os aplicativos do Mac em execução em uma máquina Linux. Arjan está certo, o encaminhamento do X não funcionará para isso.

Você deve ativar o Compartilhamento de tela no painel Compartilhamento em Preferências do sistema. Isto irá ligar um servidor VNC. Usando um cliente VNC em sua máquina linux, você poderá ver sua área de trabalho Mac. Este artigo mostra como configurá-lo no lado mac (passos 1-3), continua (um pouco demais) sobre a configuração de dyndns e abertura de portas em uma estação base do aeroporto e, em seguida, tem um pouquinho na parte inferior sobre a configuração do lado do cliente (etapas 20 a 21).

    
por 03.10.2009 / 14:49
-2

Apenas use

su -lm <usrname-to-proxy-for>

para entrar em um shell onde nenhum problema do X11 irá ocorrer. Veja manpages para detalhes sobre a opção '-m'.

    
por 17.06.2012 / 08:51