在 CentOS(以及大多数 Linux 发行版)中,**“清理内存”**通常分为两类:
下面分别说明。
free -h
或
top
你会看到类似:
total used free buff/cache
其中 buff/cache 是系统缓存,不是真的“浪费”。
sync
echo 3 > /proc/sys/vm/drop_caches
说明:
sync:先写盘,防止数据丢失echo 1:只清 pagecacheecho 2:清 dentries + inodesecho 3:全部清理⚠️ 注意
ps aux --sort=-%mem | head
或
top
kill -9 PID
或重启服务:
systemctl restart 服务名
例如:
systemctl restart nginx
systemctl restart mysqld
如果 swap 占用高:
swapoff -a
swapon -a
⚠️ 需要先确保物理内存足够,否则会卡死。
vm.swappinesssysctl vm.swappiness=10
-Xmx)❌ “CentOS 内存占用高 = 有问题”
✅ 实际:Linux 会尽量用内存做缓存,这是正常的
如果你愿意,可以贴一下:
free -h
top -b -n1 | head -20
我可以帮你具体分析是哪部分内存该清、不该清。