LVM Thinpool ThinVolume 空閒區塊,回收空間

LVM Thinpool ThinVolume 空閒區塊,回收空間

我使用 LVM Thinvolumes 透過 iSCSI 網路啟動一組電腦。我有時會釋放這些機器上的空間。不幸的是,thinvolumes 上的空間沒有被釋放。所以我partclone時不時地進行分區,以釋放空間。在虛擬化中,您可以使用工具將未使用的空間清除,從而釋放空間。是否有類似或更好的方法透過 LVM 精簡池/精簡卷回收空間?

先致謝

答案1

LVM Thin 支援DISCARD,更廣泛地稱為TRIM。理論上應該可以透過 iSCSI 來實現這一點(有一個等效的 UNMAP 命令),但我還沒有找到任何相關內容。

在託管這些磁碟區的電腦上,您可以使用它fstrim來釋放可用空間。手冊頁甚至明確提到了它:

fstrim 用於已安裝的檔案系統,以丟棄(或「修剪」)檔案系統未使用的區塊。這對於固態硬碟 (SSD) 和精簡配置的儲存非常有用。

為此,Linux 需要支援檔案系統,並且該支援需要包括 TRIM。如果您的網路啟動電腦執行 Windows,則可能是 NTFS。顯然NTFS-3G支援TRIM。

fstrim僅在已安裝的檔案系統上運作。

它看起來像這樣:

放棄演示

更新:正如評論中所討論的,Linux SCSI 目標在其區塊後台儲存上提供了一個標誌來識別 SSD:is_nonrot。它還支援 UNMAP SCSI 命令。 Windows(至少 Windows 10)透過 iSCSI 正確偵測 SSD 並發出 UNMAP 指令,立即釋放未使用的空間。

相關內容