可能重复:
df和du的Linux根分区大小不同
在Ubuntu 12.04服务器上,普通用户无法再在/home创build或添加文件,遇到“设备上没有剩余空间”错误。
/home目录的容量为1.7TB,据我所知,在实际的数据存储或inode使用方面还远远不够。
df -h显示:
Filesystem Size Used Avail Use% Mounted on /dev/md2 1.0T 18G 955G 2% / udev 7.7G 4.0K 7.7G 1% /dev tmpfs 3.1G 320K 3.1G 1% /run none 5.0M 0 5.0M 0% /run/lock none 7.7G 0 7.7G 0% /run/shm cgroup 7.7G 0 7.7G 0% /sys/fs/cgroup /dev/md3 1.7T 1.7T 0 100% /home /dev/md1 496M 45M 426M 10% /boot
/home的确看起来相当饱满。
du -hs /homebuild议否则:
1.4G /home
没有出现inode问题 – df -i :
Filesystem Inodes IUsed IFree IUse% Mounted on /dev/md2 67108864 75334 67033530 1% / udev 2013497 527 2012970 1% /dev tmpfs 2015816 440 2015376 1% /run none 2015816 2 2015814 1% /run/lock none 2015816 1 2015815 1% /run/shm cgroup 2015816 9 2015807 1% /sys/fs/cgroup /dev/md3 113909760 105981 113803779 1% /home /dev/md1 131072 239 130833 1% /boot
我最近从/home删除了几千兆字节的应用程序caching和日志数据,但是这个数字在几十亿字节之内,远不及/home的容量。
更新1 :
du -hs --apparent-size /home 1.2G /home du -hs /home 1.4G /home
这里可能会发生什么?
检查文件仍然以写入模式打开:
lsof | awk '/deleted/ && $4 ~ /[0-9]+w/ { print $0 }'
你会看到这样的东西:
ossec-mai 1111 ossecm 4w REG 3,3 ... (deleted)
然后find仍然使用该文件的进程:
cd /proc/1111/fd ls -l 4
您可以释放空间,而无需重新启动服务,将大小降至零:
> /proc/1111/fd/4
试一试。