我有一台服务器,其中/
分区中有一个30GB的文件,尽管df -h
将此分区列出为使用11GB。为什么会发生这种情况?
[root@APPSERVER21-S1 ~]# ls -l /etc/vinter/logs/
total 2046032
-rw-r--r-- 1 root root 3920496 Sep 11 14:35 PlusoftCRMIntegration-APISILVERNODE-1.log
-rw-r--r-- 1 root root 30823671719 Sep 11 15:13 rsp.appserver21-s1.apigoldnode-1.api-oi-gold.log
-rw-r--r-- 1 root root 406061056 Sep 11 15:13 rsp.appserver21-s1.apisilvernode-1.api-oi-silver.log
[root@APPSERVER21-S1 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 3.6G 0 3.6G 0% /dev
tmpfs 3.6G 0 3.6G 0% /dev/shm
tmpfs 3.6G 137M 3.4G 4% /run
tmpfs 3.6G 0 3.6G 0% /sys/fs/cgroup
/dev/mapper/vg_main-lv_root 16G 5.0G 11G 32% /
/dev/mapper/vg_dados-lv_dados 20G 33M 20G 1% /datastorage
/dev/mapper/vg_dados-lv_docker 80G 128M 79G 1% /var/lib/docker
/dev/xvdb1 497M 161M 337M 33% /boot
tmpfs 722M 0 722M 0% /run/user/0
答案 0 :(得分:1)
我有一台服务器,其中
/
分区中有一个30GB的文件,尽管df -h
将此分区列出为使用11GB。
实际上,它列出的文件系统使用的是5 GB,而不是11 GB。
为什么会这样?
如果不知道该文件的内容,文件系统是什么,如何创建文件等等,这是无法回答的。
有些文件系统执行重复数据删除。如果有内容相同的块,它们将被链接替换,因此它们仅占用一个块的空间。因此,如果文件系统上有很多重复的数据,则很可能文件在磁盘上的空间比它们的重复内容要少得多。
有些文件系统执行压缩。如果文件系统上有很多冗余,那么压缩将极大地减少数据量,并且文件很可能比未压缩的内容占用更少的磁盘空间。
许多文件系统支持稀疏文件。稀疏文件是其中带有“孔”的文件。这些空洞将被读取为一长串的二进制零,并且从技术上讲是文件内容的一部分,但它们不会存储在磁盘上。