【问题标题】:ubuntu on android unable to open display chrootandroid上的ubuntu无法打开显示chroot
【发布时间】:2011-02-27 07:08:54
【问题描述】:

你好 我在 android 上使用 ubuntu(使用 chroot) 我正在尝试执行 xev (将音量按钮更改为 CTRL) 但每次我试图打开 xev 时, 它说 无法打开显示器'' 或者 无法打开显示“127.0.0.1:0.0” (当我用导出更改 DISPLAY 变量时)

谁能告诉我如何解决这个问题? 我在谷歌上找不到官方错误页面 你的小建议对我很有帮助 问候。 泰允。

【问题讨论】:

    标签: android ubuntu chroot


    【解决方案1】:

    DISPLAY=127.0.0.1:0.0 表示使用 TCP/IP 连接到显示器0.0。发行版已经五年或更长时间没有配置 X 服务器来监听 TCP,因为这是不必要的安全风险;如果您真的希望使用 TCP 而不是 Unix 域套接字,则需要从执行 X 时删除 -nolisten

    但是你真的需要它来监听 TCP 的连接吗?似乎不太可能 - Unix 域套接字(例如,/tmp/.X11-unix/X0)更为常见,只需使用 DISPLAY=:0.0 来请求 Unix 域套接字。您可能需要将套接字链接到您的 chroot 环境,这取决于客户端和服务器从哪里开始。

    一旦您可以从 X 客户端联系 X 服务器,您还需要使用 xauth(1) 对其进行身份验证。这很烦人 :) 这也是为什么每个人都只使用 SSH X11 转发 (ssh -X) 而不是手动处理 TCP 侦听和xauth 的一个最流行的原因。 (顺便说一句,你能不能在不同端口上的 chroot“内部”运行一个 sshd,这样你就可以轻松地免费获得所有这些魔法?:)

    【讨论】:

    • 你好~非常感谢你的回复不幸的是我是新手所以我不明白“你能不能在不同端口上的 chroot 里面运行一个 sshd”是什么意思你能告诉我更具体一点吗?
    • @user464689,你能 (1) 在你的 chroot 中安装 sshd (2) 编辑 /path/to/chroot/etc/ssh/sshd_config 以在端口 2222 上启用 sshd 吗?然后当您ssh -X localhost:2222 时,您将连接到在 chroot 内部运行的sshd,希望 chroot 内部 X11 的 Unix 域套接字“正常工作”。
    • 谢谢!但是.. ssh: 无法解析主机名 localhost:2222: Name or service not known 很抱歉给您发送失败消息我该怎么办?;;
    • @user464689,对不起,我总是忘记格式是ssh localhost -p 2222
    • 当我尝试 root@localhost:/#ssh localhost -p 2222 然后 ssh:could not resolve hostname localhost: name or service not known as ssh -X localhost -p 2222 不仅这个命令而且其他命令也是如此
    猜你喜欢
    • 1970-01-01
    • 2017-12-28
    • 1970-01-01
    • 1970-01-01
    • 2019-04-17
    • 2017-02-17
    • 1970-01-01
    • 2019-01-05
    • 2015-02-23
    相关资源
    最近更新 更多