如果你是一個Linux用戶,你可能聽說過,不需要對你的Linux文件系統(tǒng)進(jìn)行碎片整理。你可能還會注意到,Linux發(fā)行版并沒有附帶磁盤碎片整理工具。這是為什么呢?想要知道為什么在正常使用中,Linux文件系統(tǒng)不需要進(jìn)行碎片整理,而Windows要。你需要了解為什么會生成碎片,而Linux和Windows這兩個文件系統(tǒng),它們分別是如何工作的。 什么是碎片 許多Windows用戶,即使沒有太多經(jīng)驗(yàn),我相信他們也會定期進(jìn)行碎片整理,來加速其電腦。為什么要這么做,許多人也不知道。 簡單的說,每個硬盤驅(qū)動器有許多的扇區(qū),每一個扇區(qū)都可以包含一些小的數(shù)據(jù)片段。對于特別大的文件,就必須存儲在許多不同的扇區(qū)里。再比方說文件系統(tǒng)中保存的一些不同的文件,其中每個文件都將存儲在連續(xù)空間的扇區(qū)里。后來,你更新你原先保存的文件,增加文件的大小。文件系統(tǒng)將會嘗試存儲文件的新增部分到原先扇區(qū)空間的旁邊。不幸的是,如果沒有足夠的連續(xù)空間,該文件必須被分割成多個片段 — 這就碎片生成的原因。當(dāng)你的硬盤讀取文件的時候,磁頭必須跳過硬盤上不同的物理位置之間來讀取每個扇區(qū)的數(shù)據(jù) — 這就是變慢的原因。 碎片整理是一個集中的過程,移動比特文件,以減少碎片,確保每個文件在驅(qū)動器上是連續(xù)的。 當(dāng)然,固態(tài)硬盤不同,它沒有移動部件,不應(yīng)該進(jìn)行碎片整理 - 對SSD進(jìn)行磁盤整理實(shí)際上會減少其使用壽命。此外,最新版本的Windows上,你不需要擔(dān)心整理你的文件系統(tǒng)碎片 - Windows會自動幫你做。 Windows文件系統(tǒng)是如何工作的 微軟舊的FAT文件系統(tǒng),最后一次看到默認(rèn)在Windows 98和ME,現(xiàn)在也使用在USB閃存盤上,它不能智能安排文件。當(dāng)你保存文件到FAT文件系統(tǒng)上,它會盡可能將其保存在接近磁盤開始的空間上。當(dāng)你保存第二個文件,它會保存緊接在第一個文件的后面, 以此類推。當(dāng)原始文件大小增長,附近沒有空閑空間為他們增長,他們總是會生成碎片。 微軟新的NTFS文件系統(tǒng),使用在Windows XP和2000上,似乎變得更智能一點(diǎn)兒,它給硬盤上的文件周圍分配了更多的“緩沖”自由空間。雖然,任何Windows用戶可以告訴你,隨著時間的推移,NTFS文件系統(tǒng)仍然會生成碎片。 由于使用這些文件系統(tǒng)進(jìn)行工作,他們需要進(jìn)行碎片整理,以確保其性能不下降。微軟最新版本的Windows可以在后臺定時運(yùn)行碎片整理來緩解了這個問題。 Linux文件系統(tǒng)是如何工作的 Linux有ext2、ext3和ext4文件系統(tǒng),ext4文件系統(tǒng)使用在Ubuntu和其他當(dāng)前的Linux發(fā)行版本中,它有著更智能的文件分配方式,而不是將多個文件相互靠近放在硬盤上。Linux文件系統(tǒng)分散在不同的文件磁盤,并留下了大量的自由空間。當(dāng)一個文件需要編輯增長,通常是會有足夠的空閑空間。如果碎片確實(shí)發(fā)生,文件系統(tǒng)將會試圖移動文件,來減少碎片。在正常使用情況下,不需要碎片整理工具。 如果你的文件系統(tǒng)已滿或是95%(甚至80%),你才可能開始看到一些碎片。總之,文件系統(tǒng)的設(shè)計,在正常使用過程中可以避免碎片的生成。 如果你的Linux上有碎片問題,你可能需要一個更大的硬盤。如果你確實(shí)需要整理文件系統(tǒng),最簡單的、最可靠的方法可能是:從分區(qū)中復(fù)制備份所有的文件,再從分區(qū)中清除所有文件,然后在將文件復(fù)制回到分區(qū)。這樣文件系統(tǒng)將會智能地分配文件復(fù)制到磁盤上。 你也可以使用 fsck 命令衡量Linux文件系統(tǒng)的碎片 - 尋找輸出“非相鄰節(jié)點(diǎn)”。 文/oschina |