AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 736539
Accepted
merlin
merlin
Asked: 2015-11-16 09:28:52 +0800 CST2015-11-16 09:28:52 +0800 CST 2015-11-16 09:28:52 +0800 CST

无法删除 LVM Thinpool - 无法停用 tdata、tmeta

  • 772

我以某种方式在 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 也没有可用空间

ubuntu
  • 2 2 个回答
  • 12159 Views

2 个回答

  • Voted
  1. Best Answer
    merlin
    2015-11-18T02:00:28+08:002015-11-18T02:00:28+08:00

    我最终通过一些简单的步骤解决了这个问题,如下所述:删除损坏的 LVM 精简池

    vgcfgbackup -f  vg.bak   vgname
    
    //edit vg.bak and remove all thinp related volumes
    
    vgcfgrestore -f vg.bak  vgname
    

    在遵循@shodanshok 的建议启动到连接到 U 盘上的服务器的 Live CentOS7 之后,我能够发出所描述的命令并最终摆脱损坏的精简池,而不会损坏驻留在同一内部的根文件系统卷组。

    谢谢大家的有用建议,最终导致了解决方案。

    • 4
  2. shodanshok
    2015-11-16T09:43:28+08:002015-11-16T09:43:28+08:00

    有些东西使您的薄卷保持打开状态。请执行以下操作:

    • 检查卷是否已安装。如果是这样,请卸载它们
    • 如果您无法卸载它们,则可能某些文件仍被正在运行的进程打开。您可以使用它lsof | grep mountpoint来查找有问题的进程。杀死它们并尝试卸载文件系统
    • 如果失败,请重新启动机器并尝试卸载与精简卷相关的文件系统
    • 如果您仍然无法卸载卷,请尝试重新启动到单用户模式,卸载它们并删除卷
    • 如果一切都失败了,请使用 Live CD/USB 映像来启动您的 PC 并删除有问题的卷。

    编辑:

    由于您不能使用实时图像并且您的救援系统不支持精简卷,我们可以尝试另一种方法。基本上,我们将在您的精简卷/池上设置“跳过激活标志”并重新启动机器。按着这些次序:

    • 设置激活跳过:lvchange -ky vg0/project1 ; lvchange -ky vg0/project2 ; lvchange -ky vg0/project3 ; lvchange -ky vg0/mythinpool
    • 重新启动机器并且卷应该处于非活动状态
    • 你现在可以删除它们lvremove

    但是,如果机器启动需要这些卷中的任何一个,您将以无法启动的机器结束。确保有一个“B 计划”来通过故障恢复控制台等恢复机器。

    编辑 2

    如果您的系统不支持该-k标志,您可以尝试使用lvchange -aay volumename并重新启动。这将设置自动激活的音量,仅适用于指定的音量/etc/lvm.conf

    • 1

相关问题

  • 无法通过 Ubuntu VPN 访问外部网络

  • ubuntu apt-get upgrade - 如何在 shell 中单击确定?

  • VirtualBox 上 Ubuntu 的访客优化技巧 [关闭]

  • 外部硬盘上的 virtualbox 虚拟硬盘驱动器(Vista 主机上的 ubuntu 客户机)

  • 如何在 Ubuntu 上挂载 LVM 分区?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve