Ubuntu

無法刪除 LVM Thinpool - 無法停用 tdata、tmeta

  • November 17, 2015

我以某種方式在 ubuntu 14.04 上弄亂了一些精簡配置的 lvm 卷,現在我想通過刪除其中包含所有捲和數據的瘦池來重新開始。不幸的是,這失敗了,我找不到解決方案。

邏輯卷如下所示:

user@server1:~$ sudo lvs
 dm_report_object: report function failed for field data_percent
 LV             VG   Attr      LSize   Pool       Origin Data%  Move Log Copy%  Convert
 project2       vg0  Vwi-i-tz-  22.00g mythinpool       
 project1       vg0  Vwi---tz-  20.00g mythinpool                                      
 project3       vg0  Vwi---tz-  21.00g mythinpool                                      
 home           vg0  -wi-ao--- 140.00g                                                 
 mythinpool     vg0  twi-i-tz-  78.82g                    52.15                        
 root           vg0  -wi-ao---  10.00g                                                 
 swap           vg0  -wi-ao---   4.00g                                                 
 tmp            vg0  -wi-ao---   5.00g           

現在我想刪除裡面有三個 lvms 的瘦池:

sudo lvremove /dev/vg0/mythinpool

Removing pool mythinpool will also remove 3 thin volume(s). OK? [y/n]: y
Do you really want to remove and DISCARD logical volume project1? [y/n]: y
 device-mapper: message ioctl on  failed: Invalid argument
 Unable to deactivate open vg0-mythinpool_tdata (252:5)
 Unable to deactivate open vg0-mythinpool_tmeta (252:4)
 Failed to deactivate vg0-mythinpool-tpool
 Failed to resume mythinpool.
 Failed to update thin pool mythinpool.

我不關心 mydinpool 中的數據,但卷組 vg0 的其餘部分必須保持不變。我該如何解決這個問題?感謝您對此的任何幫助。

編輯 1: 在遵循 shodanshok 的回答後,我能夠通過啟動到 CentOS7 來刪除一個 LVM 映像,但不幸的是,包括精簡池在內的其他兩個卷返回另一條錯誤消息 - transaction_id 不匹配:

在此處輸入圖像描述

lvconvert –repair 也沒有可用空間

我最終通過一些簡單的步驟解決了這個問題,如下所述:刪除損壞的 LVM 精簡池

vgcfgbackup -f  vg.bak   vgname

//edit vg.bak and remove all thinp related volumes

vgcfgrestore -f vg.bak  vgname

在遵循@shodanshok 的建議啟動到連接到 U 盤上的伺服器的 Live CentOS7 之後,我能夠發出所描述的命令並最終擺脫損壞的精簡池,而不會損壞駐留在同一內部的根文件系統卷組。

謝謝大家的有用建議,最終導致了解決方案。

引用自:https://serverfault.com/questions/736539