当以接近满容量运行时,ext3 是否会产生碎片?

当以接近满容量运行时,ext3 是否会产生碎片?

我知道 ex3 和其他日志文件系统的主要吸引力之一是它们不会像 NTFS 那样产生碎片。

我曾经听人说过,ext3 在接近满负荷运行一段时间后实际上会产生碎片。这是真的吗?至少一年来,我一直以 95% 以上的容量运行我的主分区 ext3,我想知道这是否真的会造成碎片,如果是,它会自动清理吗?

答案1

从技术上讲,是的,如果可用空间不多,它会产生碎片,而且它不会自行清理。要检查分区的碎片级别,请执行以下操作:

fsck -nvf /dev/sda1 # replace sda1 with the relevant partition

并查看特定文件的碎片程度:

filefrag -v /path/to/file

这里是一篇关于如何对 Linux 系统进行碎片整理的文章,但它可能不会对您的系统造成明显的影响,因此您不必担心。

如果你是真的感兴趣的,本文它的后续行动对我理解文件系统的工作原理非常有帮助。

答案2

事情是这样的,如果你想找出答案,只需对驱动器进行 fsck 操作即可。换句话说,将其插入,找出它的“名称”,除非您有多个硬盘驱动器,否则它通常是 /dev/sdb,运行 fdisk -l 以获取分区号,最后运行 e2fsck -f /dev/$partition。

Ex: e2fsck -f /dev/sdb1


e2fsck 1.41.12 (17-May-2010)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/dataSet/oldRoot: 295731/1310720 files (2.7% non-contiguous), 2034611/5242880 blocks

不连续的注释是碎片百分比。在旧的 ext2 分区上,我看到这个数字相当高,但是对于 ext3 和 ext4,我通常从未看到它超过个位数。与通常约为 40% 的 NTFS 卷相比,这是一个可以忽略不计的碎片量。

相关内容