LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1860|回复: 11

如何在linux整理磁盘碎片?

[复制链接]
发表于 2003-10-31 15:38:05 | 显示全部楼层 |阅读模式
如题,谢谢!
发表于 2003-10-31 15:58:59 | 显示全部楼层
在linux下不需要整理磁盘碎片
linux的碎片率在0.4%以下
windows才需要,它的碎片率突破5%是常事
发表于 2003-11-1 12:02:09 | 显示全部楼层

楼上的兄台答非所问

人家问的是如何整理,又不是问整理碎片的必要性。没有不能产生碎片的文件系统。但是对于一般用户而言确实没有必要考虑碎片问题。如果一定要整理的话可以看看这里:
http://www.linuxeden.com/edu/doctext.php?docid=2666
发表于 2003-11-1 18:04:11 | 显示全部楼层
……,楼上你给的链接是什么?
发表于 2003-11-1 18:53:45 | 显示全部楼层

不好意思

原来不是Linux的,sorry。
关于Linux的碎片整理,其实我们这里早就讨论过了。看看这个吧:
http://www.linuxsir.cn/forum.php ... 9%C6%AC%D5%FB%C0%ED
发表于 2003-11-1 19:22:56 | 显示全部楼层
似乎通常是不必要的

我看了哪个法国人的文章
大概知道可能这就是日志型文件系统的优势
linux在安排文件之前,会检查日志,找到一个恰当的地方来安放,而避免产生碎片
当然可能也会出现当时没有足够恰当的位置的时候
不过如果你的硬盘空间很大
没有经常读写很大很大的文件
估计很难产生多少碎片 
发表于 2003-11-2 12:28:19 | 显示全部楼层
应该是没有什么文件系统可以完全避免碎片的,除非你的硬盘无穷大。当你需要些一个大文件,但是硬盘上已经没有足够的连续空间时,必然会产生碎片。当然如果你不是经常创建、删除文件,可能这种情况很少会产生就是了。无论如何,linux的文件系统在这一点上做得还是比windows强。
发表于 2003-11-2 12:50:29 | 显示全部楼层
如果真是很大的檔案, 有多少會由頭至尾讀完?
发表于 2003-11-2 23:13:33 | 显示全部楼层
搞清楚一点,文件离散存放并非一定就是通常定义的“碎片”。
有两种情况才可以定义为典型的“碎片”
1。小的磁盘块无法被利用。这一点在现代操作系统中基本不存在,因为无论是内存还是外存,都是按页分配的。
2。文件离散存放以至于磁头无法连续读取,或者说,磁头花在移动和寻道上的时间远远大于连续读取有效数据的时间。

按照第二种定义,例如如果我有一个600M的文件,由于没有连续空间而被离散存放成6块,每块在80M ~ 120M不等,这并不能算作是碎片,因为区区的四次寻道时间根本可以忽略不计。
如果像fat那样,经常就是每4k就得换个地方读取,一个1M的文件得寻道上百次。那才叫碎片。
ntfs比fat好了很多,但是比ext3和reiserfs还是差的太多了。至于这文件系统存取优化的措施,和文件系统采用的数据结构有关,比如jfs和xfs是基于B+平衡树的文件系统,reiserfs是基于B*平衡树的文件系统。

日志系统是另外一个概念,它涉及的是文件系统安全性和健壮性的方面,和是否产生碎片无关。
发表于 2003-11-2 23:41:23 | 显示全部楼层
如果定义磁盘状态的某个连续程度,在这个程度以上可以叫做“无磁盘碎片”,在这个程度以下叫做“有磁盘碎片”。那么如果一种文件系统的算法能够保证系统文件分配使得磁盘状态一直保持在上面定义的“无磁盘碎片”的状况下,那么这个文件系统就是非常成功的,不会产生磁盘碎片的。如果一种文件系统的算法无法保证在任何状况下都使磁盘连续性保持在“无磁盘碎片”状态,那么这个文件系统就需要定期整理磁盘——比如fat就不用提了,ntfs刚出的时候微软对外的宣传也是“ntfs是无须整理磁盘碎片的文件系统”,可是后来不知道什么原因,ntfs的磁盘碎片状况仅仅是只比fat稍好一点点而已——不知道是不是微软对自己的狗屁算法估计过高了,呵呵。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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