一、检查内存使用情况
通过以下命令可快速获取内存使用概况:
free -m
:显示以MB为单位的物理内存和交换分区使用量top
:实时监控进程内存占用,按Shift+M按内存排序htop
:增强型交互式进程查看工具,直观显示内存占用比例
二、终止高内存进程
识别异常进程后,可执行终止操作:
- 使用
ps -aux --sort=-%mem
列出内存占用排序的进程 - 通过
kill -9 PID
强制终止指定进程(需root权限) - 批量清理僵尸进程:
killall -9 进程名
三、清理系统缓存
Linux系统提供分级缓存清理机制:
- 同步写入磁盘:
sync
- 清理页面缓存:
echo 1 > /proc/sys/vm/drop_caches
- 清理目录项和inode:
echo 2 > /proc/sys/vm/drop_caches
- 综合清理命令:
sync && echo 3 > /proc/sys/vm/drop_caches
四、优化服务配置
通过服务管理降低内存消耗:
- 查看运行服务:
systemctl list-unit-files | grep enabled
- 禁用非必要服务:
systemctl disable 服务名
- 调整Nginx/Apache的
worker_processes
和MaxClients
五、重启释放内存
终极清理方案:
- 安全重启命令:
sudo reboot
- 强制重启指令:
sudo shutdown -r now
重启前需确保执行sync
同步数据到磁盘,避免数据丢失
合理运用系统命令可实现高效内存管理,建议优先采用进程终止和缓存清理方案,重启作为最终手段。日常运维中应结合crontab
设置定时清理任务,并通过监控工具建立内存预警机制。