Swap(交换分区)是硬盘上的一块空间,在物理内存不足时作为虚拟内存使用。
查看当前 Swap
swapon --show free -h
创建 Swap 文件
# 创建 2GB Swap 文件 sudo fallocate -l 2G /swapfile sudo chmod 600 /swapfile sudo mkswap /swapfile sudo swapon /swapfile
持久化配置
在 /etc/fstab 末尾添加:
/swapfile none swap sw 0 0
调整 swappiness
swappiness 控制内核使用 Swap 的倾向(0-100,默认 60):
# 临时调整 sudo sysctl vm.swappiness=10 # 永久调整 echo "vm.swappiness=10" | sudo tee -a /etc/sysctl.conf
数值越低,系统越倾向使用物理内存;服务器建议设为 10-30。
内存使用分析
# 内存概览 free -h # 实时监控 vmstat 1 top -o %MEM # 按内存排序进程 ps aux --sort=-%mem | head -10
OOM Killer
当系统内存完全耗尽时,OOM Killer 会强制终止进程释放内存。可以通过设置进程的 OOM 评分来保护重要进程:
# 查看进程 OOM 评分 cat /proc/1234/oom_score # 降低被 kill 的概率(-1000 到 1000) echo -500 > /proc/1234/oom_score_adj