找回密码
 骑士注册

QQ登录

微博登录

搜索
❏ 站外平台:

Linux中国开源社区 技术 查看内容

为什么Linux不需要磁盘碎片整理

2012-06-14 19:52    评论: 3 分享: 3    

Windows文件系统的工作原理

  微软老的FAT文件系统——最后一次使用是在Windows 98 和 Window ME上,可如今的U盘上还在使用它——并不会智能的管理文件。当你把一个文件存入FAT文件系统里时,系统会尽量的把它存到靠近磁盘开始的地方。当你存入 第二个文件时,它会紧接着第一个文件——一个接着一个。当原始文件体积变大后,它们一定会产生碎片。根本没有留给它们增长的空间。

  微软新的NTFS文件系统——使用在装有Windows XP和2000的PC机上——稍微智能了一点。它会在磁盘上在文件周围分配一些“缓冲”的空闲空间,尽管如此,任何Windows用户都会告诉你,经过一段时间的使用后,NTFS文件系统还是会形成碎片。

  由于这些文件系统的工作原理,它们注定需要进行碎片整理来保持高性能。微软在它最新的视窗系统里通过在后台运行一个磁盘碎片整理进程来解决这个问题。

https://dn-linuxcn.qbox.me/data/attachment/album/201206/14/1039044qat9kqfphkugdup.png

Linux文件系统的工作原理

  Linux的ext2, ext3, 和 ext4 文件系统 ——Ubuntu和大多数最新的Linux发布版中使用的是ext4——采用了一种更聪明的方法来存放文件。与把多个文件并排放在磁盘上不同,Linux 文件系统把所有文件都分散到了整个磁盘上,每两个文件之间都留有相当巨大的空闲空间。当文件被修改、体积增加时,它们通常有足够的空间来扩展。一旦有碎片 产生时,文件系统会尝试移动整个文件来消除碎片,所以你不需要一个碎片整理工具。

https://dn-linuxcn.qbox.me/data/attachment/album/201206/14/1039069ff9zn2djxjda39k.png

  因为这种工作方式,当磁盘快要装满时,你开始会发现有碎片开始产生。如果已用空间超过95%(甚至80%),你会发现碎片开始变多。但不管怎样,这个文件系统的设计会使正常情况下不产生碎片。

  如果你在Linux系统上遇到了磁盘碎片问题,你很可能需要一个更大的硬盘了。如果你真想整理一个文件系统,这最简单的方式也许是最可靠的方式:把文件从这个分区里考出,删除这些文件,然后考回这些文件。当你把文件考回硬盘时,文件系统会智能为文件分配存储空间。

  你可以使用 fsck 命令来查看Linux文件系统上的磁盘碎片情况——在输出结果里寻找“non-contiguous inodes”信息。

[本文英文原文链接:Why Linux Doesn’t Need Defragmenting ]

译文:http://www.aqee.net/why-linux-doesnt-need-defragmenting/

12
查看其它分页:

最新评论

我也要发表评论

微博评论 2012-06-14 13:05 回复
还一个问题,Linux作为服务器是经常要数据读写的,整理了马上就乱了,同时,碎片整理对Linux文件系统速度没多大改善

来自 Open-source-Chakra 的新浪微博
微博评论 2012-06-14 13:05 回复
又学习了……

来自 IT民工cc 的新浪微博
微博评论 2012-06-18 09:21 回复
回复@Open-source-Chakra:嗯,是的。

来自 Linux_cn 的新浪微博

收藏

返回顶部

分享到微信

打开微信,点击顶部的“╋”,
使用“扫一扫”将网页分享至微信。