我有一个 systemd 服务,每当 Chromium 浏览器打开/启动时都必须重新启动该服务。
[Unit]
Description=Load cgroup configs
After=multi-user.target
[Service]
Type=forking
ExecStartPre=/bin/echo "Processing /etc/cgconfig.conf ..."
ExecStartPre=/usr/sbin/cgconfigparser -l /etc/cgconfig.conf
ExecStartPre=/bin/echo "Processing /etc/cgrules.conf ..."
ExecStart=/usr/sbin/cgrulesengd --logfile=/var/log/cgrulesengd.log
Restart=on-failure
[Install]
WantedBy=multi-user.target
该服务用于处理配置文件,这些配置文件用于使用 CGroup 限制 Chromium 浏览器的 CPU 和内存使用量。
该服务在启动时激活,然后当我打开 chromium 浏览器并运行以下命令时,它不会返回任何内容。
cat /sys/fs/cgroup/cpu/browsers/tasks
cat /sys/fs/cgroup/memory/browsers/tasks
但随后我必须手动重新启动该服务service <service_name> restart
。之后,上述命令返回 Chromium 浏览器使用的 PID。例如
5314
5347
5349
5403
5603
我如何自动化此服务以在 chromium 启动时自动重新启动?而且我不必一次又一次手动重新启动服务。
答案1
如果您正确设置规则,您应该能够执行此操作,而无需重新启动此服务。
其中一些资源可能会有帮助: