通过systemd-analyze工具定位耗时服务,为优化提供依据:
systemd-analyze(显示内核初始化和用户空间服务启动总时间);systemd-analyze blame(按耗时从高到低排序服务);systemd-analyze critical-chain(显示关键路径上的服务依赖关系);systemd-analyze plot > ~/boot.svg(生成SVG图表,直观展示各阶段耗时)。sudo systemctl disable <service-name>.service。调整GRUB参数减少启动等待时间:
/etc/default/grub文件,修改以下参数:
GRUB_TIMEOUT=2(将菜单显示时间缩短至2秒,若无需选择则设为0);GRUB_TIMEOUT_STYLE="menu"(强制显示启动菜单,避免自动跳过导致的隐藏问题);GRUB_CMDLINE_LINUX_DEFAULT(移除不必要的启动参数,如quiet splash,便于查看启动日志)。sudo update-grub使配置生效。禁用或移除非必需的自动启动服务,减少系统负担:
systemctl list-unit-files --type=service --state=enabled;sudo systemctl disable <service-name>.service(如bluetooth.service、cups.service);sudo apt purge <package-name>(如bluetooth、cups包)。ssh.service、networkd.service),防止影响系统稳定性。通过调整内核配置提升启动效率:
/etc/sysctl.conf文件,添加或修改以下参数:
net.ipv4.tcp_tw_reuse=1(复用TIME-WAIT状态的TCP连接,减少网络初始化时间);net.core.somaxconn=4096(增加TCP连接队列长度,避免网络瓶颈);vm.swappiness=10(降低交换分区使用频率,优先使用物理内存)。sudo sysctl -p。使用读写速度更快的文件系统,提升系统启动时的文件加载效率:
ext4(默认支持日志功能,稳定性好)或XFS(高性能,适合大文件处理);ext3,可通过sudo apt install e2fsprogs安装工具,然后运行sudo tune2fs -O has_journal /dev/sdX(/dev/sdX为目标分区)升级至ext4;释放磁盘空间,减少启动时的文件扫描时间:
sudo apt clean(删除已下载的软件包文件);sudo apt autoremove(删除不再需要的依赖包);sudo apt purge $(dpkg -l | grep 'linux-image-.*-generic' | grep -v $(uname -r) | awk '{print $2}')(保留当前使用的内核,删除旧版本)。通过升级硬件提升启动速度: