ubuntu缓存优化策略有哪些
导读:Ubuntu缓存优化策略汇总 1. 清理APT包管理器缓存 APT缓存会占用大量磁盘空间(尤其是频繁安装/卸载软件时),定期清理可释放空间。常用命令:  sudo apt-get clean:删除所有已下载的软件包文件(位于/var/cac...
    
Ubuntu缓存优化策略汇总
1. 清理APT包管理器缓存
APT缓存会占用大量磁盘空间(尤其是频繁安装/卸载软件时),定期清理可释放空间。常用命令:
sudo apt-get clean:删除所有已下载的软件包文件(位于/var/cache/apt/archives);sudo apt-get autoclean:清理不再需要的旧版本软件包(仅保留当前安装版本的缓存);sudo apt-get autoremove:删除系统不再使用的孤立软件包(即不再被任何已安装软件依赖的包)。
2. 管理内核缓存
旧内核文件会占用/boot分区空间(该分区通常较小),导致无法升级内核或系统无法启动。操作步骤:
- 检查
/boot分区使用情况:df -h /boot(若使用率超过80%,需清理); - 删除旧内核文件:
sudo apt-get purge linux-image-< version>(替换< version>为旧内核版本号,如linux-image-5.15.0-86-generic); - 同步删除对应头文件:
sudo apt-get purge linux-headers-< version>。 
3. 使用编译缓存工具
编译大型项目时,缓存编译结果可大幅缩短编译时间:
- ccache:通用编译缓存工具,支持C/C++等语言。安装后设置环境变量
export PATH="/usr/lib/ccache:$PATH",即可自动缓存编译结果; - sccache:分布式编译缓存工具(支持远程缓存),性能优于ccache,适合团队协作或多设备开发场景(安装命令:
sudo apt-get install sccache)。 
4. 配置内存缓存服务
内存缓存可将频繁访问的数据存储在内存中,提升访问速度:
- Memcached:通用内存缓存系统,适用于数据库查询、网页会话等场景。安装后编辑
/etc/memcached.conf,修改-m参数设置缓存大小(如-m 1024表示1GB内存),重启服务:sudo systemctl restart memcached; - dnsmasq:轻量级DNS缓存工具,可缓存DNS查询结果,减少网络请求延迟。安装后编辑配置文件(如
/etc/dnsmasq.conf),设置cache-size=1000(缓存条目数)和cache-mem=512(缓存内存大小,单位MB),重启服务:sudo systemctl restart dnsmasq。 
5. 清理内存缓存
Linux系统会自动使用空闲内存作为缓存(如PageCache、dentries、inodes),但手动清理可快速释放内存(不影响正在运行的程序):
- 清理PageCache(页面缓存):
sudo sync & & echo 1 | sudo tee /proc/sys/vm/drop_caches; - 清理dentries和inodes(目录项和索引节点缓存):
sudo sync & & echo 2 | sudo tee /proc/sys/vm/drop_caches; - 清理所有缓存(PageCache+dentries+inodes):
sudo sync & & echo 3 | sudo tee /proc/sys/vm/drop_caches(sync命令用于将未写入磁盘的数据同步到磁盘,避免数据丢失)。 
6. 调整Swappiness参数
vm.swappiness参数控制系统使用交换分区(swap)的偏好程度(默认值60,范围0-100)。值越高,系统越倾向于使用swap(当内存不足时,会导致性能下降);值越低,系统越倾向于保留内存(适合内存充足的场景)。优化方法:
- 临时调整:
sudo sysctl -w vm.swappiness=10(设置为10,减少swap使用); - 永久生效:编辑
/etc/sysctl.conf文件,添加vm.swappiness=10。 
7. 优化文件系统缓存
文件系统缓存(如ext4、XFS的缓存)对I/O性能影响较大,可通过以下方式优化:
- 调整脏页面写入策略:修改
vm.dirty_background_ratio(后台写入脏页面的内存比例,默认10%)和vm.dirty_ratio(触发强制写入的脏页面比例,默认20%),降低这两个值可减少写入延迟(如设置为5和10); - 选择合适的I/O调度器:SSD设备推荐使用
noop(无调度)或deadline(低延迟)调度器(通过lsblk -f查看设备,cat /sys/block/sda/queue/scheduler查看当前调度器,修改/sys/block/sda/queue/scheduler文件选择调度器)。 
8. 利用SSD缓存
SSD的高速读写性能可用于加速频繁访问的数据:
- 将
/tmp目录挂载到SSD:编辑/etc/fstab文件,添加tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0(将/tmp挂载为内存文件系统,适合临时文件); - 使用
bcache或flashcache工具将SSD作为机械硬盘的缓存(适合机械硬盘用户,提升读写速度)。 
9. 定时清理缓存
通过定时任务(cron)定期执行清理操作,避免缓存积累:
- 编辑定时任务:
crontab -e; - 添加以下内容(每天凌晨3点清理APT缓存和内存缓存):
0 3 * * * apt-get clean & & sync & & echo 3 > /proc/sys/vm/drop_caches 
10. 监控缓存使用情况
实时监控缓存使用情况,及时发现异常:
free -m:查看内存和缓存使用情况(重点关注buff/cache列);top/htop:查看进程缓存占用(按M键按内存排序);vmstat 1:查看系统级缓存统计(如cache表示PageCache,buff表示缓冲区缓存)。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: ubuntu缓存优化策略有哪些
本文地址: https://pptw.com/jishu/741557.html
