安装并自启VNC server
一、安装VNC并手动运行
apt install desktop-autostart vnc-server
安装完毕后输入vncserver
,屏幕中会提示数字
可在主目录中的.vnc
目录中找到隐藏的默认配置文件和密码文件。
VNC 会话启动并显示一个唯一的显示 ID,该 ID 是主机名和冒号 “:” 后面的数字。在上面的例子中,显示 ID 是 1。向 VNC 查看器应用程序提供显示 ID 以建立连接。- 结束VNC
vncserver -kill :1
- 如果忘了编号可以手动查询
vncserver -list
- 自定义配置
- 要自定义屏幕大小、安全类型等设置,请修改
$HOME/.vnc/config
文件。 - 要自定义启动时运行的应用程序,请修改
$HOME/.vnc/xstartup
文件。
二、通过 systemd 服务自启VNC
查看是否有目标账户
cut -d: -f1 /etc/passwd
确保存在/etc/systemd/system
mkdir -p /etc/systemd/system
创建 systemd 服务脚本文件
vncserver@:[X].service
其中 [X] 是显示 ID。对于/etc/systemd/system
中的每个用户,必须为每个用户分配一个唯一的显示 ID。请确保在 User 字段中输入正确的用户名。以下示例显示了用户 vnc-user-b 已分配了显示 ID 5.vi /etc/systemd/system/vncserver@:5.service
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15[Unit]
Description=VNC Remote Desktop Service for "vnc-user-b" with display ID "5"
After=syslog.target network.target
[Service]
Type=simple
User=vnc-user-b
PAMName=login
PIDFile=/home/%u/.vnc/%H%i.pid
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/usr/bin/vncserver %i -geometry 2000x1200 -alwaysshared -fg
ExecStop=/usr/bin/vncserver -kill %i
[Install]
WantedBy=multi-user.target让每个用户登录他们的帐户,并使用 vncpasswd 命令设置 VNC 密码,然后继续下一步。
启动 VNC 服务脚本,并为每个用户将其设置在引导时自动启动。使用显示 ID 替换 [X]。
1
2
3systemctl daemon-reload
systemctl start vncserver@:[X].service
systemctl enable vncserver@:[X].service之后确保他们在运行
systemctl | grep vnc
三、通过 GDM 身份验证实现多用户登录
使用此方法时,系统将 VNC 配置为监听端口 5900 的 systemd 服务,并将 GDM 配置为接受来自 VNC 的访问请求。
- 确保目录存在
mkdir -p /etc/systemd/system
- 创建 systemd 套接字文件
xvnc.socket
,并添加以下内容vi /etc/systemd/system/xvnc.socket
1
2
3
4
5
6
7
8
9[Unit]
Description=XVNC Server on port 5900
[Socket]
ListenStream=5900
Accept=yes
[Install]
WantedBy=sockets.target - 创建 systemd 服务文件
[email protected]
,并添加以下内容vi /etc/systemd/system/[email protected]
1
2
3
4
5
6
7
8[Unit]
Description=Daemon for each XVNC connection
[Service]
ExecStart=-/usr/bin/Xvnc -inetd -query localhost -geometry 2000x1200 -once -SecurityTypes=None
User=nobody
StandardInput=socket
StandardError=syslog - 建路径
mkdir -p /etc/gdm
- 创建一个 GDM
custom.conf
文件1
2
3[xdmcp]
Enable=true
Port=177 - 启动并检查
1
2
3
4systemctl daemon-reload
systemctl start xvnc.socket
systemctl enable xvnc.socket
systemctl | grep vnc
四、推荐VNC客户端
- Tightvncviewer on debian
apt-get install xtightvncviewer
- Windows/Mac
RealVNC - 链接地址备注默认5900端口
vncviewer [VNCserver address]:[fully-qualified VNC port number 590X]
安装并自启VNC server
https://hexo.psorai.eu.org/2023/10/17/安装并自启VNC server/