我有一个 10 GB 的根 lvm,其中大部分已使用,还有一个 877 GB 的 /home lvm。我想调整 /home lvm 的大小以释放空间,然后将其分配给 root。我不清楚是否可以在挂载时动态调整分区大小,但据我所知,这是不可能的。另外,据我所知,除非我使用救援磁盘,否则我无法卸载 /home 或 root。
通常,如果我想调整无法卸载的磁盘分区的大小,我会使用 gparted 活动磁盘。但据我所知,gparted 只适用于“真实”分区,不能在 lvm 分区上运行。那么访问未安装分区并调整它们大小的最佳方法是什么?
谢谢,
莫里斯
LVM 使这变得相当简单和直接。lvreduce 必须卸载您想要缩小的文件系统,但要扩展的文件系统可以在挂载时执行此操作。
步骤: 1备份 - 2减少家庭lv - 3检查 - 4增长根lv - 5检查 - 6备份配置
只需要第 2 步和第 4 步 - 其余的只是很好的做法。我还建议通过运行记录整个过程script。
注意:示例输出中的卷组称为 tetrad(与主机名相同),您需要将卷组的名称插入命令中。示例输出是从存档日志中收集的,这可能是从 resize2fs 命令的不同版本号推断出来的。
备份(至少是您当前的配置)。将您的备份复制到正在修改的卷组之外的某个位置。
root@tetrad:~/Documentation/LVM# vgcfgbackup -f tetrad-vgcfg-2014-10-09-before-2
Run Code Online (Sandbox Code Playgroud)降低家lv
root@tetrad# lvresize --resizefs -L -35G /dev/mapper/tetrad-export
resize2fs 1.42 (29-Nov-2011)
Resizing the filesystem on /dev/mapper/tetrad-export to 23955456 (4k) blocks.
The filesystem on /dev/mapper/tetrad-export is now 23955456 blocks long.
Reducing logical volume export to 91.38 GiB
Logical volume export successfully resized
Run Code Online (Sandbox Code Playgroud)检查(可选),备份当前状态,如第 1 步。您会注意到第 4 步备份到/etc/lvm/backup/<vgname>,但由于这是在被修改的文件系统上,您希望将副本放在其他地方。
root@tetrad# pvs
PV VG Fmt Attr PSize PFree
/dev/sda3 tetrad lvm2 a- 201.14g 37.76g
Run Code Online (Sandbox Code Playgroud)生根lv
root@tetrad:~/Documentation/LVM# lvextend -L +2G /dev/mapper/tetrad-root -r -v
Finding volume group tetrad
Executing: fsadm --verbose check /dev/tetrad/root
fsadm: "ext4" filesystem found on "/dev/mapper/tetrad-root"
fsadm: Skipping filesystem check for device "/dev/mapper/tetrad-root" as the filesystem is mounted on /
fsadm failed: 3
Archiving volume group "tetrad" metadata (seqno 27).
Extending logical volume root to 26,00 GiB
Found volume group "tetrad"
Found volume group "tetrad"
Loading tetrad-root table (252:0)
Suspending tetrad-root (252:0) with device flush
Found volume group "tetrad"
Resuming tetrad-root (252:0)
Creating volume group backup "/etc/lvm/backup/tetrad" (seqno 28).
Logical volume root successfully resized
Executing: fsadm --verbose resize /dev/tetrad/root 27262976K
fsadm: "ext4" filesystem found on "/dev/mapper/tetrad-root"
fsadm: Device "/dev/mapper/tetrad-root" size is 27917287424 bytes
fsadm: Parsing tune2fs -l "/dev/mapper/tetrad-root"
fsadm: Resizing filesystem on device "/dev/mapper/tetrad-root" to 27917287424 bytes (6291456 -> 6815744 blocks of 4096 bytes)
fsadm: Executing resize2fs /dev/mapper/tetrad-root 6815744
resize2fs 1.42.9 (4-Feb-2014)
Filesystem at /dev/mapper/tetrad-root is mounted on /; on-line resizing required
old_desc_blocks = 2, new_desc_blocks = 2
The filesystem on /dev/mapper/tetrad-root is now 6815744 blocks long.
Run Code Online (Sandbox Code Playgroud)你完成了。现在让我们欣赏一下结果并保留当前状态的备份。
pvs,lvs| 归档时间: |
|
| 查看次数: |
13311 次 |
| 最近记录: |