问题:
执行crontab -e 之后,编辑完毕,:wq保存退出后
报出如下内容:
crontab: installing new crontab
/var/spool/cron/#tmp.XXXX9L2ZJV: No space left on device
crontab: edits left in /tmp/crontab.wIRHhv
解决:
考虑磁盘满的情况,执行df -h 发现 /var下还是有空间的。
再次执行df -i 发现 /var下使用是100%
df -i 是查看文件节点的,每个文件会占用一个索引节点,而总的索引节点是有限的,由于/var/spool/clientmqueue下有太多的垃圾文件,导致索引节点使用完毕。这些垃圾文件产生的原因是系统中有用户开启了 cron,而cron中执行的程序有输出内容,输出内容会以邮件形式发给cron的用户,而sendmail没有启动所以就产生了这些文件;
将此文件夹下的垃圾文件清理一下就可以了,在clientmqueue下执行ls | xargs rm -f
此后crontab -e时,记得将输出内容进行重定向,如下:
将crontab里面的命令后面加上> /dev/null 2>&1