Linux系统安装后必做的8项性能优化
1. 为什么新装Linux系统需要优化刚安装完的Linux系统就像一辆刚从4S店提回来的新车虽然能开但还没调校到最佳状态。默认配置往往为了兼容性牺牲了性能就像新车出厂时轮胎气压都是偏高的。我在管理上百台Linux服务器的经验中发现做好初始优化能让系统在未来3年内保持流畅运行减少后期维护成本。以Ubuntu 22.04为例默认安装会加载许多普通用户用不到的服务如打印服务cups、蓝牙bluetooth这些后台进程不仅占用内存还会在系统启动时产生不必要的延迟。就像你家里常年开着的那些以为会用但实际从不使用的电器默默消耗着电费。2. 必做8项优化清单2.1 禁用不必要的启动服务运行命令查看所有启动项systemctl list-unit-files --typeservice --stateenabled典型需要禁用的服务包括cups.service除非需要打印bluetooth.service无蓝牙设备时ModemManager.service无蜂窝网络时avahi-daemon.service不需要局域网服务发现时禁用命令示例sudo systemctl disable cups.service注意不要盲目禁用所有不认识的服务有些是系统关键组件。建议先通过systemctl status 服务名查看描述。2.2 配置SSD优化如果使用固态硬盘编辑/etc/fstab文件为SSD分区添加以下挂载选项noatime,discard,errorsremount-ro然后执行sudo systemctl enable fstrim.timer sudo systemctl start fstrim.timer原理说明noatime避免每次读取文件都更新访问时间戳discard启用TRIM功能延长SSD寿命fstrim.timer定期执行TRIM维护2.3 安装常用工具包基础开发工具链sudo apt install build-essential git curl wget系统监控工具sudo apt install htop ncdu lm-sensors网络诊断工具sudo apt install net-tools traceroute tcpdump2.4 配置防火墙规则Ubuntu默认使用ufw防火墙建议配置sudo ufw allow ssh # 允许远程连接 sudo ufw allow http # 如果运行Web服务 sudo ufw enable查看当前规则sudo ufw status numbered2.5 设置自动更新编辑/etc/apt/apt.conf.d/50unattended-upgradesUnattended-Upgrade::Allowed-Origins { ${distro_id}:${distro_codename}; ${distro_id}:${distro_codename}-security; ${distro_id}ESM:${distro_codename}; };启用定时任务sudo dpkg-reconfigure --prioritylow unattended-upgrades2.6 调整swappiness值对于16GB以上内存的机器建议降低swap使用倾向echo vm.swappiness10 | sudo tee -a /etc/sysctl.conf sudo sysctl -p这个值表示内存使用达到多少百分比时开始使用swap默认60对现代硬件来说太高。2.7 安装微码更新确保CPU微码是最新的sudo apt install intel-microcode # Intel CPU 或 sudo apt install amd64-microcode # AMD CPU2.8 配置日志轮转编辑/etc/logrotate.conf调整以下参数rotate 4 weekly maxsize 100M compress delaycompress这可以防止日志文件无限增长占用磁盘空间。3. 进阶优化技巧3.1 内核参数调优编辑/etc/sysctl.conf添加# 提高网络性能 net.core.rmem_max4194304 net.core.wmem_max4194304 net.ipv4.tcp_rmem4096 87380 4194304 net.ipv4.tcp_wmem4096 16384 4194304 # 减少swap倾向 vm.vfs_cache_pressure50应用更改sudo sysctl -p3.2 电源管理优化笔记本用户安装TLP电源管理工具sudo apt install tlp tlp-rdw查看当前电源状态sudo tlp-stat -s3.3 文件系统维护设置每周自动检查文件系统sudo tune2fs -c 52 /dev/sda1 # 假设根分区是sda14. 长期维护建议每月执行一次sudo apt update sudo apt upgrade sudo apt autoremove sudo apt clean每季度检查磁盘空间使用df -h内存泄漏free -h启动时间systemd-analyze blame我在生产环境中实践这套优化方案后系统平均无故障运行时间从原来的6个月提升到了3年以上。特别是自动更新和日志轮转配置避免了90%的半夜紧急维护情况。