Swappiness是Linux内核参数,决定系统将内存数据交换到Swap空间的倾向(取值0-100,默认通常为60)。值越高,系统越倾向于使用Swap,可能导致启动时频繁磁盘I/O,拖慢速度。
cat /proc/sys/vm/swappinesssudo sysctl vm.swappiness=10(建议设为10-30,减少Swap依赖)/etc/sysctl.conf文件,末尾添加vm.swappiness=10,保存后运行sudo sysctl -p使配置生效。传统Swap分区调整大小困难且易碎片化,而Swapfile(交换文件)更灵活,能避免碎片化问题,提升Swap操作效率。
sudo fallocate -l 4G /swapfile(若fallocate不可用,用sudo dd if=/dev/zero of=/swapfile bs=1M count=4096替代)sudo chmod 600 /swapfile(确保仅root可访问)sudo mkswap /swapfile → sudo swapon /swapfile/etc/fstab,添加一行/swapfile none swap sw 0 0,保存后重启系统。Swap大小需根据物理内存调整,避免过大或过小:
通过关闭非必需的后台服务和启动项,降低系统对内存的需求,从而减少Swap的触发频率。
Startup Applications工具(或gnome-session-properties命令)移除不需要的启动程序;systemctl stop <服务名>停止不需要的服务(如bluetooth、cups等),若需永久禁用,用systemctl disable <服务名>。若使用传统Swap分区,长期使用后可能产生碎片,导致磁盘寻址时间增加,影响启动速度。可通过以下命令重新挂载Swap分区,消除碎片:
sudo swapoff /dev/sdXN(sdXN为Swap分区,如/dev/sda2)→ sudo swapon /dev/sdXN;/etc/fstab,注释掉Swap条目,重启系统后再取消注释并重启,强制系统重新创建Swap分区。定期检查Swap使用状态,及时发现异常(如Swap使用率长期过高),调整配置:
free -h(显示内存、Swap总量及已用/空闲量);swapon --show(显示Swap分区/文件的大小、使用量及优先级)。通过以上方法,可有效优化Ubuntu系统中Swap对启动速度的影响,提升系统整体响应速度。需根据实际硬件配置(如内存大小、硬盘类型)调整参数,避免过度优化。