我正在尝试使用systemd服务文件连接到vpnc。该服务文件运行脚本myscript.sh,该脚本除其他外运行:
sudo vpnc myhost
启动设备后,其他命令已正确执行,但vpn未连接,并显示错误消息:
vpnc: unknown host `myhost.com'
但是,如果我使用手动运行服务文件
systemctl start myservice.service
然后vpn成功启动。
我的服务文件如下:
[Unit]
Description=VPN Start
Wants=network-online.target
After=network.target network-online.target
[Service]
Environment=DISPLAY=:0.0
Environment=XAUTHORITY=/home/pi/.Xauthority
Type=forking
ExecStart=/bin/bash /home/pi/myscript.sh
Restart=on-abort
User=pi
Group=pi
[Install]
WantedBy=multi-user.target
systemctl status myservice.service
包括以下消息:
pi: TTY=unknown ; PWD=/home/pi ; USER=root ; COMMAND=/usr/sbin/vpnc myhost
我已经完成了:
systemctl enable systemd-networkd-wait-online
似乎没有帮助。
答案 0 :(得分:1)
可能要晚了,但是也许其他人偶然发现了这一点。
尽管我通过GUI配置了VPN,但我遇到了同样的问题。
我最终发现,我的/etc/resolv.conf
是一个配置文件的符号链接,一些我有时使用的第三方VPN软件已安装。尽管该文件中的条目看起来不错,但只能工作,但是当我删除/etc/resolv.conf
符号链接并创建一个新的普通文件时。
TL; DR:
/etc/resolv.conf
/etc/resolv.conf
并使用您的首选配置填充它那之后,我的VPN就像一个魅力。