lofidevops Asked: 2018-02-17 20:35:38 +0800 CST2018-02-17 20:35:38 +0800 CST 2018-02-17 20:35:38 +0800 CST 如何停止守护程序的 OpenVPN 连接? 772 我开始了一个 VPN 连接sudo openvpn --daemon --config connection.ovpn。有没有办法在不使用ps搜索进程然后kill自己搜索的情况下终止此连接? command-line openvpn 4 个回答 Voted Best Answer Folfy 2018-02-18T09:05:44+08:002018-02-18T09:05:44+08:00 由于 OpenVPN 似乎没有为此提供任何自己的功能,因此您可能正在寻找pkill <process-name>,它将搜索与给定名称匹配的所有进程并杀死它们。 如果您有多个实例正在运行,但只想杀死一个特定的实例,则该-f选项允许您匹配完整的进程调用,包括参数,例如pkill -f "openvpn --config connection.ovpn". 查看ps xor的输出pgrep -lf <process-name>(与 相同pkill,但不会杀死它们,因此本质上类似于ps | grep <name>),以了解启动守护程序的参数。 user6087223 2019-01-04T03:31:08+08:002019-01-04T03:31:08+08:00 来自https://openvpn.net/community-resources/how-to/ 控制正在运行的 OpenVPN 进程在 Linux/BSD/Unix 上运行 OpenVPN 接受几个信号: SIGUSR1 — Conditional restart, designed to restart without root privileges SIGHUP — Hard restart SIGUSR2 — Output connection statistics to log file or syslog SIGTERM, SIGINT — Exit 使用 writepid 指令将 OpenVPN 守护进程的 PID 写入文件,以便您知道将信号发送到哪里(如果您使用 initscript 启动 openvpn,则该脚本可能已经在 openvpn 命令行上传递了 –writepid 指令)。 所以,你应该使用 kill 命令,并使用 arg -writepid 启动 openvpn。 Pedro 2018-02-20T05:53:13+08:002018-02-20T05:53:13+08:00 不,您将需要终止该进程。公平地说,一个守护进程管理脚本可以做到这一点。您可以使用 pgrep 或 pkill 让您的生活更轻松。 Ruchira 2020-09-26T04:52:54+08:002020-09-26T04:52:54+08:00 sudo openvpn3 session-manage --disconnect --config $'client'.ovpn 将客户端替换为相应的名称。这将关闭会话。
由于 OpenVPN 似乎没有为此提供任何自己的功能,因此您可能正在寻找
pkill <process-name>
,它将搜索与给定名称匹配的所有进程并杀死它们。如果您有多个实例正在运行,但只想杀死一个特定的实例,则该
-f
选项允许您匹配完整的进程调用,包括参数,例如pkill -f "openvpn --config connection.ovpn"
.查看
ps x
or的输出pgrep -lf <process-name>
(与 相同pkill
,但不会杀死它们,因此本质上类似于ps | grep <name>
),以了解启动守护程序的参数。来自https://openvpn.net/community-resources/how-to/
控制正在运行的 OpenVPN 进程在 Linux/BSD/Unix 上运行
OpenVPN 接受几个信号:
使用 writepid 指令将 OpenVPN 守护进程的 PID 写入文件,以便您知道将信号发送到哪里(如果您使用 initscript 启动 openvpn,则该脚本可能已经在 openvpn 命令行上传递了 –writepid 指令)。
所以,你应该使用 kill 命令,并使用 arg -writepid 启动 openvpn。
不,您将需要终止该进程。公平地说,一个守护进程管理脚本可以做到这一点。您可以使用 pgrep 或 pkill 让您的生活更轻松。
将客户端替换为相应的名称。这将关闭会话。