我正在我的远程PC上使用archlinux版本3.10.27-1-ARCH,我希望它在成功启动时启动x11vnc服务器。虽然我可以手动启动x11vnc服务器,但我在自动启动它时遇到了困难。/etc/systemd/system/x11vnc.service的配置如下
[Unit]
Description=VNC Server for X11
Requires=graphical.target
After=graphical.target
[Service]
ExecStart=/usr/bin/x11vnc -display :0 -nopw使用命令的服务状态:systemctl status x11vnc
x11vnc.service - VNC Server for X11
Loaded: loaded (/etc/systemd/system/x11vnc.service; enabled)
Active: inactive (dead)以及命令的dBus输出:dmesg|grep x11vnc
[ 5.467201] systemd[1]: Found dependency on x11vnc.service/start
[ 5.467285] systemd[1]: Breaking ordering cycle by deleting job x11vnc.service/start
[ 5.467335] systemd[1]: Job x11vnc.service/start deleted to break ordering cycle starting with graphical.target/start我确实觉得从dmesg输出中存在一个循环依赖关系,但是我无法理解什么。
发布于 2014-01-22 00:45:00
我找到了这个线程,它显示了将x11vnc设置为Systemd服务的类似任务。这个线程的标题是:如何在启动时使用系统启用x11vnc?。
来自该线程中的注释
/etc/systemd/system/x11vnc.service 单元 Description=VNC Server for X11 Requires=display-manager.service =Display-Manager.service 服务 Type=forking ExecStart=/usr/bin/x11vnc -norc -forever -shared -bg -rfbauth /etc/x11vnc.pass -allow 192.168.1。-autoport 5900 -o /var/log/x11vnc.log/etc/systemd/system/graphical.target #这个文件是systemd的一部分。## systemd是免费软件;您可以按照#发布的GNU较小通用公共许可证的条款重新分发和/或修改它#;许可证的2.1版,或#(根据您的选择)任何以后的版本。单元 Description=Graphical接口Documentation=man:systemd.special(7)要求=多用户.目标后=多用户.目标Conflicts=rescue.target Conflicts=rescue.target=Display-Manager.service Wants=x11vnc.service AllowIsolate=yes 安装 Alias=default.target发布于 2014-01-22 22:50:02
只是为了结束,让我这样做的x11vnc.service如下所示
[Unit]
Description=VNC Server for X11
Requires=display-manager.service
After=display-manager.service
[Service]
Type=forking
ExecStart=/usr/bin/x11vnc -norc -forever -shared -bg -rfbauth /etc/x11vnc.pass -autoport 5900 -o /var/log/x11vnc.log -auth /var/run/slim.authgraphical.target和步骤与slm上面给出的答案相同。
https://unix.stackexchange.com/questions/110304
复制相似问题