上下文是这样,建了个虚拟机,然后一路默认安装了debian buster,装好后用了一段时间,感觉swap有点小(虽然也没实际用满,只是心理作用),看了下默认安装后的swap是直接用了swap partition,以前这种情况一般是新建个够大的swap file,然后重新挂上,但是这次呢,因为是用了交换分区,而我又不想在主分区上创建交换文件,于是就想尝试下改变虚拟机磁盘大小,重新调整分区的方法来加大swap!
虚拟机管理里扩大硬盘后,直接fdisk就可以看到有额外未分配的磁盘空间了,具体命令记不清了,大致流程就是先swapoff -a停掉swap,然后fdisk删除现有swap分区,然后重建一个占满所有剩余空间的swap分区,然后blkid查看新swap分区的UUID,然后更新到/etc/fstab中,把原有的挂载swap的UUID替成刚查到的新分区的值,然后swapon -a重新启用swap,此时free查看应该已经可以看到扩大后的swap空间了,本以为这样就完事了,结果发现一旦虚机重启,开机时会卡一段时间(明显比改之前要长,而且最后还会报个超时错误 Gave up waiting for suspend/resume device),搜索一番后发现了这篇文章提到的内容:http://blog.sina.com.cn/s/blog_47642c6e0102yt7b.html
原来还有个/etc/initramfs-tools/conf.d/resume里的UUID也要更新,如法炮制,更新下刚blkid查到的新分区的UUID,然后执行:
sudo update-initramfs -u
然后,再重启一下,一切就恢复正常了。
PS:这个问题应该不止是debian 10,其它linux系统应该也有类似问题,特此记录。
博主友情提示:
如您在评论中需要提及如QQ号、电子邮件地址或其他隐私敏感信息,欢迎使用>>博主专用加密工具v3<<处理后发布,原文只有博主可以看到。