如何以用户(而不是root)身份运行vncserver?

如何以用户(而不是root)身份运行vncserver?

我想远程访问特定用户的桌面而不是根桌面;但是,当我运行它时,vncserver它总是会生成一个 root 桌面。

这可能与安装有关tigervnc.vnc和目录.xauthority可在目录中找到/root

如何更改此设置以便我可以运行vncserver:1生成特定的用户桌面?

我也尝试使用该vncserver -u username命令,但它不允许我访问这些.vnc文件。

我认为tigervnc必须将其拆除并安装在正确的位置?

答案1

刚刚为这个问题苦苦挣扎了几天,并设法使用以下方法解决它:

  1. 注销并确保没有其他用户登录
  2. 使用 TERMINAL 以用户身份再次登录,不要使用 gdm/xdm 或图形管理器登录
  3. vncserver在终端中启动
  4. 在终端问题中startx

我猜发生的情况是 systemd 启动了 X 服务器并且它在 root 用户下运行。当有人登录时,它可能会打开一个新进程,并使用setuid系统调用为刚刚登录的 uid 设置所有权限。这可能会阻止 vncserver 之后从 X 服务器获取同一用户的数据。

也许某种系统配置或文件系统中的权限更改也可以解决它......

答案2

你试试https://wiki.ubuntu.com/xdmcp它有多用户模式https://wiki.archlinux.org/index.php/TigerVNC#Multi-user_mode 计划自己尝试一下,因为它可能比 mate/lxde 安装修复更好地解决 vnc debian 灰屏/:( 问题。

您是否尝试过 xdmcp 远程桌面 - 它具有多用户模式 ​​- 它可以解决您的多用户问题以及 vnc 和 debian 遇到的其他问题....根据没有链接的 jasonwryan '基本部分' - 编辑

答案3

1.以 root 身份运行 vnc 服务器 2.将 /root/.vnc/xstartup 复制到 /home/user/.vnc(如果尚未创建,则创建 .vnc) 3.登录到用户 4.启动 vncserver( # vncserver -geometry 1024x768 -depth 16 -name Remote-desktop :1)
5.vncpasswd 用于设置vnc密码
6.尝试通过vnc查看器登录

答案4

在用户终端中运行(vncserver)并打开会话后,

如果您以 root 用户身份连接到 serverIp:5901 使用普通用户连接到 serverIp:5902

相关内容