Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python OpenVPN脚本_Python_Subprocess_Openvpn - Fatal编程技术网

Python OpenVPN脚本

Python OpenVPN脚本,python,subprocess,openvpn,Python,Subprocess,Openvpn,我试图为linux编写一个python脚本来启动openvpn,但在让openvpn开始使用子流程时遇到了一个问题 我正在使用以下命令启动openvpn: openvpn_cmd = ['sudo', 'openvpn', '--config', 'client.cfg', '--auth-user-pass', 'hmaauth.conf'] prog = subprocess.Popen(openvpn_cmd) 但我从OpenVPN返回以下错误: 选项错误:--nobind没有意义,除非

我试图为linux编写一个python脚本来启动openvpn,但在让openvpn开始使用子流程时遇到了一个问题

我正在使用以下命令启动openvpn:

openvpn_cmd = ['sudo', 'openvpn', '--config', 'client.cfg', '--auth-user-pass', 'hmaauth.conf']
prog = subprocess.Popen(openvpn_cmd)
但我从OpenVPN返回以下错误:

选项错误:--nobind没有意义,除非与--remote一起使用

在运行subprocess命令之前,配置文件直接从VPN服务网站下载,因此我不能(也不应该)更改配置中的任何内容

我听说如果不使用root权限运行,可能会发生这种情况,但我已经在这样做了

有人对我为什么会出现这个错误有什么建议吗?

我有一个正在运行的shell脚本,它使用以下命令启动openvpn:

sudo openvpn --config client.cfg --auth-user-pass hmaauth.conf
这正是我在python脚本中所拥有的


提前谢谢你的建议。

好吧,这里的问题是我很笨。我下载的配置文件没有指定VPN的远程服务器,现在我理解了“无远程”错误


现在我已经解决了,我们可以开始了。

也许可以尝试使用openvpn的完整路径和配置文件?从命令行执行
openvpn
命令吗?我在这里看不到任何python问题,除了您可能忘记更改到正确的目录。python脚本与配置文件位于同一目录中,因此这不应该是问题。我也在挠头,我看不出python代码有任何问题。同样的命令在shell脚本中也能正常工作…Gfei,当你以sudo的方式运行某个东西时,环境变量是不同的。嗯,我想等有机会的时候我会尝试添加完整路径。我以前从未遇到过那个问题。