linux 内存和磁盘不够了怎么办
2021-01-14 本文已影响0人
ZaneYo
内存不够的情况
1 打印占用内存最多的前十个进程
ps -eo rss,pid,user,command --sort -rss | awk '{ hr=$1/1024 ; printf("%13.2f Mb ",hr) } { for ( x=4 ; x<=NF ; x++ ) { printf("%s ",$x) } print "" }' |cut -d "" -f2 | cut -d "-" -f1 |head -n 10
ps 语法
ps (英文全拼:process status)命令用于显示当前进程的状态,类似于 windows 的任务管理器。
发现好多npm相关的
23.81 Mb npm list
..
17.48 Mb npm
16.60 Mb npm
...
查看进程
ps -eo rss,pid,user,command --sort -rss | grep npm
pid
24376 31593 nobody npm list
24372 18905 nobody npm list
21496 17180 nobody npm list
21476 5445 nobody npm list
17904 31589 nobody npm
16996 18902 nobody npm
15060 9146 nobody npm
14896 9137 nobody npm
12664 380 nobody npm
12372 377 nobody npm
sudo kill -9 [pid]
2 腾讯服务器自带的云镜和云监控占用了一点内存
卸载云镜命令
bash /usr/local/qcloud/YunJing/uninst.sh
卸载云监控命令 (barad_agent top中查看到的进程名称)
wget -qO- https://raw.githubusercontent.com/littleplus/TencentAgentRemove/master/remove.sh | bash
然后手动kill掉 barad_agent 对应的进程
rm -rf /usr/local/qcloud
3 手动临时清理缓存
清理页面缓存
echo 1 > /proc/sys/vm/drop_caches
清理目录缓存和inodes
echo 2 > /proc/sys/vm/drop_caches
清理pagecache、dentries和inodes
echo 3 > /proc/sys/vm/drop_caches
清理文件系统缓存和清理僵尸(zombie)对象和它们占用的内存
sync
free -h
优化前
total used free shared buff/cache available
Mem: 985M 756M 76M 5.9M 152M 85M
Swap: 0B 0B 0B
优化后
total used free shared buff/cache available
Mem: 985M 561M 262M 5.9M 161M 279M
Swap: 0B 0B 0B
磁盘不足的情况
会报错 No space left on device
查看磁盘使用情况使用 df命令 (英文全拼:disk free)
最常用的命令 df -h
- -h --human-readable 使用人类可读的格式
Filesystem Size Used Avail Use% Mounted on
udev 7.6G 0 7.6G 0% /dev
tmpfs 1.6G 129M 1.4G 9% /run
/dev/vda1 197G 197G 0 100% / #这里已经满了
tmpfs 7.6G 0 7.6G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 7.6G 0 7.6G 0% /sys/fs/cgroup
tmpfs 1.6G 0 1.6G 0% /run/user/0
/dev/vda1 满了解决办法
使用du命令查看指定的目录或文件所占用的磁盘空间(英文全拼:disk usage)
- -s 或--summarize 仅显示总计
- h 或 --human-readable 使用人类可读的格式
cd /
du -sh *
可以查看到哪个文件占用的磁盘最多
一般是存放log的文件 删除log 重新查看磁盘使用情况
优化后
Filesystem Size Used Avail Use% Mounted on
udev 7.6G 0 7.6G 0% /dev
tmpfs 1.6G 28M 1.5G 2% /run
/dev/vda1 197G 41G 149G 22% /
tmpfs 7.6G 0 7.6G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 7.6G 0 7.6G 0% /sys/fs/cgroup
tmpfs 1.6G 0 1.6G 0% /run/user/0