Linux错误-error writing to /tmp/ccwAjc9Z.s: No space left on device

时间:2019-08-20 17:58:10  来源:igfitidea点击:

原因可能是:

(1) /tmp分区的磁盘空间可能已满

(2) /tmp是一个新的挂载分区,这实际上不是更早的时候。

解决方法:

按照下面的步骤进行排查

运行df-h命令,如果/tmp已满(100%)。从/tmp中删除文件/目录。

rm -fr /tmp/*

如果仍然存在问题, 检查分区。
有时候服务器可能会因为分区或内存的问题,而做出非常不寻常的行为。

比如/tmp挂载在spool分区 overflow。

root@server:~# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/vda         20G   13G  6.5G  66% /
udev            494M  4.0K  494M   1% /dev
tmpfs           200M  212K  199M   1% /run
none            5.0M     0  5.0M   0% /run/lock
none            498M     0  498M   0% /run/shm
overflow        1.0M     0  1.0M   0% /tmp
root@server:~#

在这种情况下,只需使用以下两个命令卸载/tmp。

umount /tmp

mount -a

现在重新运行df-h命令。检查挂载的分区是否正确匹配。

如果分区仍显示磁盘空间已满。使用下面的命令查看是否有删除的文件还被进程占用着。

lsof | grep deleted|grep tmp