在 Ubuntu(以及大多数 Linux 系统)中,“禁用缓存”通常指 禁用系统缓存(如页缓存、Swap、APT 缓存、DNS 缓存等)。不同场景做法不同,下面按常见需求分类说明。
⚠️ 不建议长期禁用,会影响性能,仅用于测试或调试。
sudo sync
sudo sysctl vm.drop_caches=3
说明:
1:只清理 page cache2:清理 dentries + inodes3:全部清理⚠️ 这是一次性操作,不会永久禁用。
sudo sysctl vm.vfs_cache_pressure=10000
(数值越大,内核越倾向于回收缓存)
恢复:
sudo sysctl vm.vfs_cache_pressure=100
swapon --show
sudo swapoff -a
sudo swapon -a
编辑:
sudo nano /etc/fstab
注释掉 swap 行,例如:
# UUID=xxxx-none swap swap defaults 0 0
sudo apt clean
sudo apt autoclean
编辑:
sudo nano /etc/apt/apt.conf.d/99no-cache
添加:
Dir::Cache::archives "";
Dir::Cache::srcpkgcache "";
Dir::Cache::pkgcache "";
Ubuntu 20.04+ 默认使用 systemd-resolved
systemctl status systemd-resolved
编辑:
sudo nano /etc/systemd/resolved.conf
修改:
Cache=no
重启:
sudo systemctl restart systemd-resolved
about:config →browser.cache.disk.enable = false
browser.cache.memory.enable = false
docker build --no-cache .
Linux 没有安全方式完全禁用页缓存,强行做会导致系统极慢甚至不稳定。
如果你是为了:
direct I/Ofio、dd oflag=direct示例:
dd if=/dev/zero of=test bs=1G count=1 oflag=direct
| 目的 | 建议 |
|---|---|
| 测试磁盘性能 | 使用 direct I/O |
| 节省内存 | 限制缓存 / 关闭 Swap |
| 清理空间 | apt clean |
| 开发调试 | 浏览器 / 应用层禁用 |
| 系统级禁用 | ❌ 不建议 |
如果你能说明 具体场景(例如:磁盘测试、内存占用、Docker、数据库、嵌入式系统),我可以给你最合适、最安全的方案。