Debian 优化技巧
bash
备份当前源
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
编辑源文件
sudo nano /etc/apt/sources.list
将文件内容替换为国内镜像(以清华大学镜像为例,按实际情况修改发行版代号 `bookworm`):
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm main contrib non-free non-free-firmware deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-updates main contrib non-free non-free-firmware deb https://mirrors.tuna.tsinghua.edu.cn/debian-security bookworm-security main contrib non-free non-free-firmware
保存后更新索引:
```bash
sudo apt update
启用 APT 快速缓存
apt-fast 能够多线程下载软件包,可以替代 apt-get 使用。
sudo apt install apt-fast
安装过程中会询问下载管理器,选择 aria2c 可获得最佳加速效果。之后安装软件时使用 sudo apt-fast install <包名> 即可。
系统服务与启动优化
清理不必要的自启动服务
Debian 默认会开启一些你可能用不到的服务,禁用它们可以释放内存并加快开机速度。
首先列出所有已启用的服务:
systemctl list-unit-files --state=enabled
常见可安全禁用的服务(根据需求判断):
- bluetooth.service — 如果没有蓝牙设备
- cups.service — 如果不使用打印机
- ModemManager.service — 无移动宽带需求
- avahi-daemon.service — 不依赖 mDNS/Zeroconf 发现服务
禁用示例:
sudo systemctl disable --now bluetooth.service
分析并优化开机耗时
使用 systemd-analyze 查看总启动时间:
systemd-analyze
查看拖慢启动的服务排序:
systemd-analyze blame
对于耗时较长的服务,如果可以禁用则禁用;如果是依赖网络的服务,可以调整其启动顺序或等待条件。
内存与交换空间优化
减少 swap 使用倾向
如果你的系统有足够内存(如 4GB 以上),可以减少系统使用 swap 的倾向,让数据更多地保留在内存中,提升整体响应速度。
检查当前 swappiness 值(默认 60):
cat /proc/sys/vm/swappiness
临时修改为 10:
sudo sysctl vm.swappiness=10
永久生效:
echo "vm.swappiness=10" | sudo tee /etc/sysctl.d/99-swappiness.conf
使用 zram 替代传统 swap(可选)
zram 在内存中创建压缩块设备,比磁盘 swap 快得多,特别适合内存不大的设备。
sudo apt install zram-tools
编辑配置文件:
sudo nano /etc/default/zramswap
确保设置如下(根据内存调整 SIZE,例如内存的 50%):
ALGO=lz4
PERCENT=50
重启服务:
sudo systemctl restart zramswap
文件系统与 I/O 优化
使用 noatime 挂载选项
每次访问文件时更新访问时间(atime)会产生不必要的写操作。通过在 /etc/fstab 中添加 noatime 可以降低磁盘 I/O。
查看当前挂载选项:
mount | grep " / "
编辑 fstab:
sudo nano /etc/fstab
在根分区的挂载选项中增加 noatime(用逗号分隔),例如:
UUID=xxx / ext4 defaults,noatime 0 1
更改后重新挂载或重启生效。
调整 I/O 调度器
对于 SSD,使用 mq-deadline 或 none (即 nvme 驱动自身调度) 可获得更好性能。检查当前调度器:
cat /sys/block/sda/queue/scheduler
临时更改为 mq-deadline:
echo mq-deadline | sudo tee /sys/block/sda/queue/scheduler
永久设置可以通过 udev 规则或内核命令行参数,这部分稍有难度,初学者可先使用 tuned 等工具自动优化。
内核参数调优
通过调整内核网络和性能相关参数,可以提升网络吞吐和并发处理能力。
创建自定义 sysctl 配置文件:
sudo nano /etc/sysctl.d/99-custom.conf
加入以下优化参数(适合服务器或高负载桌面):
# 网络核心参数
net.core.somaxconn = 1024
net.ipv4.tcp_fastopen = 3
net.ipv4.tcp_slow_start_after_idle = 0
# 内存与缓存
vm.vfs_cache_pressure = 50
应用设置:
sudo sysctl --system
注意:不要盲目复制生产环境参数,根据你的场景适当调整。例如
vfs_cache_pressure降低后内核会更积极保留 dentry/inode 缓存,对文件操作密集的应用有利。
桌面用户专属优化
安装预读和应用加速工具
preload 会记录你常用的应用程序并在后台提前加载到内存中,提高启动速度。
sudo apt install preload
对于使用 GNOME 等较重桌面环境的用户,还可以考虑安装 irqbalance 以优化中断分配,降低 UI 卡顿感。
调整进程优先级与 limits
避免单个进程过多占用资源。编辑:
sudo nano /etc/security/limits.conf
为用户添加软硬限制,例如:
username soft nofile 65536
username hard nofile 65536
这能避免某些应用因文件描述符不足而崩溃。
安全与清理优化
配置自动安全更新
Debian 提供 unattended-upgrades 自动安装安全补丁,保持系统始终处于坚固状态。
sudo apt install unattended-upgrades
sudo dpkg-reconfigure --priority=low unattended-upgrades
选择“是”启用自动更新。配置文件位于 /etc/apt/apt.conf.d/50unattended-upgrades,你可以根据注释调整仅安装安全更新。
定期清理旧内核与包缓存
随着时间推移,/boot 分区可能被旧内核占满,APT 缓存也会积累大量无用包。
删除不再需要的内核:
sudo apt autoremove --purge
清理下载的软件包缓存:
sudo apt clean
性能监控与验证
优化后应持续观察系统状态,确保改动带来正面效果。
- htop / btop:直观查看 CPU、内存、进程负载。
sudo apt install htop btop - iostat:监控磁盘 I/O,验证
noatime等改动。sudo apt install sysstat iostat -x 1 - dstat:综合显示资源统计信息。
sudo apt install dstat dstat -c -d -m -n 1