Linux【13】-报错2-linux系统很卡的基本排查方法
这两天,G03变得好卡,于是想有没有什么快速排查的方法呢?
一、排查措施
1.查看内存使用情况
free -g
当观察到free栏已为0的时候,表示内存基本被吃完了,那就释放内存吧(参考之前的博文手动释放内容)
2.查看磁盘使用情况
df -h
当发现磁盘使用率很高时,那就要释放磁盘空间了,删除一些不必要的文件(查看各个目录占用磁盘空间,参考之前的du命令文章)
3.查看磁盘IO使用情况
iostat -x 1
1表示1秒刷新一次
当发现最右侧%util很高时,表示IO就很高了,若想看哪个进程占用IO,执行iotop命令查看
- -d只查看device信息
- -k数据的单位是kb
4.查看cpu使用情况
top
查看linux整机的性能,查看右上角load average,三个值分别是1分钟,5分钟,15分钟的系统负载值,如果3值相加除以3大于60%,负担吃紧,大于80%,建议添加机器。Cpu(s) 5%是CPU空闲率,越高越好。
下图中红框里表是cpu使用情况,最右侧的%id表示剩余,若很低,则表示cpu被吃完了,在top界面按shift+p对进程使用cpu排序,能看到哪些进程占用cpu较多
5.查看报错信息
cat /var/log/message
6. 其他
lsof -i:8080 查看端口 (???)
chmod 改变文件的权限 (???)
二、讨论
查了一遍,都没啥问题,最后的最后,还是重启了。现在怀疑是message里面有些信息我没看懂,比如NFS4的lock报错,在网上搜了一轮,都没找到问题的解决办法。
cat /var/log/messages
报错信息为:
NFS: nfs4_reclaim_open_state: Lock reclaim failed!
解决办法:
fuser -m -v /data #关闭所有跟/data有关的进程
mount -t nfs -o tcp,nolock ip地址:/data/ /data/
NFS 的默认传输协议是 UDP,在一些特定的情况下网络不好,或者传输文件较大时会出现这种情况。原因可能是和服务端网卡传输速率冲突,使得目标机需要大量时间复制大量数据包。
参考资料
这里是一个广告位,,感兴趣的都可以发邮件聊聊:tiehan@sina.cn
个人公众号,比较懒,很少更新,可以在上面提问题,如果回复不及时,可发邮件给我: tiehan@sina.cn
个人公众号,比较懒,很少更新,可以在上面提问题,如果回复不及时,可发邮件给我: tiehan@sina.cn