在 Debian 里看到 swapper / 内存不足 通常有两种情况:
下面按“先应急 → 再排查 → 长期解决”来说明。
free -h
swapon --show
如果没有 swap 或 swap 太小:
sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
验证:
free -h
如果是云服务器,2G~4G swap 通常够用
sudo sync
sudo echo 3 | sudo tee /proc/sys/vm/drop_caches
top
# 或
htop
按 M 按内存排序
dmesg | grep -i oom
dmesg | grep -i kill
如果看到 Out of memory: Killed process,说明系统触发 OOM Killer。
编辑 /etc/fstab:
/swapfile none swap sw 0 0
重启后仍生效。
cat /proc/sys/vm/swappiness
默认 60,可调低(更少用 swap):
sudo sysctl vm.swappiness=10
永久:
echo "vm.swappiness=10" | sudo tee -a /etc/sysctl.conf
例如 Docker / Java / MySQL:
-Xmx--memoryinnodb_buffer_pool_size如果是长期服务:
那通常是:
重点是:减少 swap 抖动,而不是杀 swapper
如果你愿意,可以贴一下:
free -htop 前几行我可以帮你精准判断是“内存不够”还是“配置问题”。