为了账号安全,请及时绑定邮箱和手机立即绑定

排查线上问题常用的几个Linux命令

标签:
Linux

top

相当于Windows任务管理器

https://img1.sycdn.imooc.com//5b8904410001587e08690487.jpg

可以看到,输出结果分两部分,前5行是总览,下面是具体的进程资源占用情况。下面逐行看一下

第1行

top - 18:14:58 up 112 days,  1:35,  1 user,  load average: 0.00, 0.10, 0.11

依次表示:当前时间、系统已经运行的时间、当前登录的用户数、系统在过去的1分钟,5分钟,15分钟的负载

(PS:

从这一行我们可以知道以下信息

  • 当前时间是18:14:58

  • 系统运行了112天1小时35分钟

  • 当前有1个用户登录

  • 在过去1分钟,5分钟,15分钟的负载分别是0.00, 0.10, 0.11

负载超过1,则表示超负荷

第2行

Tasks: 225 total,   1 running, 224 sleeping,   0 stopped,   0 zombie

进程信息

  • total    进程总数

  • running   运行中的进程数

  • sleeping  睡眠中的进程数

  • stopped  停止的进程数

  • zombie   僵尸进程数

(PS:从这一行我们可以知道,当前总共225个进程)

第3行

Cpu(s):  1.8%us,  0.9%sy,  0.0%ni, 97.1%id,  0.1%wa,  0.0%hi,  0.1%si,  0.0%st

CPU使用情况

us : 用户进程占用CPU百分比

sy : 内核进程占用CPU百分比

ni : 改变过优先级的进程占用CPU百分比

id : 空闲CPU百分比

wa : IO等待的进程占用CPU百分比

hi : 硬中断占用CPU的百分比

si : 软中断占用CPU的百分比

st : 

https://img1.sycdn.imooc.com//5b89044c0001181305270174.jpg

第4行

Mem:  32879852k total, 23633040k used,  9246812k free,   311552k buffers

物理内存使用情况

  • total  总的内存大小

  • used  已使用

  • free  未使用

  • buffers  内核缓冲区   

可用内存 = free + buffers + cached

第5行

Swap:  4194300k total,   255104k used,  3939196k free, 10422508k cached

虚拟内存使用情况

其余行

https://img1.sycdn.imooc.com//5b8904560001b80c05880932.jpg

free -m

查看已使用和未使用的内存情况

https://img1.sycdn.imooc.com//5b8904610001292208220130.jpg

Mem  total = used + free

Swap  total = used + free

可用内存 = free + buffers + cached

(-buffers/cache) used内存数 = Mem行中的 used – buffers – cached

(+buffers/cache) free内存数 = Mem行中的 free + buffers + cached

iostat

https://img1.sycdn.imooc.com//5b8904680001e2d008580213.jpg

格式:iostat [ 选项 ] [ <时间间隔> [ <次数> ]]

示例:

iostat -d

iostat -d 2 2

iostat -x 1 2

https://img1.sycdn.imooc.com//5b89046f0001ac3704810952.jpg

netstat

https://img1.sycdn.imooc.com//5b8904760001320f09200410.jpg

要特别关注一下“ESTABLISHED”的数量,如果ESTABLISHED越多,表示建立的连接越多,如果一直居高不下,那么就要引起注意了,因为系统对打开的连接数是有限制的。

常见应用

1、查看连接数最多的IP

netstat -na | grep ESTABLISHED | awk '{print $5}' | awk -F: '{print $1}' | sort | uniq -c

 2、统计TCP不同状态的连接数

netstat -na | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

df -h

查看文件系统磁盘空间使用情况

https://img1.sycdn.imooc.com//5b89047e0001037b05460134.jpg

du -sh

查看(计算)文件大小

https://img1.sycdn.imooc.com//5b8904840001e66504240087.jpg

还可以这样

du --max-depth=2 --block-size=M

或者

ll --block-size=M

其它相关

Linux系统打开文件最大数量限制》 

 



感谢您的阅读,如果您觉得阅读本文对您有帮助,请点一下“推荐”按钮。欢迎各位转载,但必须在文章页面中给出作者和原文连接。

原文出处:https://www.cnblogs.com/cjsblog/p/9562380.html

点击查看更多内容
1人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消