2012-05-30 25 views
4

我有一臺運行arch linux的樹莓派連接到電視,並希望通過從我的Ubuntu機器上SSH'ing在其他地方運行該屏幕上的命令。SSH隧道進入拱形框

我試着運行命令SSH -Y root @並啓動xclock作爲測試。不過,我得到以下錯誤:

無協議規定 錯誤:無法打開顯示:0

然後我試圖運行「出口DISPLAY =:0」牌坊機器上,但這並不解決問題。

我有X運行良好,可以在電視上看到它,我編輯了文件/ etc/ssh/ssh_config以允許X11轉發。

任何人都知道我在做什麼錯了?

非常感謝

+0

它看起來像要在本地計算機上啓動程序並使其顯示在連接到遠程計算機的顯示器上。如果是這樣,'-Y'不是你的朋友。這是爲了以相反的方式做事。 –

+0

哦,我明白了,所以如果我SSH進入樹莓派並從那裏運行-Y命令到我的機器上會更好? – Jon

+0

'ssh'到遠程機器上,'export DISPLAY =:0','ssh -Y'回來,do ** not **做'export DISPLAY',運行'xclock'。如果你確實在遠程機器上運行了':0',並且遠程用戶可以連接到它,這應該起作用。 –

回答

5

ArchLinux wiki上設置some good instructions。我努力了一段時間直到找到它們,但對我來說關鍵是在sshd_config中設置SSH轉發(大多數發行版默認啓用此功能,但Arch不支持)。

一旦您啓用了SSHD中的X轉發功能,我還發現安裝Xorg(「pacman -S xf86-video-dummy」)的虛擬視頻驅動程序很有用,它可以消除有關丟失RANDR延期。如果您已經在Pi上本地運行真正的X服務器,這可能不是必需的 - 個人而言,我完全無法運行我的X服務器。

我發現在使用iMac中的'ssh -X'運行時,我不必擔心設置DISPLAY變量或xhost。我希望Ubuntu的行爲一樣。

+0

對不起,延遲響應,但我一直忙於工作,並已發現其他有趣的想法。但是,您的答案值得肯定,謝謝! – Jon

0

看起來像一個認證問題。答案曾經是

xhost + 

在X顯示器的控制檯上。可能有幫助。

0

你可能想設置

出口顯示器= [IP_ADDRESS_OF_ARCH_BOX]:0

上你的Ubuntu箱,那麼當你從你的Ubuntu箱運行的xclock,它會在屏幕轉發給拱箱。

+0

謝謝,我試過了,然後SSH進入了arch使用SSH -Y根@,但我仍然收到錯誤「錯誤:無法打開顯示:」=/ – Jon