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 / 问题 / 399914
Accepted
Matthew
Matthew
Asked: 2012-06-19 12:26:40 +0800 CST2012-06-19 12:26:40 +0800 CST 2012-06-19 12:26:40 +0800 CST

用户在不调整文件系统大小的情况下减少了 LVM 逻辑卷

  • 772

我昨天收到一封电子邮件,说我们的一个用户试图为心跳/集群包腾出空间,它需要自己的分区来充当表决磁盘。为此,他试图减小根分区的逻辑卷的大小,然后为此创建一个新的逻辑卷。但是,他忘记先调整文件系统的大小(或在命令中包含 -r 开关)。他还忘记了通过从救援 CD 运行此过程来卸载根分区。系统现在拒绝引导进入操作系统并出现以下错误:

超级块或分区表可能已损坏!意外的不一致;手动运行 fsck。

他们的系统将用户置于单用户模式。

是否有可能挽救文件系统,或者它被冲洗了吗?它运行 ext3。

lvm ext3
  • 3 3 个回答
  • 1740 Views

3 个回答

  • Voted
  1. Best Answer
    mgorven
    2012-06-19T12:51:27+08:002012-06-19T12:51:27+08:00

    如果文件系统已经在新的 LV 上初始化,那么您可能会被淹没,因为数据将被覆盖。您仍然可以尝试恢复它,但我不会抱太大希望。如果文件系统尚未初始化,那么理论上可以恢复它(但我自己还没有尝试过)。

    首先,备份整个驱动器,以防恢复出错。下一步是尝试找到 LVM/etc/lvm/archive在进行更改之前创建的 LVM 元数据备份。如果根卷不可访问,您可以尝试运行e2fsck以使其可挂载,并希望备份文件存储在卷的开头附近。如果这样做,您将希望从运行前继续恢复e2fsck(即在获取备份文件后从备份恢复)。

    如果您设法获得备份文件,请使用vgcfgrestore恢复 LVM 配置。如果您无法获得备份文件,您将不得不希望初始卷是完全连续的。删除新 LV,然后将旧 LV 扩展到其原始大小。

    一旦你把旧的 LV 恢复到正确的大小,交叉你的手指并运行e2fsck。而且您确实需要先进行备份,您可能不会在第一次尝试时就做对。

    • 3
  2. Sven
    2012-06-19T12:51:37+08:002012-06-19T12:51:37+08:00

    我会尝试什么:

    • 使用救援系统,例如。GRML 或 Ubuntu 实时系统。
    • 将卷大小调整回原来的大小,并希望 LVM 分配相同的物理磁盘空间。如果同时没有对卷组进行其他修改,这应该可以工作。
    • 制作图像,或至少制作卷的快照。
    • 尝试用fsck.
    • 希望最好的

    十有八九,我会假设文件系统已经死了,但这可能会带来很多运气。

    • 2
  3. Eddie
    2013-07-11T12:16:14+08:002013-07-11T12:16:14+08:00

    今天我就是那个用户......幸运的是它在测试环境中,所以我保持了清晰的思维过程;)

    我能够通过撤销我所做的来解决错误。我将我的家庭 lvm 减少了 100G,没有调整大小,然后将我的根 lvm 扩展了 100G,仍然没有调整 FS 的大小。

    我从 liveCD (CentOS 6.4) 启动,将启动缩小 100G,调整大小,将主页扩展 100G,调整大小。重新启动,一切恢复正常。

    • 2

相关问题

  • OpenBSD 和文件系统快照

  • 卷组空间不足。我该如何收回它?

  • LVM 快照是这样工作的吗?

  • LVM 和快照

  • 如何在 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