Xforwarding 不允许切换用户

Jar*_*vin 7 ssh sudo x-windows x11-forwarding ubuntu

我通过 ssh 连接到远程计算机并且 xforwarding 工作正常......但是一旦我“sudo su -”或“sudo su user2”它不再Xforwards任何给我错误的东西:

X11 connection rejected because of wrong authentication.
xterm Xt error: Can't open display: localhost:10.0
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

谢谢

Vai*_*pai 6

  1. 在您的客户端中启用 X-11 转发
  2. 以普通用户身份登录
  3. echo $DISPLAY 获取关联的显示
  4. xauth list, 找到与您在#3 中找到的内容相对应的显示编号并复制它
  5. 须藤root xauth add <paste in what you copied from #4>
  6. 现在您可以以 root 身份执行命令,并且可以设置 X11 转发连接


tzo*_*zot 5

在您之前sudo,请执行以下操作:

$ xauth extract /tmp/xauthstuff $DISPLAY
Run Code Online (Sandbox Code Playgroud)

之后sudo,执行以下操作:

# xauth merge /tmp/xauthstuff
Run Code Online (Sandbox Code Playgroud)

这对你有用吗?

PS记得rm /tmp/xauthstuff事后

  • 我尝试了该命令,但失败了: $ xauth extract /tmp/xauthstuff $DISPLAY 未找到匹配项,权限文件“/tmp/xauthstuff”未写入 有想法吗? (3认同)