为什么Linux不需要碎片整理

image

如果你是Linux用户,你可能听说你不需要对Linux文件系统进行碎片整理。 您还会注意到Linux发行版没有磁盘碎片整理实用程序。 但是为什么呢?

为了理解为什么Linux文件系统在正常使用中不需要碎片整理 - 而Windows则需要了解为什么发生碎片以及Linux和Windows文件系统如何以不同的方式工作。

什么是碎片

许多Windows用户,即使没有经验的用户,相信定期对其文件系统进行碎片整理将加快他们的计算机。 很多人不知道是为什么这样。

简而言之,硬盘驱动器上具有多个扇区,每个扇区可以包含小块数据。 文件,特别是大文件,必须存储在许多不同的扇区中。 假设您将多个不同的文件保存到文件系统中。 这些文件中的每一个将被存储在连续的扇区簇中。 稍后,您更新最初保存的文件之一,增加文件大小。 文件系统将尝试将文件的新部分存储在原始部分的旁边。 不幸的是,如果没有足够的不间断房间,文件必须拆分成多个部分 - 这一切都对你透明。 当硬盘读取文件时,它的磁头必须在硬盘驱动器上的不同物理位置之间跳过,以读取每个扇区 - 这减慢了事情。

碎片整理是一个密集的过程,它移动文件的位以减少碎片,确保每个文件在驱动器上是连续的。

image

当然,这对于固态驱动器不同,固态驱动器没有运动部件,不应该进行碎片整理 - 对SSD进行碎片整理实际上会缩短其使用寿命。 并且,在最新版本的Windows上,你不需要担心对文件系统进行碎片整理 - Windows会自动为您执行此操作。 有关碎片整理最佳做法的详细信息,请阅读本文:

HTG解释:你真的需要碎片整理您的电脑吗?

Windows文件系统如何工作

微软的旧FAT文件系统 - 默认情况下在Windows 98和ME上最后出现,虽然它仍然在USB闪存驱动器上使用 - 不尝试智能排列文件。 将文件保存到FAT文件系统时,会将其保存为尽可能接近磁盘的开头。 当您保存第二个文件时,它会将其保存在第一个文件之后 - 依此类推。 当原始文件的大小增长时,它们将总是碎片化。 没有附近的房间,他们成长。

Microsoft的较新的NTFS文件系统,它的方式到消费者PC与Windows XP和2000,试图有点更智能。 它在驱动器上的文件周围分配更多的“缓冲区”可用空间,虽然,任何Windows用户都可以告诉你,NTFS文件系统随着时间的推移仍然会碎片化。

由于这些文件系统的工作方式,它们需要进行碎片整理,以保持最佳性能。 Microsoft已通过在最新版本的Windows上的后台运行碎片整理过程来缓解此问题。

image

Linux文件系统如何工作

Linux的ext2,ext3和ext4文件系统 - ext4是Ubuntu和大多数其他当前Linux发行版使用的文件系统 - 以更智能的方式分配文件。 Linux文件系统不是将多个文件放在硬盘上彼此靠近,而是将不同的文件分散在磁盘上,从而在它们之间留下大量可用空间。 当文件被编辑并需要增长时,通常有足够的可用空间用于文件增长。 如果发生碎片,文件系统将尝试移动文件以减少正常使用中的碎片,而不需要碎片整理实用程序。

image

由于这种方法的工作方式,如果您的文件系统填满,您将开始看到碎片。 如果它是95%(甚至80%)已满,你会开始看到一些碎片。 然而,文件系统被设计为避免在正常使用中的碎片。

如果你在Linux上有碎片问题,你可能需要一个更大的硬盘。 如果你实际上需要对文件系统进行碎片整理,最简单的方法可能是最可靠的:将所有文件从分区中复制,从分区中删除文件,然后将文件复制到分区上。 当您将文件复制回磁盘时,文件系统将智能地分配文件。


您可以测量与Linux文件系统的碎片化fsck命令 -查找输出“非连续的inode”。

赞 (0)
分享到:更多 ()