Bootstrap

systemctl启动服务空间不足的问题

一、描述

使用systemctl重启服务时显示空间不足,但是实际的空间是足够的。有多种表现形式,但一般都会显示空间不足,以下是一种可能情况:

Failed to add /run/systemd/ask-password to directory watch: No space left on device

二、解决

1、临时解决

echo 1048576 > /proc/sys/fs/inotify/max_user_watches

不要使用vim去编辑文件,因为无法写入

2、持久解决

先执行临时解决的方法解决问题

再编辑/etc/sysctl.conf文件

vim /etc/sysctl.conf

追加以下内容:

fs.inotify.max_user_watches=1048576

三、问题根源

1、红帽论坛讨论

894483 – systemctl reports no space left on device due to inotify “max_user_watches” limit (redhat.com)

2、原因

Crashplan备份服务是最可能的罪魁祸首。它使用了许多inotify手表,并最终将它们全部吃掉。

3、其他

实现机理未知,等待之后了解systemd原理后再进行探索

;