Ubuntu 使用 Linux 内核提供的缓存机制来提高系统性能。这种机制利用物理内存的一部分作为缓冲区,用于缓存系统操作和数据文件。当系统收到读写的请求时,内核会首先检查缓存区是否有请求的数据,如果有,则直接返回,否则通过驱动程序直接操作磁盘。
缓存类型及其作用
- Buffers:用于缓存文件的元数据(如目录项和索引节点)以及页面缓存。这些缓存主要涉及文件系统的元数据,帮助加速对已打开文件的访问。
- Cached:用于缓存实际的数据块。当应用程序需要读取文件中的数据时,操作系统会先尝试从缓存中获取,以减少磁盘 I/O 操作。
缓存操作方法
-
清理 Buffers 和 Cached 缓存:
- 清理页面缓存:
sudo sync && echo 1 | sudo tee /proc/sys/vm/drop_caches
- 清理 dentries 和 inodes:
sudo sync && echo 2 | sudo tee /proc/sys/vm/drop_caches
- 清理所有缓存:
sudo sync && echo 3 | sudo tee /proc/sys/vm/drop_caches
- 清理页面缓存:
手动清理缓存的命令
- 查看内存情况:
free -m
- 进入 root 用户,执行清缓存命令:
- 清理页面缓存:
sudo sync && echo 1 | sudo tee /proc/sys/vm/drop_caches
- 清理 dentries 和 inodes:
sudo sync && echo 2 | sudo tee /proc/sys/vm/drop_caches
- 清理所有缓存:
sudo sync && echo 3 | sudo tee /proc/sys/vm/drop_caches
- 清理页面缓存:
需要注意的是,在执行清理缓存操作时,应谨慎操作,因为这些操作可能会导致系统性能暂时下降,直到系统重新加载缓存。