pradeepchhetri Asked: 2019-08-23 17:49:37 +0800 CST2019-08-23 17:49:37 +0800 CST 2019-08-23 17:49:37 +0800 CST systemd:达到文件描述符限制时重新启动服务 772 我有一个泄漏文件描述符的服务。它通过 systemd 进行管理。有没有一种方法可以在该服务遇到特定数量的文件描述符时重新启动该服务。任何指针都会非常有帮助。 linux 1 个回答 Voted Best Answer vx3r 2019-08-24T00:03:21+08:002019-08-24T00:03:21+08:00 正如 Lenniey 所建议的(我正在编写脚本)。您可以创建另一个systemd服务和计时器来进行检查。 您的脚本可能看起来像 #!/bin/bash SERVICE="sshd.service" LIMIT=9 PID=$(systemctl show ${SERVICE} | grep ExecMainPID|cut -d '=' -f2) NBFD=$(ls -l /proc/${PID}/fd | wc -l) if [[ ( $NBFD > $LIMIT ) ]] ; then echo "restarting the service: ${NBFD} > ${LIMIT}" systemctl restart ${SERVICE} else echo "service fd limit ok: ${NBFD} < ${LIMIT}" fi 然后创建一个service运行脚本并timer每X分钟运行一次服务
正如 Lenniey 所建议的(我正在编写脚本)。您可以创建另一个
systemd
服务和计时器来进行检查。您的脚本可能看起来像
然后创建一个
service
运行脚本并timer
每X
分钟运行一次服务