我知道Windows文件系统对碎片非常敏感,Unix(如UFS,ZFS,ext3或ext4)并不那么敏感。
但是,是否有理由对这些文件系统进行碎片整理呢?
如果是这样,那么有什么工具可用?
引用维基百科关于Ext3文件系统的页面
现代Linux文件系统通过将文件中的所有块保持在一起,即使它们不能存储在连续扇区中,也至less保持碎片。 有些文件系统,如ext3,有效地分配空闲块最接近文件中的其他块。 因此,不必担心Linux系统中的碎片
实际上,NTFS对碎片并不敏感。 NTFS比FAT32要好得多 – 这是一个完全现代化的文件系统。
自从1996年以来,我一直在家里运行Linux,并且从来没有对任何文件系统进行碎片整理。 我从来没有这样的需要。 我在这个方向上做的最多的事情是关注我将要放在一个文件系统上的那种文件,并且当我使用mkfs
时候使用适当的选项。 例如,如果文件系统主要包含大文件,我将使用更大的块大小。 如果我正在创build一个巨大的文件系统,但是我知道它永远不会超过1,000,000个文件,那么我将使用-N 1000000
选项来限制inode的数量。 一般来说,如果一个特定types的文件存在,我将在创build时调整文件系统的任务。
你不需要整理碎片。 但是,如果你仍然想要这样做,你总是可以使用摇 。
虽然ext2和ext3不提供它(通常需要less一些,因为他们保持文件相对在一起)ext4 提供碎片整理 。 本文讲述了e4defrag程序。 但ext4是一个新的文件系统。
不过,与windows相比,linux文件系统在不分片的情况下要好得多,所以我不用担心。
对Linux文件系统进行碎片整理的唯一好处是缩小虚拟硬盘。
零填写未使用的空间,碎片整理,然后从虚拟机pipe理器压缩虚拟磁盘。
您可以对XFS文件系统进行碎片整理(使用xfs_fsr [dev|file]
)和btrfs(使用btrfs filesystem defragment [file]
至于所有其他,只要确保你至less有80%的免费或几十千兆字节(以较小者为准),你不应该担心碎片整理。