有什么方法可以检查哪个磁盘块真正被使用了?

有什么方法可以检查哪个磁盘块真正被使用了?

我用自由度检查 centos 的磁盘使用情况,然后我从这些工具中得到不同的结果。

[root@localhost home]# df -Th Filesystem Type Size Used Avail Use% Mounted on /dev/mapper/cl-root xfs 149G 31G 119G 21% / devtmpfs devtmpfs 32G 0 32G 0% /dev tmpfs tmpfs 32G 0 32G 0% /dev/shm tmpfs tmpfs 32G 41M 32G 1% /run tmpfs tmpfs 32G 0 32G 0% /sys/fs/cgroup /dev/vda1 xfs 1014M 178M 837M 18% /boot tmpfs tmpfs 6.3G 0 6.3G 0% /run/user/1000 tmpfs tmpfs 6.3G 16K 6.3G 1% /run/user/1001 [root@localhost /]# du -sh / 2>/dev/null 7.0G /

不过,我已重启系统多次,确保没有大文件被删除并重新计算。

这个问题确实困扰了我两天,所以我想知道有什么方法可以找出哪些磁盘块被使用了?如果可以,我能知道丢失的 23.3G 去哪儿了?

[root@localhost home]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT vda 252:0 0 150G 0 disk ├─vda1 252:1 0 1G 0 part /boot └─vda2 252:2 0 149G 0 part ├─cl-root 253:0 0 148.6G 0 lvm / └─cl-swap 253:1 0 412M 0 lvm [SWAP]

答案1

使用 xfs_fsr 清理磁盘碎片后,丢失的磁盘空间又回来了!

[root@localhost /]# xfs_db -c frag -r /dev/mapper/cl-root actual 430606, ideal 421725, fragmentation factor 2.06% Note, this number is largely meaningless. Files on this filesystem average 1.02 extents per file [root@localhost /]# xfs_fsr /dev/mapper/cl-root / start inode=0 [root@localhost /]# xfs_db -c frag -r /dev/mapper/cl-root actual 428060, ideal 421496, fragmentation factor 1.53% Note, this number is largely meaningless. Files on this filesystem average 1.02 extents per file [root@localhost /]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/cl-root 149G 7.0G 142G 5% / devtmpfs 32G 0 32G 0% /dev tmpfs 32G 0 32G 0% /dev/shm tmpfs 32G 41M 32G 1% /run tmpfs 32G 0 32G 0% /sys/fs/cgroup /dev/vda1 1014M 178M 837M 18% /boot tmpfs 6.3G 0 6.3G 0% /run/user/1000 [root@localhost /]# du -sh 6.8G . [root@localhost /]#

相关内容