CentOS 7:扩展LVM交换分区后"free"命令未显示更新容量
解决CentOS 7中扩展swap逻辑卷后未生效的问题
你已经完成了LVM逻辑卷的扩容操作,但遗漏了重新初始化swap文件系统的关键步骤,导致系统仍然沿用原来的swap空间大小。下面是具体的修复流程:
修复步骤
关闭当前正在使用的swap分区
由于swap分区正被系统占用,必须先停用它才能进行后续操作:sudo swapoff /dev/mapper/centos-swap如果执行时提示无法关闭,可以先关闭一些占用大量内存的进程,再尝试执行该命令。
重新初始化swap分区
这一步会让swap分区识别到逻辑卷扩容后的新容量:sudo mkswap /dev/mapper/centos-swap注意:
mkswap会清除swap分区内的所有数据,但swap本身是临时交换空间,不存在需要保留的持久化数据,所以不用担心数据丢失。重新启用swap分区
让系统挂载更新后的swap空间:sudo swapon /dev/mapper/centos-swap验证结果
执行以下命令查看swap是否已经扩容成功:free -h swapon -s此时你应该能看到swap的总容量已经变为2.2GB左右。
关于/dev/dm-1的说明
你看到的/dev/dm-1其实是/dev/mapper/centos-swap的底层设备文件,/dev/mapper/centos-swap是它的符号链接,两者指向同一个设备,这是LVM设备的正常表现,不需要额外处理。
后续保障
你的/etc/fstab配置已经正确指向了/dev/mapper/centos-swap,所以之后重启虚拟机,系统会自动挂载扩容后的swap分区,无需修改fstab内容。
内容的提问来源于stack exchange,提问作者Seymour Glass




