首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ubuntu18.04通过VNC连接到登录屏幕

Ubuntu18.04通过VNC连接到登录屏幕
EN

Ask Ubuntu用户
提问于 2018-05-07 18:20:48
回答 4查看 46.3K关注 0票数 17

我在这方面花了几个晚上,自从我设法让它在我以前的Ubuntu (很多年前)上工作以来,它变得有点令人沮丧。

我希望在任何时候(包括登录屏幕)在我的服务器上运行一个vnc服务器来远程连接和登录。没有不同的会话:在我的服务器的物理显示上共享相同的会话,并在专用网络(又名家庭)中通过VNC远程登录。

我知道这是XDMCP、GDM3、initd和VNC配置的结合,但我没有足够的经验来调整我在网上找到的各种操作,以便为ubuntu18.04工作。

这些链接似乎很有希望:https://lists.debian.org/debian-user/2017/04/msg00529.html https://codeghar.wordpress.com/2009/06/11/remote-login-with-gdm-and-vnc-on-fedora-11/ https://wiki.openindiana.org/oi/4.7+Remote+Graphical+Login:+Using+Xvnc+and+gdm+for+One-Shot+sessions

现在(如果其他人像我一样疯狂的话),我安装了nomachine,安装过程总共花了2分钟,它可以按我的意愿工作(包括iOS客户端!):https://www.nomachine.com/ -苦乐参半的¯_(ツ)_/me。

EN

回答 4

Ask Ubuntu用户

发布于 2018-06-06 09:04:29

Ubuntu18.04从LightDM切换到GDM3。在使用GDM3时,使用VNC连接到登录屏幕目前是不可能的。要使VNC功能恢复,最简单的方法是简单地从GDM3切换回LightDM。

许多Linux发行版仍在积极地开发和使用LightDM,包括一些其他类型的Ubuntu。所以不用担心。

安装LightDM

代码语言:javascript
复制
apt install lightdm

如果您因某些原因而后悔切换到LightDM:

代码语言:javascript
复制
dpkg-reconfigure gdm3

一旦安装了LightDM并将其配置为默认的迎接器。

从包

安装x11vnc

代码语言:javascript
复制
apt install x11vnc

创建/etc/systemd/system/x11vnc.service文件的

# Description: Custom Service Unit file # File: /etc/systemd/system/x11vnc.service [Unit] Description="x11vnc" Requires=display-manager.service After=display-manager.service [Service] ExecStart=/usr/bin/x11vnc -loop -nopw -xkb -repeat -noxrecord -noxfixes -noxdamage -forever -rfbport 5900 -display :0 -auth guess ExecStop=/usr/bin/killall x11vnc Restart=on-failure RestartSec=2 [Install] WantedBy=multi-user.target

启用x11vnc服务

代码语言:javascript
复制
 systemctl enable x11vnc.service

这假设screen :0表示监视器,并将x11vnc绑定到该监视器,而不是会话。如果您没有监视器(无头),您可以安装xserver-xorg-视频虚拟包,并使用虚拟驱动程序配置一个虚拟:0屏幕为您。

Side notes

  1. 如果您使用的是virt管理器(在127.0.0.1:5900上也支持VNC ),您可能希望将x11vnc绑定到您的LAN (-listen 10.0.0.1)。
  2. 用于启动x11vnc的参数告诉它不要要求附加密码(-nopw)。
票数 20
EN

Ask Ubuntu用户

发布于 2020-03-04 10:10:11

我还没有找到一个更好的方式,但如果你真的想登录,它看起来是可能的。

GDM为root用户拥有的登录屏幕启动一个Xsession。据我所知,它将大致以这种方式执行登录:

登录,找到现有的会话并切换到它,或者找到一个新的vt,并为它运行一个Xorg/gnome会话。

第一个具有显示:0及其权限文件(gdm用户id 121) /run/user/121/gdm/Xauthority。因此,如果您没有登录DM本身并登录(您的x11vnc将因vt开关而变黑),您可以首先运行一个x11vnc (根权限)。您可以为新的显示x11vnc (没有根权限)手动启动新的:1,也可以像其他登录脚本一样自动启动会话。

代码语言:javascript
复制
~$ ps -a | grep Xorg
1471 /usr/lib/xorg/Xorg vt1 -displayfd 3 -auth /run/user/121/gdm/Xauthority -background none -noreset -keeptty -verbose 3
5337 /usr/lib/xorg/Xorg vt3 -displayfd 3 -auth /run/user/1000/gdm/Xauthority -background none -noreset -keeptty -verbose 3
/1000/gdm/Xauthority -background none -noreset -keeptty -verbose 

这在某种程度上是决断 (其他DMs在未来可能也会这样做)

票数 1
EN

Ask Ubuntu用户

发布于 2021-02-01 21:58:04

Ritualmaster在他们的回答中是正确的:可以通过GDM3使用x11vnc远程登录。

  1. 您必须安装x11vnc。数独apt安装x11vnc
  2. 您应该创建一个密码x11vnc -storepasswd /path/to/passfile
  3. 如果未提供,则默认位置为~/.vnc/passwd x11vnc -storepasswd。
  4. 您将需要列出Xsessions aux _ grep auth

第一行是登录屏幕。

代码语言:javascript
复制
root  /usr/lib/xorg/Xorg vt1 -displayfd 3 -auth /run/user/124/gdm/Xauthority -background none -noreset -keeptty -verbose 3
fho   grep Xorg
  1. 提供适当的权限并将显示设置为:0 sudo x11vnc -display :0 -auth /run/user/124/gdm/Xauthority -rfbauth ~/..vnc/passwd

如果您连接到它,您将看到登录屏幕。一旦你登录,屏幕就会变黑。服务器应该自动关闭。

  1. 查找用户会话屏幕ps aux \ grep Xorg
代码语言:javascript
复制
root  /usr/lib/xorg/Xorg vt1 -displayfd 3 -auth /run/user/124/gdm/Xauthority -background none -noreset -keeptty -verbose 3
root  /usr/lib/xorg/Xorg vt2 -displayfd 3 -auth /run/user/1000/gdm/Xauthority -background none -noreset -keeptty -verbose 3
fho   grep Xorg

第二行是你要找的那条。现在可以通过替换显示号和用户会话Xauthority重新启动x11vnc服务器。

代码语言:javascript
复制
   x11vnc -display :1 -auth /run/user/1000/gdm/Xauthority  -rfbauth ~/.vnc/passwd
票数 1
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1033274

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档