我一直在尝试合并 centos 6 虚拟机上的两个分区。我只能通过命令行访问这台机器。我的系统如下所示:
[x@x-y ~]$lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sr0 11:0 1 1024M 0 rom
sda 8:0 0 200G 0 disk
├─sda1 8:1 0 500M 0 part /boot
├─sda2 8:2 0 39.5G 0 part
│ ├─vg_vts0-lv_root (dm-0) 253:0 0 35.6G 0 lvm /
│ └─vg_vts0-lv_swap (dm-1) 253:1 0 3.9G 0 lvm [SWAP]
└─sda3 8:3 0 160G 0 part
我不想丢失 sda2 的数据,但我愿意清除 sda3 的数据。我试过 fsdisk,但不确定如何合并 sda2 和 sda3。有什么想法吗?
谢谢。
答案1
看起来您正在使用 LVM(逻辑卷管理器),这意味着您可以保留现有分区,并在“LVM”级别(即 sdx 块设备和文件系统之间)合并它们。LVM 专门设计用于允许此类操作。
任何文件系统操作都存在一定风险 - 因此在尝试之前请备份数据并检查您是否愿意承担解决方案的风险,但
- 使用 FDISK 或类似程序将 sda3 的分区类型修改为“8e”= Linux LVM。
- 如果可能,请重新加载分区信息,否则重新启动虚拟机以重新读取它 - 您可以执行“partprobe /dev/sda3”
- 添加物理卷 - 例如“pvcreate /dev/sda3”
使用“vgextend vg_vts0 /dev/sda3”将 /dev/sda3 添加到卷组
使用类似 lvextend -L +155G /dev/vg_vts0/lv_root 的命令扩展数据分区 - 注意,这将使分区大小增加 155 GB,而不是 160 GB。这将为您留下 5 GB 供以后使用,并且可能很有用 - 特别是当您想开始使用快照进行全盘备份时。
- 扩展分区 - 如果您使用的是 EXT4,则可能使用 resize4fs /dev/vg_vts0/lv_root (根据您的发行版,它可能被称为 resize2fs)
另一种选择(这更能回答您的问题,但风险更大,而且对您没有多大帮助)是重新分区底层磁盘。使用 FDISK 之类的工具,删除分区 2 和分区 3,然后使用所有空间创建一个新的分区 2 - 记得将类型设置为 8E。按照上面的步骤 6 继续操作。同样,这不是一个好主意 - LVM 使这样做比本来的风险更大 - 而且它确实有风险 - 并且违背了 LVM 的目的