Linux为什么不需要碎片整理?
如果你是一个Linux用户,你可能会听说Linux的文件系统不需要碎片整理。你也可能会注意到Linux的发行版本也都没有磁盘碎片整理的功能。这是为什么呢?
要理解为什么Linux的文件系统不会想Windows的文件系统一样产生碎片,你首先要明白碎片到底是如何产生的,还有这两大操作系统的文件系统的工作方式到底有什么不同。
什么是磁盘碎片?
很多Windows的用户,甚至包括一些没有经验的用户,都相信定时整理文件系统中的碎片会让他们的电脑运行得更快。但他们都不知道这是为什么。
简单来说,一个硬盘驱动器里面包含了很多扇区,每一个扇区都可以存储一小块数据。对于文件,尤其是比较大的文件来说,他们必须要存储在很多不同的扇区内。假设你的文件系统中有很多不同的文件,每一个文件都被存储在连续的扇区群中。然后,你对增加了其中某一个文件的大小。文件系统首先会尝试对该文件新增加的部分存储在紧挨着原来的扇区群的某个扇区中。但是如果当中没有足够的连续扇区,这个文件就必须要被分解成多个小块,这些操作对于你来说都是可见的。当你的硬盘读取这些文件的时候,他的磁头必须在不同的物理位置间跳转以读取连续的扇区群,这会降低它的速度。
碎片整理就是一个通过逐位(位是文件在磁盘中存储的最小单位)移动文件来减少碎片的精密的过程,以此来确保每一个文件在硬盘中都是连续存储的。
当然,对于固态硬盘来说这又有点不一样,固态硬盘不需要移动文件也不需要碎片整理。因为对一个SSD(固态硬盘)做碎片整理会减少它的寿命。而且,在最新版本的Windows系统中,你也不再需要为碎片整理担心,因为Windows会自动帮你完成。
Windows的文件系统如何工作
从前微软使用的FAT文件系统——最后一次作为默认系统被看到是在Windows 98和ME,尽管这个系统还在USB驱动器中使用——并不能够很好地排列文件。当你在FAT文件系统中保存文件时,它会尽可能地将文件排列在磁盘的首部。当你存放下一个文件时,它会将这个文件直接存放在第一个文件的后面,以此类推。所以当文件变大,永远都会有碎片产生,因为文件的旁边已经没有空间来存放增加的部分。
微软在Windows XP和2000中使用的较新的NTFS文件系统就尝试变得更聪明一点。这个文件系统会在文件周围放置更多名为”缓冲区“的自由空间,但是,任何一个Windows用户都会告诉你,NTFS文件系统总有一天也会产生碎片的。
因为文件系统这样的表现,他们需要碎片整理来保持性能。微软只能在最新版的Windows系统中通过在后台自动运行碎片整理程序来减轻这个问题。
Linux的文件系统如何工作
Linux的ext2,ext3,ext4文件系统——ext4是Ubuntu和目前大多发行版所采用的文件系统——会以一种更加智能的方式来放置文件。Linux的文件系统会将文件分散在整个磁盘,在文件之间留有大量的自由空间,而不是像Windows那样将文件一个接一个的放置。当一个文件被编辑了并且变大了,一般都会有足够的自由空间来保存文件。如果碎片真的产生了,文件系统就会尝试在日常使用中将文件移动来减少碎片,所以不需要专门的碎片整理程序。
因为这样的工作方式,你可能会在你的文件系统塞满之后看到碎片。如果文件系统95%(甚至80%)的空间被占用了,你就会开始看到一些碎片。然而,这样的文件系统本来就是设计来在普通使用中减少碎片的。
如果你真的在Linux上出现了碎片的烦恼,你可能就需要一个更大的硬盘了。如果你真的需要对一个文件系统做碎片整理,最简单的可能也是最可靠的方法就是将所有文件拷贝出来,然后清空原来的分区,再将文件拷贝回去。文件系统就会在你拷贝回去的过程中智能地将文件放置好。
你可以使用fsck命令来检测一下一个Linux文件系统的碎片化程度,只需要在输出中查看非连续i节点个数(non-contiguous inodes)就可以了。
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/58126.html
linuxUbuntuwindows微软相关文章
- Linux端口操作指南:完整命令汇总(linux端口命令大全)
- Linux 中查看变量的方法(linux变量查看)
- 体验Linux:不需要花一分钱!(linux系统多少钱)
- Linux界面化让操作更加便捷(linux界面工具)
- Linux之所以安全:不可忽视的安全策略(linux为什么安全)
- Linux分支:探索未知之旅(linux的分支)
- 版本Linux分类及其分支版本介绍(linux的分支)
- Linux之旅:探索分支的精彩世界(linux的分支)
- 使用Linux进行蓝牙开发需要注意什么?(linux下蓝牙开发)
- 揭秘:Linux运行慢的背后原因(为什么linux运行慢)
- Linux系统快速反弹提权大法(linux反弹提权脚本)
- 操作系统U盘启动的Linux可以更简单地安装和使用(可以装u盘的linux)
- 探索 Linux 下的进程管理(进程linux)
- Linux 命令示例:全面解析与应用(linux命令实例大全)
- 25字文章标题:为什么使用Linux? Linux 至少需要的必备知识(linux至少需要)
- Linux内核优化:提高系统稳定性与性能(linux内核优化)
- 简单易懂的方法:Linux下如何取消磁盘的挂载操作(linux磁盘取消挂载)
- 深入解读Linux企业版:为什么是企业级操作系统的首选?(linux企业版本)
- Linux轻松搬运:学会命令移动文件夹(linux命令移动文件夹)
- 探索 Linux 下如何优化大磁盘分区方案(linux 大磁盘分区)
- 原子Linux:极简,高性能的计算机操作系统(atomic linux)
- Linux下快速找到你需要的内容(linux查找内容)
- 使用Linux可视化界面命令操作简单易上手(linux可视化界面命令)