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 / 问题 / 38542
In Process
user12259
user12259
Asked: 2009-07-10 11:10:19 +0800 CST2009-07-10 11:10:19 +0800 CST 2009-07-10 11:10:19 +0800 CST

Ubuntu:调整根 LVM(2?) 分区的大小

  • 772

我有一个在 VirtualBox 2.2.4 中运行的 Ubuntu 虚拟机,我在一个太小的 8gb 虚拟磁盘上创建了它。

所以,我正在尝试增加磁盘的大小。到目前为止,我已经这样做了:

  1. 创建了一个新的更大的虚拟磁盘
  2. 将第二个磁盘添加到机器
  3. 使用 CloneZilla 将第一个磁盘克隆到第二个磁盘
  4. 删除了第一个磁盘
  5. 从第二个(更大的磁盘)启动

但是现在我仍然在新的 100gb 虚拟磁盘上使用 8gb 分区。

从这里到拥有 100GB 分区的最简单途径是什么?:) 我收集 GPart 可以调整分区大小,但它似乎不支持 LVM2 分区,我的似乎是。

谢谢

  • 亚历克斯
linux ubuntu partition lvm virtualbox
  • 8 8 个回答
  • 27571 Views

8 个回答

  • Voted
  1. Matt
    2009-07-10T11:27:46+08:002009-07-10T11:27:46+08:00

    通常,以下是调整 LVM 卷大小的方法:

    假设/mountpoint是 on /dev/VolGroup00/mountpoint。您可以通过签出/etc/fstab或运行来找到这一点mount -l。

    您可能还需要调整实际物理卷的大小,具体取决于您的设置。用于pvdisplay确定它是否足够大,并在必要时使用pvresize(很像下面)。lvresize

    umount /mountpoint
    lvresize -L +<HOW MUCH BIGGER> /dev/VolGroup00/mountpoint
    e2fsck -f /dev/VolGroup00/mountpoint
    resize2fs /dev/VolGroup00/mountpoint <TOTAL SIZE>
    mount /mountpoint
    

    这相当于卸载、调整底层 LVM 的大小,然后调整实际 ext3 分区的大小。

    需要注意的几点:

    1. 显然,玩/会与数据分区不同。您可能需要一个引导盘,例如Sysrescuecd,而不是 Doing It Live。另请参阅下面 Kristof 的评论 - 您实际上可以在不卸载的情况下执行此操作/。
    2. lvresize 有几个不同的语法选项,减少逻辑卷可能会损害覆盖分区。有关更多信息,请参阅您当地的手册页。
    • 5
  2. Ben
    2012-12-12T22:54:11+08:002012-12-12T22:54:11+08:00

    我发现有一种(也是唯一一种)方法可以做到这一点,我尝试了无数种。

    首先,通过右键单击并转到“克隆”来克隆 virtualbox 中的 ubuntu 来宾 VM。克隆完成后,使用(在主机操作系统上)扩展克隆的 vdi

    VBoxManage modifyhd "name_of_cloned_vdi" --resize "size_of_new_root_partition_in_MB"

    然后 - 按照本文中的步骤进行操作(他将 VMware 称为平台,但忽略了这一点)

    http://blog.campodoro.org/?p=36

    这将创建另一个 lvm,其大小与您添加的额外空间完全相同,并将其粘贴到现有空间的末尾。

    检查一切正常后,您可以删除原始 VM 并推广您的克隆!

    无需搞乱 fdisk 并担心删除或搞砸错误的分区。

    在我找到这个解决方案之前,我一定已经破坏了大约 4 个克隆的操作系统!

    • 2
  3. James
    2013-04-12T17:08:19+08:002013-04-12T17:08:19+08:00

    我刚做了这个,遇到了同样的问题,但不是创建一个新的 LVM 并将其添加到卷组,我的 OCD 方面想要调整我当前的 LVM 的大小,从而以简单的名义保留一个分区。注意:如果可用空间没有立即跟随您正在调整大小的分区,我认为这是不可能的!

    为此,您需要一个可以删除和创建分区表的工具。由于我使用 GPT,这意味着我需要gdisk。您还需要在卸载分区的情况下执行此操作,因此您可能希望启动到 Ubuntu LiveCD 并从那里运行它。

    以下粗体步骤是设备/dev/sda上的示例 LVM /dev/mms/root,我想在其中扩展分区/dev/sda3以占用我新发现的可用空间。

    注意:这些可能非常具有破坏性,因此请确保您的输入正确!

    1. gdisk /dev/sda(确保输入正确的设备!)这将带您进入 gdisk,然后您可以按顺序执行以下步骤
      1. p -- 打印出你当前的分区信息(供参考)
      2. d -- 用于删除分区表
      3. 3 -- 代表你要删除的分区表的设备号(重要!)
      4. n -- 用于创建分区表
      5. 3 -- 代表您希望创建的分区表的设备号(您可能希望使用与在步骤 3 中删除的相同的设备号)
      6. p - 打印出您当前的分区信息(再次作为参考,将其与您开始时的内容进行比较!)
      7. w -- 将您的更改保存到磁盘(您确定吗?!)
    2. pvresize /dev/sda3 - 您可能需要在执行此操作之前重新启动,以便您的操作系统识别新的分区大小
    3. pvdisplay -- 打印出你当前的信息(它应该显示它现在正在使用完整的空间!)
    4. lvresize -l +100%FREE /dev/mms/root -- 调整我的 LVM 大小以占用我新发现空间的 100%
    5. e2fsck -f /dev/mms/root -- 执行完整性检查
    6. resize2fs -p /dev/mms/root -- 调整文件系统的大小以占用整个 LVM

    完成上述操作并重新启动到调整大小的操作系统后,一切都按预期工作,我拥有所有额外的可用空间!

    我用来弄清楚这一切的其他参考资料:

    http://www.jethrocarr.com/2012/08/10/gdisk-oh-glorious-gdisk/ http://people.virginia.edu/~ll2bf/docs/quickref/lvm.html

    • 2
  4. Zoredache
    2009-07-10T11:46:01+08:002009-07-10T11:46:01+08:00

    在此处查看相关答案。

    (摘抄)

    调整物理卷大小:

    pvresize --verbose --test /dev/md0
    

    调整逻辑卷大小:

    lvresize --verbose -L <SIZE> --test /dev/VG1/LV1
    

    最后,调整 ext3 FS 的大小:

    resize2fs /dev/VG1/LV1
    
    • 1
  5. Bracken
    2013-04-23T15:35:32+08:002013-04-23T15:35:32+08:00

    请注意,您实际上不需要在这里使用像 CloneZilla 这样的克隆工具,您可以在新的虚拟磁盘(可选)上放置一个分区,然后使用该pvcreate命令将其(或虚拟磁盘本身)初始化为 LVM。然后用于vgextend将其添加到支持您的逻辑卷的卷组中,然后用于vgreduce从卷组中删除原始虚拟磁盘。这将执行迁移,并且可以在使用逻辑卷时实时完成,这就是存储虚拟化的美妙之处。完成后,您只需要像上面那样扩展逻辑卷,这也可以使用比 ext3 更现代的文件系统实时完成。

    • 1
  6. automatix
    2013-07-03T09:45:28+08:002013-07-03T09:45:28+08:00

    I. 如果你的虚拟硬盘有固定的大小,你不能把它变大。在这种情况下,您必须先克隆它。

    (1) 通过 VB GUI 克隆硬盘:File -> Virtual Media Manager... -> [tab] Hard Drives -> select your HDD -> [button] Next -> [button] Next -> select "Dynamically allocated" on the step "Storage on physical hard drive"-> ...

    或在命令行上:

    # VBoxManage clonehd "/path/to/the/HDD.vdi" "/path/to/the/HDD_NEW.vdi"
    

    (2) 将新硬盘添加到已知硬盘列表中。

    (3) 在 VB 机器设置中,从 Controller 下的 VDI 列表中删除旧硬盘,然后添加新硬盘。

    二、调整硬盘大小

    (1) 调整新硬盘的大小。

    # VBoxManage modifyhd 463c7bd4-9b9c-4cf8-bee4-e14e10c0d462 --resize 25600
    

    VBoxManage list hdds您可以通过命令获得密钥。

    三、添加新分配的空间。

    (1) 在下面添加一个GParted ISO作为新媒体Machine Settings -> Storage -> [rightclick] Controller IDE -> Add CD / DVD Device -> ...并选中Live CD/DVD复选框。

    (2) 启动虚拟机并将未分配的空闲空间添加到您的工作分区。

    (3) 停止虚拟机。

    (4) 分离 GParted ISO。

    享受!:)

    • 1
  7. slm
    2011-12-07T22:00:29+08:002011-12-07T22:00:29+08:00

    查看其他 serverfault 问题的答案,如何增加 KVM 来宾的磁盘空间?. 用于在此 KVM 来宾中增加 LVM 分区的技术与您尝试完成的技术类似。

    • 0
  8. takeshin
    2013-04-23T15:13:02+08:002013-04-23T15:13:02+08:00

    在调整 LV2 分区的大小时,这个参考对我帮助很大:

    http://people.virginia.edu/~ll2bf/docs/quickref/lvm.html

    请注意,您不需要使用任何 live cd,您可以在已安装的 live 系统上调整大小,即时调整大小。

    • 0

相关问题

  • 更改 PHP 的默认配置设置?

  • 保护新的 Ubuntu 服务器 [关闭]

  • (软)Ubuntu 7.10 上的 RAID 6,我应该迁移到 8.10 吗?

Sidebar

Stats

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

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

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

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

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

    • 3 个回答
  • Marko Smith

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

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +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