/ tmp使用100%文件在哪里?


13

在Centos 6.3服务器上,我注意到/ tmp不再具有可用空间来存储文件。

[root @]#df -h
已使用的文件系统大小可用百分比已安装在
/ dev / mapper / vg0-lv_root
                       99G 11G 84G 12%/
tmpfs 16G 0 16G 0%/ dev / shm
/ dev / sda1 194M 65M 120M 35%/启动
/ dev / mapper / vg0-lv_tmp
                       97M 92M 704K 100%/ tmp
/ dev / mapper / vg1-lv0 50G 180M 47G 1%/ mnt / ssd2

但是/ tmp中什么都没有

[root @]#ls -Sahl / tmp |更多
总计10K
dr-xr-xr-x。25 root root 4.0K Mar 16 04:29 ..
drwxrwxrwt。3 root根3.0K Mar 16 03:32。
drwx ------ 2 root root 1.0K 3月16日04:28 mc-root

我的问题是:怎么可能?/ tmp使用了什么安装空间?我该如何清洁呢?


df -h告诉您Used = 0 ...
Brigo

Answers:


14

您应该lsof /tmp用来查看当前打开的文件。

如果删除文件,而软件仍然具有锁定功能,则不会再显示该文件,但仍会为其分配高清空间。


所有/ tmp空间都被许多威胁所占用,例如:php-fpm 2186 nginx DEL REG 253,3 12 /tmp/apc.7mboJ4
Ken Tang

我的服务器带有nginx + php-fpm + apc,因此看起来/ tmp分区根本没有足够的空间...
Ken Tang

我发现apc.ini这行:mktemp样式的file_mask传递给mmap模块。apc.mmap_file_mask = / tmp / apc.XXXXXX我认为将这一行更改为/var/tmp/apc.XXXXXX?
Ken Tang

1
当您检查LSOF结果时,“ DEL”将使您了解现在仅存在于内存中的文件。重新启动软件堆栈(即:nginx,php等)应该可以清除高清空间问题。您说得对,100MB不够用
CloudWeavers 2013年

一个替代的命令lsof /tmp是命令fuser -vm /tmp
jdknight

3

那是一个非常小的/ tmp分区。

显示输出,lsof /tmp以查看哪些进程在那里有打开的文件。停止相关过程应释放空间。


<pre> [root @]#lsof / tmp命令PID用户FD类型设备大小/关闭节点名称php-fpm 2185 root DEL REG 253,3 12 /tmp/apc.7mboJ4 php-fpm 2186 nginx DEL REG 253,3 12 /tmp/apc.7mboJ4 php-fpm 2187 nginx DEL REG 253,3 12 /tmp/apc.7mboJ4 php-fpm 2188 nginx DEL REG 253,3 12 /tmp/apc.7mboJ4 php-fpm 2189 nginx DEL REG 253,3 12 /tmp/apc.7mboJ4 php-fpm 2190 nginx DEL REG 253,3 12 /tmp/apc.7mboJ4 php-fpm 2253 nginx DEL REG 253,3 12 /tmp/apc.7mboJ4 ... </ pre>
肯Tang
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.