[Internal testing communication] 解挂载swap分区对开机速度有影响吗
Tofloor
poster avatar
Yang2020Lv4
deepin
2026-01-19 20:56
Author

我给我的新电脑安装了deepin。由于当时选了自定义安装,所以它给我分了一个16g的swap交换分区,而我的电脑光是实体内存就有32g。于是我按照网上的方法执行了

sudo swapoff /swapfile

并且编辑了/etc/fstab文件,取消了自动挂载,还执行了systemctl关闭服务进程。可我重启之后,进入grub后屏幕突然黑屏,等了半分钟多才显示deepin图标。(我之前一进grub几秒就有deepin图标)这是什么问题

Reply Favorite View the author
All Replies
Yang2020Lv4
deepin
2026-01-19 21:01
#1

linux的启动顺序应该是先挂载磁盘在启动桌面环境渲染开机动画,那是不是挂载磁盘(其实是ssd)出了问题呢?请指教。

Reply View the author
北冥夜未央
deepin
Ecological co-builder
2026-01-19 21:27
#2

内存够大的情况下,swap一般也就系统休眠的时候用用,不过我还是选择打开,反正硬盘也挺大的,不在意占用这点空间

Reply View the author
Yang2020Lv4
deepin
2026-01-19 21:31
#3
北冥夜未央

内存够大的情况下,swap一般也就系统休眠的时候用用,不过我还是选择打开,反正硬盘也挺大的,不在意占用这点空间

那开机速度减慢是什么原因

Reply View the author
kookboy
deepin
2026-01-20 03:07
#4

根据您描述的现象,问题根源很可能不是“关闭swap导致开机变慢”,而是系统在启动时仍在尝试挂载一个已经不存在或配置错误的swap,从而导致了30秒的超时等待。

"/etc/fstab" 文件。

许多Linux发行版(包括Deepin)的systemd启动流程中,会有一个“等待所有磁盘/分区就绪”的阶段。如果

"/etc/fstab" 中配置了一个UUID错误或已不存在的swap分区,systemd就会在启动时报错并等待其超时(通常为1分30秒),这直接导致了您观察到的开机黑屏时间变长。

您遇到的“进grub几秒就有图标,现在要等半分钟”的现象,与“

"dev-disk-by…swap" 等待超时1分30秒”的经典症状完全吻合。

🔧 如何排查与解决?

请按照以下步骤操作,定位并解决问题:

  1. 分析启动耗时

首先,在终端中执行以下命令,查看详细的启动耗时报告:

bash

查看总体启动时间

systemd-analyze

按耗时排序,找出最慢的服务

systemd-analyze blame

如果在输出中看到类似

"A start job is running for dev-disk-by-...swap" 且耗时几十秒的条目,即可确认是swap挂载失败导致的延迟。

  1. 检查并修正

"/etc/fstab"

接下来,检查

"/etc/fstab" 文件中的swap配置。

  • 查看当前swap状态bashswapon --showfree -h如果

"swapon --show" 没有输出,说明swap当前确实未启用,这排除了运行时性能问题,进一步将原因指向了启动配置。

  • 核对

"/etc/fstab" 配置bashcat /etc/fstab找到包含

"swap" 的那一行。问题通常有以下几种情况:

  • 指向不存在的分区:例如,您调整过磁盘分区,导致swap分区的UUID发生了变化,但

"/etc/fstab" 中的UUID仍是旧值。

  • 指向错误的设备:例如,您使用的是swap文件(如

"/swapfile"),但fstab中却错误地配置为分区(如

"/dev/sdXN")。

  • 配置语法错误:如多余的空格、错误的文件系统类型等。

  • 根据情况修正

    • 情况一:不再需要Swap如果确认不再使用swap,最稳妥的做法是在

"/etc/fstab" 中找到swap那一行,在行首添加

"#" 将其注释掉,然后保存文件。text

UUID=xxxx-xxxx-xxxx none swap defaults 0 0

这样systemd启动时就不会再尝试挂载它,从而消除超时等待。

  • 情况二:仍希望使用Swap
1. 使用

"sudo blkid" 命令查看当前系统中真实的swap分区或文件的UUID。

2. 将

"/etc/fstab" 文件中swap条目的UUID修改为

"blkid" 命令查到的新UUID。

3. 保存文件后,执行

"sudo update-grub"(部分系统为

"sudo grub-mkconfig -o /boot/grub/grub.cfg")更新GRUB配置,然后重启。

💡 关于“关闭Swap”的建议

对于您32GB内存的配置,日常使用基本不会耗尽内存,关闭swap通常不会影响系统稳定性。但是,请注意以下几点:

  • 休眠(Hibernate)功能:如果您需要使用系统的“休眠”功能,则必须保留swap分区,且其大小建议不小于物理内存。

  • 内存耗尽风险:在极少数内存被全部占满的极端情况下,缺少swap可能会导致程序被系统强制终止(OOM Killer)。

结论:从性能角度看,关闭swap对开机速度影响极小。您遇到的开机变慢问题,几乎可以确定是

"/etc/fstab" 配置错误导致的启动等待,而非swap本身的影响。

Reply View the author
neko
deepin
Ecological co-builder
Q&A Team
2026-01-20 10:02
#5

看看你的/etc/fstab配置和systemd日志。

推测是systemd挂载swap超时导致的.

Reply View the author