df和du显示不一致
df/du显示磁盘可用大小不一致
1.维度不同(df剩余空间小于du)
du -sh * 和df -Th显示大小不一样,一般而言,df显示的使用空间要大于du
因为:当一个文件被删除的时候,在文件系统的目录中已经不可见了,所以du就不会再统计它了,然而如果此时还有运行的进程持有这个已经被删除了的文件的句柄,那么这个文件就不会真正在磁盘中被删除,分区超级块中的信息也就不会更改。这样df仍旧会统计这个被删除了的文件
2.文件实际已删除,实际进程还在
lsof |grep deleted
直接kill
不重启间接情况文件
对存在进程不能kill,通过文件句柄形式清理文件
ls -l /proc/PID/fd/* |greo "filename" //根据pid搜寻文件的句柄
echo >/proc/PID/fd/FD_NUM
3.磁盘碎片维度
yum install xfsdump
yum install xfslibs-dev
yum install xfsprogs
查看/dev/sdc1的碎片
xfs_db -c frag -r/dev/mapper/cl-root
返回结果:
[root@devhadoop228 /]# xfs_db -c frag -r
/dev/mapper/cl-root
actual 109661, ideal95641, fragmentation factor 12.78%
Note, this number islargely meaningless.
Files on this filesystemaverage 1.15 extents per file
可以看到,碎片占用率是12.78%
整理碎片
xfs_fsr /dev/mapper/cl-root
4.磁盘修复
xfs_repair -n /dev/xxx //检查
xfs_repair /dev/xxx //修复
[z ~]# xfs_
xfs_admin xfs_db xfs_fsr xfs_io xfs_metadump xfs_quota
xfs_bmap xfs_estimate xfs_growfs xfs_logprint xfs_mkfile xfs_repair
xfs_copy xfs_freeze xfs_info xfs_mdrestore xfs_ncheck xfs_rtcp
[rz ~]# xfs_repair -h
xfs_repair: invalid option -- 'h'
Usage: xfs_repair [options] device
Options:
-f The device is a file
-L Force log zeroing. Do this as a last resort.
-l logdev Specifies the device where the external log resides.
-m maxmem Maximum amount of memory to be used in megabytes.
-n No modify mode, just checks the filesystem for damage.
-P Disables prefetching.
-r rtdev Specifies the device where the realtime section resides.
-v Verbose output.
-c subopts Change filesystem parameters - use xfs_admin.
-o subopts Override default behaviour, refer to man page.
-t interval Reporting interval in seconds.
-d Repair dangerously.
-V Reports version and exits.