Hard-Disk
如何在 Linux 上對我的 SSD 進行碎片整理?
本頁展示了碎片整理對 SSD 有益。我想這種類型的碎片整理必須具有修剪意識,以保持磁碟的使用壽命。我怎麼能在Linux上做到這一點?
編輯:評論指出這篇文章的內容是有問題的。
一般來說,您可以完全忽略碎片。對於不受 HDD 等尋軌時間影響的 SSD 而言更是如此。對 SSD 進行碎片整理只會浪費寫入周期。
儘管在某些極端情況下碎片會產生顯著影響,例如以隨機順序寫入的稀疏文件(就像某些 BitTorrent 客戶端所做的那樣),或者當磁碟耗盡可用空間時,當最後寫入的文件將由於沒有其他連續空間可以滿足需求,因此被分成數千個片段。
但那是個例外。它通常不會發生。大多數文件系統都非常擅長避免碎片化,而 Linux 核心則擅長避免碎片化帶來的不良影響。一旦多個程序同時讀/寫文件,磁碟將不得不同時無處不在。
Linux 沒有太多的碎片整理解決方案。XFS 具有
xfs_fsr
很好的功能,因此如果您絕對想使用碎片整理,XFS 是一個不錯的選擇。
filefrag
您可以使用或檢查文件碎片hdparm
:# filefrag debian-6.0.6-amd64-netinst.iso debian-6.0.6-amd64-netinst.iso: 4 extents found # hdparm --fibmap debian-6.0.6-amd64-netinst.iso debian-6.0.6-amd64-netinst.iso: filesystem blocksize 4096, begins at LBA 0; assuming 512 byte sectors. byte_offset begin_LBA end_LBA sectors 0 3003928 3072407 68480 35061760 2872856 2938391 65536 68616192 2171576 2302647 131072 135725056 56259072 56338047 78976
如果這不能為您提供數百或數千個範圍(片段),則無需擔心。
一種通用的碎片整理方法是製作文件的副本,然後用它替換原始文件,例如:
cp -a yourfile yourfile.defrag mv yourfile.defrag yourfile
您的文件系統應該有大量的可用空間,否則新文件與舊文件一樣碎片化的可能性很高。(更換前檢查新文件是否優於舊文件)。
但正如我所說,除非文件以某種方式出現非常糟糕的碎片情況,否則通常不需要這樣做。