缩小lvm卷
扩大VM卷分区的操作参考扩展lvm卷
本文是为了实现通过systemd设置fedora系统hibernate休眠,预先准备足够的swap分区空间。
最初在安装Fedora操作系统时,只设置了内存一半大小的swap分区。后来考虑实现Hibernate时发现需要足够的swap空间,则尝试通过缩小
/dev/mapper/fedora-home
逻辑卷,扩展/dev/mapper/fedora-swap
逻辑卷来实现。本文为实践笔记。
注意:ext4
文件系统支持在线扩展
和离线收缩
,但是XFS
文件系统当前不支持收缩。
有关Linux卷管理的概念及基本操作,请参考Linux卷管理
LVM Resize
要实现decrease
或者shrink
,即缩LVM逻辑卷(分区)则首先要完成LVM逻辑卷上层的文件系统的缩减,否则会导致数据丢失。
收缩root卷
root volume通常是挂载在/
的逻辑卷。由于在运行操作系统时不能umount根目录,所以如果要缩小根文件系统所在的文件系统,需要使用LiveCD来启动主机。一旦从LiveCD启动后,首先将磁盘中的 LVM 卷导入(从硬盘启动时是自动由操作系统完成的,但是从LiveCD启动需要手工执行):
收缩非
root卷
非
root卷本文的案例是收缩/home
目录所在的/dev/mapper/fedora-home
逻辑卷
退出所有会访问
/home
目录的账号(普通用户),然后以root
身份登陆系统。这样可以确保没有进程访问/home
,就可以卸载:
检查文件系统一致性
在缩减LVM卷之前,必须运行文件系统检查。如果没有做文件系统检查,会遇到不能进一步处理的错误信息。这将使得resize文件系统的步骤进入一个会导致数据丢失的错误状态。使用-f
参数是强制进行检查,即使文件系统看上去是干净的,而使用-y
参数表示如果有发现文件系统问题则直接修复
缩小文件系统
为了能够安全缩减逻辑卷,建议将逻辑卷上的文件系统缩小到比将要缩小的逻辑卷更小一点。这样可以避免LVM逻辑卷比文件系统更小而导致数据丢失。此外,不用担心,最后步骤会回收这部分空间。
这里将
fedora-home
逻辑卷缩小到157G
,比原先小11GB,以便能够把空间加给fedora-swap
逻辑卷。
缩减逻辑卷
这里设置LVM逻辑卷比文件系统大1G,避免数据损坏。也可以使用如下命令表示减小10G(即168-10)
完成了LVM卷缩减以后,可以看到文件系统比LVM卷小,这样就浪费了一点空间。解决的方法是再次使用
resize2fs
命令,但是不带任何参数,则会自动把文件系统扩展到和LVM卷一样大小,就不会浪费空间了。
最后在挂载上文件系统
同样的操作也针对
/dev/mapper/swapper
操作,扩展swap空间:
参考
Last updated