【问题标题】:File bigger than the size of the partition it's in文件大于其所在分区的大小
【发布时间】:2019-02-16 07:40:12
【问题描述】:

我有一台服务器,其中/ 分区内有一个 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

【问题讨论】:

标签: partition


【解决方案1】:

我有一台服务器,其中/ 分区内有一个 30GB 的文件,尽管df -h 将此分区列为使用 11GB。

实际上,它将此文件系统列为使用 5 GB,而不是 11 GB。

为什么会这样?

如果不知道该文件的内容是什么、文件系统是什么、文件是如何创建的等等,这是不可能回答的。

有执行重复数据删除的文件系统。如果有相同内容的块,则将它们替换为链接,这样它们就只占用一个块的空间。因此,如果文件系统上存在大量重复数据,则文件在磁盘上占用的空间很可能比其重复内容少得多。

有执行压缩的文件系统。如果文件系统上存在大量冗余,那么压缩将大大减少数据,并且文件占用的磁盘空间很容易比未压缩的内容少得多。

许多文件系统支持稀疏文件。稀疏文件是其中带有“漏洞”的文件。这些漏洞将被读取为一长串二进制零,并且在技术上是文件内容的一部分,但它们不存储在磁盘上。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-24
    • 2017-09-24
    • 2012-02-03
    • 1970-01-01
    • 2020-06-01
    相关资源
    最近更新 更多