【问题标题】:xterm not working in mininetxterm 在 mininet 中不起作用
【发布时间】:2019-08-12 06:07:48
【问题描述】:

我使用的是 mininet 2.1.0 版。我的设置是这样的,我必须运行 mininet 来自远程机器的命令,例如,

ssh -X user@IP python mininet.py

X11 转发似乎没问题。 X 转发不仅在 mininet shell 中起作用,但在 SSH shell 中起作用。

但是,我无法在 mininet 上运行 xterm 命令。我没有得到任何 运行 xterm 命令后的输出。

mininet> pingall
*** Ping: testing ping reachability
h1 -> h2 h3
h2 -> h1 h3
h3 -> h1 h2
*** Results: 0% dropped (6/6 received)
mininet> xterm h1
mininet> h1 xterm
Warning: This program is an suid-root program or is being run by the root user.
The full text of the error or warning message cannot be safely formatted in
this environment. You may get a more descriptive message by running the 
program as a non-root user or by removing the suid bit on the executable.
xterm: Xt error: Can't open display: %s

当我从本地机器启动 mininet 时,xterm 工作并打开一个 新窗口。

在这种情况下,我应该在哪里查找与 xterm 相关的日志?

我已经为此花费了一天多的时间。我也把mininet版本更新到了最新的2.2.1,还是没有成功。

提前致谢!

【问题讨论】:

  • 首先,阅读-X 文档,然后使用-Y。然后,删除您的问题,因为它不是一个编程问题,因此在这里偏离主题。如果您遇到程序问题,请使用供应商的错误跟踪/支持系统。
  • @UlrichEckhardt 我用-X-Y 都试过了,但xterm 仍然没有打开一个窗口。如果我在本地机器上运行 mininet,xterm 可以工作。对远程计算机执行 ssh 时会出现此问题。是否可以将问题移至另一个论坛?

标签: python x11 mininet


【解决方案1】:

“h1 xterm”命令在 mininet 控制台下不起作用的原因是:

如果你运行:"h1 echo $DISPLAY $XAUTHORITY",两个重要的与 xterm 相关的环境变量( $XAUTHORITY , $DISPLAY )不会传递到 mininet 控制台;两个变量都将返回空白。

为了保持主机环境变量不变,在 mn 命令中添加 -E 参数。 "sudo -E mn" ,然后你就可以成功运行 "h1 xterm" 了。

【讨论】:

    【解决方案2】:

    当我迁移到 Ubuntu 18.04 时,Mininet xterm 停止工作。 我所做的只是在 Ubuntu 中安装 xterm“sudo apt install xterm”。 之后我启动了 mininet (sudo mn) 并调用 mininet>xterm h1。 xterm 窗口照常弹出。 希望这会有所帮助。

    【讨论】:

    • 我使用的是 Ubuntu 20.04,我遇到了同样的问题,我收到错误无法连接到显示器
    【解决方案3】:

    你必须先设置显示,从远程机器(我假设你的 Windows PC),安装 xming 服务器来设置和显示 MININET 代码结果,>> 运行 xlunch >> 选择显示编号>> 然后使用 ssh 或 putty登录并在选定的显示中显示结果,这对我来说很好。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-09-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多