MacからLinuxボックスへのSSH経由のX転送


9

MacアプリケーションをリモートMacマシンで実行し、それをローカルLinuxマシンのXサーバーに表示する必要があります(インターネット上の多くの記事では、その逆の方法について詳しく説明しているようです)。

$ 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. 私の$DISPLAY変数は空のように見えます。転送が正しく機能するためには、どのように見えるべきですか?
  2. この方法でOSXアプリケーションを実行できますか?

回答:


6

MacのAquaがXの場合、X(XQuartz)を実行してMacで他のXプログラムを起動する必要はありません...

だから:いいえ、あなたはこれを行うことができないと思います。


しかし、あなたが始めるのを助けるために、私はまず真のXプログラムをあなたのLinuxマシンに転送しようと試みます:

  • Macの場合:XQuartzをまだインストールしていない場合は、インストールします(OS X 10.6 DVDのオプションインストールからXQuartz 2.3.4をインストールするか、XQuartzプロジェクトから最新のものをダウンロードします)。

  • お使いのMacの場合:変更X11Forwarding noX11Forwarding yes(そしてハッシュは(ありません確実に#使用して、その行の前に)) sudo vi /private/etc/sshd_config、または使用してsedAppleのからコマンドを有効にX11フォワーディング。これにより、DISPLAY変数が自動的に設定されます。

  • Linuxマシン:

    ssh -Y user @ mac-box
    xterm
    

(次のいくつかのステップにはXephyr(またはそれ以前のXnest)のグーグルが含まれる可能性があります。また、キーボードの問題が発生した場合:Google xmodmap、またはxevデバッグに使用します。またはフォントの問題:Google xfsおよびxset +fp tcp/mac-box:7100。しかし、Aquaプログラムをこの方法で実行できるとは思えません。)


1
残念ながらあなたは正しいです。xtermは実行できますが、SSH経由でXcodeおよびiPhoneシミュレーターを実行できません。また、ストック10.6インストールにXQuartzをインストールする必要はありませんでした。
Alex B

@AlexB過去10年間に何か変化はありましたか?
ムハンマドビンユスラット

4

ここでの主な目標は、Linuxマシンで実行中のMacアプリケーションを表示することです。Arjanは正解です。この場合、X転送は機能しません。

システム環境設定の「共有」パネルで画面共有を有効にする必要があります。これにより、VNCサーバーがオンになります。LinuxマシンでVNCクライアントを使用すると、Macデスクトップを表示できます。この記事では、Mac側で設定する方法(ステップ1から3)、空港ベースステーションでdyndnsを設定してポートを開く方法について(少し多すぎる)続けて、設定の下部に小さなビットがあります。クライアント側をアップします(ステップ20〜21)。


また、(デスクトップ全体ではなく)単一のアプリケーションのみを共有する多くのプログラムもあります。私は、最新のSkype、クロスプラットフォームを使用してそれを行うこともできると思います。(Skype が画面を覗くだけでなく、リモートマシンの制御を許可するかどうかはわかりません。)
Arjan

使わないようにしたいです。現時点では、VNCが唯一の代替手段であるようです。
Alex B

-2

使うだけ

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

X11の問題が発生しないシェルに入る。「-m」オプションの詳細については、マンページを参照してください。


-m環境を変更せずに残します。呼び出されたシェルはログインシェルであり、ディレクトリは変更されません。—それは質問とどのように関連していますか?
Arjan
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.