我需要从当前 cgroup 之外的 systemd 服务运行外部程序。我找到了一个systemd-run
可能会解决这个问题的工具,但我被 systemd 版本 204 卡住了,它还不可用。还有其他解决方案吗?
我的问题更详细:
应用程序捆绑在 debian 包中,并将作为 systemd 服务安装和运行。该服务稍后会下载较新版本的应用程序并运行dpkg -i myapplication.deb
。在安装升级过程中必须停止服务 - 但直到 cgroup 中的所有进程结束后才会停止。现在我们遇到了死锁,因为dpkg
它本身就在这个 cgroup 中运行。服务停止超时后,dpkg
被杀死并且未安装升级。