鱼C论坛

 找回密码
 立即注册
查看: 3742|回复: 5

[技术交流] 图文讲解 为什么 Linux不需要碎片整理

[复制链接]
发表于 2012-6-12 16:04:13 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 狼之舞蹈 于 2012-6-12 16:05 编辑

    如果你是一个Linux用户,你可能听说过,不需要对你的Linux文件系统进行碎片整理。你可能还会注意到,Linux发行版并没有附带磁盘碎片整理工具。这是为什么呢?想要知道为什么在正常使用中,Linux文件系统不需要进行碎片整理,而Windows要。你需要了解为什么会生成碎片,而Linux和Windows这两个文件系统,它们分别是如何工作的。

                               
登录/注册后可看大图


什么是碎片

许多Windows用户,即使没有太多经验,我相信他们也会定期进行碎片整理,来加速其电脑。为什么要这么做,许多人也不知道。

简单的说,每个硬盘驱动器有许多的扇区,每一个扇区都可以包含一些小的数据片段。对于特别大的文件,就必须存储在许多不同的扇区里。再比方说文件系统中保存的一些不同的文件,其中每个文件都将存储在连续空间的扇区里。后来,你更新你原先保存的文件,增加文件的大小。文件系统将会尝试存储文件的新增部分到原先扇区空间的旁边。不幸的是,如果没有足够的连续空间,该文件必须被分割成多个片段 — 这就碎片生成的原因。当你的硬盘读取文件的时候,磁头必须跳过硬盘上不同的物理位置之间来读取每个扇区的数据 — 这就是变慢的原因。

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


                               
登录/注册后可看大图

当然,固态硬盘不同,它没有移动部件,不应该进行碎片整理 - 对SSD进行磁盘整理实际上会减少其使用寿命。此外,最新版本的Windows上,你不需要担心整理你的文件系统碎片 - Windows会自动帮你做。Windows文件系统是如何工作的微软旧的FAT文件系统,最后一次看到默认在Windows 98和ME,现在也使用在USB闪存盘上,它不能智能安排文件。当你保存文件到FAT文件系统上,它会尽可能将其保存在接近磁盘开始的空间上。当你保存第二个文件,它会保存紧接在第一个文件的后面, 以此类推。当原始文件大小增长,附近没有空闲空间为他们增长,他们总是会生成碎片。微软新的NTFS文件系统,使用在Windows XP和2000上,似乎变得更智能一点儿,它给硬盘上的文件周围分配了更多的“缓冲”自由空间。虽然,任何Windows用户可以告诉你,随着时间的推移,NTFS文件系统仍然会生成碎片。由于使用这些文件系统进行工作,他们需要进行碎片整理,以确保其性能不下降。微软最新版本的Windows可以在后台定时运行碎片整理来缓解了这个问题。


                               
登录/注册后可看大图
  

Linux文件系统是如何工作的Linux有ext2、ext3和ext4文件系统,ext4文件系统使用在Ubuntu和其他当前的Linux发行版本中,它有着更智能的文件分配方式,而不是将多个文件相互靠近放在硬盘上。Linux文件系统分散在不同的文件磁盘,并留下了大量的自由空间。当一个文件需要编辑增长,通常是会有足够的空闲空间。如果碎片确实发生,文件系统将会试图移动文件,来减少碎片。在正常使用情况下,不需要碎片整理工具。   


                               
登录/注册后可看大图
  

如果你的文件系统已满或是95%(甚至80%),你才可能开始看到一些碎片。总之,文件系统的设计,在正常使用过程中可以避免碎片的生成。如果你的Linux上有碎片问题,你可能需要一个更大的硬盘。如果你确实需要整理文件系统,最简单的、最可靠的方法可能是:从分区中复制备份所有的文件,再从分区中清除所有文件,然后在将文件复制回到分区。这样文件系统将会智能地分配文件复制到磁盘上。你也可以使用 fsck 命令衡量Linux文件系统的碎片 - 寻找输出“非相邻节点”。






想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-6-13 23:24:39 | 显示全部楼层
学习、、、、学习、、、、、、、
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-6-13 23:35:28 | 显示全部楼层
linux在很多设计思想上还是比较先进的。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-7-11 20:49:15 | 显示全部楼层
有收获了些知识  其实我一直不懂ext4 ext3到底是什么格式 只在安装linux的时候遇到过 。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-7-12 12:03:37 | 显示全部楼层
好贴啊,以后要是多点这样的就好了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2014-10-21 16:30:54 | 显示全部楼层
:big
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-23 05:11

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表