解决Ubuntu18.04因修改SWAP分区造成开机时间过长问题
起因
因为给/home挂载的分区划分的容量太小了,故想用Diskgenius将Ubuntu安装时划分的4GB的SWAP分区,分3GB给/home分区。
于是用DiskGenius 专业版先把/home分区按"仅备份有数据扇区"功能备份,接着删除了swap分区和/home分区。
接着用DG新建了一个1G的SWAP分区,以及一个EXT4分区,接着将原备份文件还原到这个新分区。
可是还原之后容量又恢复回原分区大小,于是进行一次扩容分区,重启,成功进入系统,但是开机时间过长。
通过录像反复观察启动时显示的内容,发现问题主要出现在两个过程:
第一个过程显示:running /scripts/local-premount.....
,耗费时间30s左右;
第二个过程显示:a start job is running for dev-disk-by.....
,耗费时间1min30s;
进入Ubuntu查看开机log文件
$ dmesg
# You might want to pipe it through less with:
$ dmesg | less
问题一:“Begin: Running /scripts/local-premount”
参考:这是askubuntu.com给出的解决办法,经测成功:
18.04-Boot hangs for 30 seconds at “Begin: Running /scripts/local-premount”
解决办法
$ sudo vim /etc/initramfs-tools/conf.d/resume
$ 替换 RESUME=UUID=xxx 为 RESUME=none
# 若无此文件,则直接通过vim新建此文件,并写入 RESUME=none ,也有效
问题二:“a start job is running for dev-disk-by...”
参考:这是askubuntu.com给出的解决办法,经测成功:
swap - Slow boot - “a start job is running for dev-disk-by…”
解决办法:
1.卸载原失效SWAP分区
# 安装 gparted
$ sudo apt-get install gparted
# 查看计算机当前所有分区
$ lsblk
# 编辑fstab文件
$ sudo vim /etc/fstab
# 找到您当前未使用的设备 - 例如原来设定的swap分区
# 在该行的开头插入一个 # 将其注释掉
# 保存即可
2.挂载新SWAP分区
# 查看计算机当前所有分区
$ lsblk
# 格式化之前用DG建立的SWAP分区
$ mkswap /dev/sda6
# 右键复制格式化后输出的分区UID编号
# 将挂载信息写入到配置文件
$ vim /etc/fstab
# 将UID信息粘贴替换至原来被注释的那一条中,并去掉注释,并把UID后面的第一个none改为swap
# 让配置文件/etc/fstab生效
$ swapon -a
# 查看是否生效
$ free -h
总结技巧
# 查看Ubuntu当前使用的分区
$ lsblk
# 或者
$ sudo fdisk -l
# 或者
$ sudo blkid -o list
# 查看Ubuntu挂载盘
$ df -h
# 查看内存空间
$ free -h