使用socat远程访问X.

时间:2016-10-28 21:06:46

标签: namespaces socat x11-forwarding

我有一个远程服务器,我想在我已经设置的网络命名空间内启动一些gui应用程序。我正在使用socat转发x会话。

eog

但是,如果我尝试启动DISPLAY=:1111 eog

之类的应用程序
I   No protocol specified
** (eog:9498): WARNING **: Could not open X display
Cannot open display:
Run 'eog --help' to see a full list of available command line options.

它失败并显示以下消息:

socat

Instruction* someInst; IRBuilder<> B(someInst); Value* condition = B.CreateICmp(CmpInst::ICMP_UGT, someInst, someValue); BasicBlock* thenBB = BasicBlock::Create(*ctx, "then"); BasicBlock* elseBB = BasicBlock::Create(*ctx, "else"); B.CreateCondBr(condition, thenBB, elseBB); B.SetInsertPoint(thenBB); //insert stuff B.SetInsertPoint(elseBB); //insert stuff 会立即退出。

1 个答案:

答案 0 :(得分:1)

嗯,花了一天时间,但我想办法做到这一点。

我最终使用Xpra在远程服务器上启动X服务器并在我的本地计算机上连接到它。

在本地运行xhost +并在远程服务器的fork调用中添加socat标志后,socat方法也有效。但是,它从来没有始终如一地工作(应用程序在启动期间挂起的机会很多)。它从未与像Firefox这样的更复杂的应用程序一起使用。在尝试使用dbus时,应用程序指向应用程序挂起。