
我們在一個磁碟區組中建立了 6 個邏輯磁碟區。
配置如下:
兩個磁碟,每個 250g
第一個磁碟我們使用 21gb 用於其他磁碟
。
剩餘的 229g(disk1)+250g(disk2) 配置為單一 pv。整個 pv 配置為單一 vg。在VG中我們分為6個lvs
其中 6 個 lv 為原始磁碟分割區(無檔案系統)。我們正在 2 個原始 lvs 中寫入一些資料(快取資料)
我們正在一種情況下執行 vgremove(從實體磁碟區中刪除所有 lvs 和磁碟區組),並且
隨後創建 pv、vg 和所有 6 個 lv。
發現原始邏輯卷分割區之一存在資料。看來數據沒有消失。
問題:vgremove(從實體磁碟區中刪除所有lvs和磁碟區組)會清除原始分割區中的資料嗎?數據如何持久化。
答案1
不會進行任何擦除vgremove
,這是一件好事,因為它允許您恢復內容,例如,如果您在錯誤的捲組上運行命令。
答案2
如果在該部分中啟用了/etc/lvm/lvm.conf
該設置,則(且僅此後)LVMissue_discards
devices
將要lvremove
對由或釋放的磁碟區發出 TRIM/DISCARD 指令(對於 SATA 為 TRIM,對於基於 SCSI 的任何裝置為 DISCARD)vgremove
。如果磁碟支援這些命令(大多數 SSD 支援;HDD 可能也可能不支援),那麼一旦擦除操作有足夠的時間完成,通常會導致資料無法恢復,無法用於所有實際目的。
如果issue_discards
未啟用,則lvremove
或vgremove
將僅擦除標識該 LV/VG 的 LVM 元數據,並且擦除實際數據(如果需要)將由系統管理員負責。