操作系统: GNU/Linux 9和肉桂DE。
由于我们成功地获得了在Debian服务器上运行的VNC,多亏了GAD3R,现在是时候让VNC成为一个常规服务了。
我希望它在运行时一直运行,从引导开始,而不需要SSH到服务器,同时运行:
x11vnc -rfbauth ~/.vnc/passwd另外,我不想运行单独的肉桂会话,我想直接查看主屏幕上的内容或您称之为什么,并对该会话进行现场操作。
发布于 2017-11-03 03:47:03
首先,在/etc/下复制密码文件可能是个好主意,如下所示:
sudo cp ~/.vnc/passwd /etc/vnc.passwd这还确保了对root和他的rw访问的所有权,如下所证实:
$ ll /etc/vnc.passwd
-rw------- 1 root root 8 Nov 3 04:00 /etc/vnc.passwd其次,我们必须自己创建服务文件:
sudo nano /lib/systemd/system/vnc.service而我想出的最简单的解决方案是让它包含:
[Unit]
Description=Start x11vnc at startup.
After=multi-user.target
[Service]
Type=simple
ExecStart=/usr/bin/x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbauth /etc/vnc.passwd -rfbport 5900 -shared
[Install]
WantedBy=multi-user.target注意,虽然它是目前为止最简单的服务文件,但它甚至不能支持停止或重新启动,我自己还需要解决这个问题。
免责声明:手册页相当长,也许我犯了一些严重的错误,例如这里的安全错误。承担你自己的风险。
sudo systemctl enable vnc.service
sudo systemctl daemon-reload你可以简单地重新启动机器。
请注意,在客户端,您可能希望从服务器复制密码文件,以便您每次不输入密码,连接,并定义类似于以下的别名:
alias vnc-server='(vncviewer 192.168.0.xxx:5900 -passwd /home/UserName/.vnc/server.passwd > /dev/null 2>&1 &)'这样它就不会淹没你的终端机。
发布于 2018-10-26 15:23:34
类似于Vlastimil自己的解决方案,但有一些其他细节:(来自带有系统的肉桂VNC服务器)
创建文件/etc/systemd/system/x11vnc.service:
[Unit]
Description=VNC Server for X11
Requires=display-manager.service
After=syslog.target network-online.target ##optional for better performance
Wants=syslog.target network-online.target ##optional for better performance
[Service]
ExecStart=/usr/bin/x11vnc -display :0 -rfbauth /etc/x11vnc.pwd -shared -forever -o /var/log/x11vnc.log
ExecStop=/usr/bin/x11vnc -R stop
Restart=on-failure
RestartSec=2
[Install]
WantedBy=multi-user.target生成和设置VNC密码(替换MY_PASSWORD)
x11vnc -storepasswd MY_PASSWORD /etc/x11vnc.pwd最后:
systemctl daemon-reload
systemctl enable x11vnc
systemctl start x11vnchttps://unix.stackexchange.com/questions/402201
复制相似问题