我有这个问题:我设置了一个在注销时运行的脚本,但该脚本没有运行。
该脚本应该解决这个问题:关闭时,我收到消息:“正在为用户(名称)的会话(编号)运行停止作业”。这需要 90 秒才能超时,我没有选择杀死它。我不希望关机多花 90 秒。
这似乎是由 ProtonVPN 引起的。如果我按照这个调试指南,我可以看到一条日志消息,提示有问题的进程是openvpn:
Sep 26 18:25:44 ... systemd[1]: session-1.scope: Stopping timed out. Killing.
Sep 26 18:25:44 ... systemd[1]: session-1.scope: Killing process 16246 (openvpn) with signal SIGKILL.
如果我在关闭之前断开与 ProtonVPN 的连接,问题就消失了:
$ sudo protonvpn d
注意:我已将此应用程序添加到我的sudoers中,因此我无需输入密码即可 sudo 它。至少,这对我的启动脚本很有效。
我想要做的:设置一个脚本,在注销时自动断开与 VPN 的连接(通过运行sudo protonvpn d)。
所以我写了一个包含这个的脚本(没有别的):
sudo protonvpn d > ~/protonvpn.txt
我将输出通过管道传输到一个文件中,纯粹是为了验证脚本是否运行。我已经对脚本文件设置了执行权限,以便它可以运行:
-rwxrwxr-x 1 spectrum spectrum 35 Sep 24 18:48 shutdown.sh*
我可以从命令行手动运行脚本并生成文件~/protonvpn.txt。
我已经在系统设置 -> 启动和关机 -> 自动启动中设置了脚本以在注销时运行。脚本的符号链接出现在~/.config/plasma-workspace/shutdown/
. 但是当我注销时,该文件~/protonvpn.txt
不会生成。如果我在连接 VPN 时关闭,我仍然会得到 90 秒的超时。
难道我做错了什么?为什么我的脚本没有运行?
或者,您能否就如何断开与 VPN 的连接或以其他方式解决缓慢关机的问题给我任何其他建议?
提前致谢!
事实证明,我需要在我的脚本中使用完整路径:
...或者,如果我想要文本文件输出:
现在它似乎工作了。
感谢 forum.kde.org 上的 koffeinfriedhof提供此解决方案。