今天在小内存的NAT VPS上安装应用,出现如下报错:

Failed to reload daemon: Refusing to reload, not enough space available on /run/systemd. Currently, 15.6M are free, but a safety buffer of 16.0M is enforced.

根据错误信息,是 /run/systemd 目录空间不够。/run 目录是系统在内存中划分的虚拟文件夹,类型为tmpfs,可用 df -h 查看其可用空间:

root@coal3:~# df -h
文件系统        容量  已用  可用 已用% 挂载点
udev             73M     0   73M    0% /dev
tmpfs            18M  2.9M   15M   17% /run
/dev/sda1       3.9G  3.6G  109M   98% /
tmpfs            84M     0   84M    0% /dev/shm
tmpfs           5.0M     0  5.0M    0% /run/lock
tmpfs            84M     0   84M    0% /sys/fs/cgroup
tmpfs            17M     0   17M    0% /run/user/0

可以看到, /run 目录的可用空间确实不足。

解决方法是修改 /run 目录的配置,即在 /etc/fstab 里增加如下一行:

tmpfs /run tmpfs nosuid,noexec,size=20M,nr_inodes=4096 0 0

我们这里设置 /run 的空间大小为20M,可按照自己的需求修改。但根据报错提示,这个值不应该小于16M。

参考

  1. Linux查看硬盘信息方法总结
  2. CentOS 7系统增加swap