Ubuntu缓存设置优化方法
sudo apt-get clean删除所有已下载的软件包文件(释放/var/cache/apt/archives空间);sudo apt-get autoclean清理不再需要的旧版本软件包;sudo apt-get autoremove删除系统不再使用的孤立软件包(即不再被任何已安装软件依赖的包)。sync命令将文件系统缓冲区数据刷新到磁盘,再用echo命令清理缓存:
echo 1 | sudo tee /proc/sys/vm/drop_caches;echo 2 | sudo tee /proc/sys/vm/drop_caches;echo 3 | sudo tee /proc/sys/vm/drop_caches(注:此操作非破坏性,但会暂时降低系统性能,因下次需重新加载数据)。vm.swappiness参数控制系统使用交换分区的倾向(默认值60,范围0-100)。降低该值(如10-30)可减少系统对交换分区的依赖,提升内存使用效率。临时修改用sudo sysctl -w vm.swappiness=10,永久生效则编辑/etc/sysctl.conf文件,添加vm.swappiness=10。vm.dirty_background_ratio(后台写入脏页面的内存百分比,默认10%)和vm.dirty_ratio(触发强制写入的脏页面内存百分比,默认20%)控制文件系统缓存。例如,将dirty_background_ratio设为5、dirty_ratio设为15,可减少磁盘I/O次数,提升写入性能。sudo apt-get install ccache;配置:将CC=ccache gcc添加到环境变量(如~/.bashrc),后续编译时自动使用缓存。sudo apt-get install sccache;配置同ccache,适用于团队协作或多设备编译场景。sudo apt-get install memcached;配置:编辑/etc/memcached.conf,修改-m参数设置缓存大小(如-m 1024表示1GB),-l参数设置监听地址(如127.0.0.1仅本地访问);重启服务:sudo systemctl restart memcached。sudo apt-get install dnsmasq;配置:编辑/etc/dnsmasq.conf,设置cache-size=1000(缓存条目数)和ttl=3600(缓存时间,单位秒);重启服务:sudo systemctl restart dnsmasq。ext4或XFS,前者支持noatime挂载选项减少访问时间更新,后者适合高并发场景);调整挂载选项:在/etc/fstab中添加rw,noatime(读写+不更新访问时间),提升文件读写性能。/tmp目录挂载到SSD,提升临时文件读写速度。创建/etc/tmpfiles.d/tmp.conf文件,添加内容:D /tmp 1777 root root 10d(设置/tmp目录权限及10天清理周期),并确保/tmp挂载在SSD分区。clear_caches.sh),内容如下:#!/bin/bash
sync
echo 3 | sudo tee /proc/sys/vm/drop_caches
赋予执行权限:chmod 755 clear_caches.sh;设置定时任务(如每2分钟执行一次):crontab -e,添加*/2 * * * * /path/to/clear_caches.sh(注意:频繁清理可能影响性能,建议根据实际需求调整间隔)。