Linux体检,了解你的Linux状态(网络IO,磁盘,CPU,内存)

目录
  • 1、核心命令
  • 2、常用命令
  • 3、核心命令详解
    • 3.1、ps aux
    • 3.2、Top
      • 1、上半部分显示了整体系统负载情:
      • 2、下半部分显示了各个进程的运行情况:

1、核心命令

linux 监控网络IO、磁盘、CPU、内存:

CPU:vmstat 、sar –u、top

磁盘IO:iostat –xd、sar –d、top

网络IO:iftop -n、ifstat、dstat –nt、sar -n DEV 2 3

磁盘容量:df –h

内存使用:free –m、top

2、常用命令

(1)内存:条数、每条大小、内存是DDR4还是DDR3、内存频率是2666MT/S还是1600MT/s

条数: dmidecode|grep -A5 'Memory Device'|grep Size | grep -v Installed |wc -l
每条大小: dmidecode|grep -A5 'Memory Device'|grep Size | grep -v Installed |uniq
内存类型: dmidecode | grep -A16 "Memory Device" | grep 'Type:' |grep -v Unknown |uniq
内存频率: dmidecode | grep -A16 "Memory Device" | grep 'Speed' |grep -v Unknown |uniq

(2)硬盘:块数,大小

fdisk -l | grep "Disk /dev/sd"

(3)查看什么进程占用端口

netstat -antp | fgrep <port>

(4)查看进程资源

jps -l # 获取进程idjmap -heap 21046

(5)CPU个数

cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l

(6)CPU核数

cat /proc/cpuinfo| grep "cpu cores"| uniq

(7)CPU主频

cat /proc/cpuinfo| grep "model name"| uniq

3、核心命令详解

3.1、ps aux

ps命令用于查看系统中的进程状态

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

  • USER,进程所有者的用户名。
  • PID,进程号,可以唯一标识该进程。
  • %CPU,进程自最近一次刷新以来所占用的CPU时间和总时间的百分比。
  • %MEM,进程使用内存的百分比。
  • VSZ,进程使用的虚拟内存大小,以K为单位。
  • RSS,进程占用的物理内存的总数量,以K为单位。
  • TTY,进程相关的终端名。
  • STAT,进程状态,用(R--运行或准备运行;S--睡眠状态;I--空闲;Z--冻结;D--不间断睡眠;W-进程没有驻留页;T停止或跟踪。)这些字母来表示。
  • START,进程开始运行时间。
  • TIME,进程使用的总CPU时间。
  • COMMAND,被执行的命令行。

3.2、Top

top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。

1、上半部分显示了整体系统负载情:

  • top一行:从左到右依次为当前系统时间,系统运行的时间,系统在之前1min、5min和15min内cpu的平均负载值
  • Tasks一行:该行给出进程整体的统计信息,包括统计周期内进程总数、运行状态进程数、休眠状态进程数、停止状态进程数和僵死状态进程数
  • Cpu(s)一行:cpu整体统计信息,包括用户态下进程、系统态下进程占用cpu时间比,nice值大于0的进程在用户态下占用cpu时间比,cpu处于idle状态、wait状态的时间比,以及处理硬中断、软中断的时间比
  • Mem一行:该行提供了内存统计信息,包括物理内存总量、已用内存、空闲内存以及用作缓冲区的内存量
  • Swap一行:虚存统计信息,包括交换空间总量、已用交换区大小、空闲交换区大小以及用作缓存的交换空间大小

2、下半部分显示了各个进程的运行情况:

  • PID: 进程pid
  • USER: 拉起进程的用户
  • PR: 该列值加100为进程优先级,若优先级小于100,则该进程为实时(real-time)进程,否则为普通(normal)进程,实时进程的优先级更高,更容易获得cpu调度,以上输出结果中,java进程优先级为120,是普通进程,had进程优先级为2,为实时进程,migration 进程的优先级RT对应于0,为最高优先级
  • NI: 进程的nice优先级值,该列中,实时进程的nice值为0,普通进程的nice值范围为-20~19
  • VIRT: 进程所占虚拟内存大小(默认单位kB)
  • RES: 进程所占物理内存大小(默认单位kB)
  • SHR: 进程所占共享内存大小(默认单位kB)
  • S: 进程的运行状态
  • %CPU: 采样周期内进程所占cpu百分比
  • %MEM: 采样周期内进程所占内存百分比
  • TIME+: 进程使用的cpu时间总计
  • COMMAND: 拉起进程的命令

根据以上命令,提前设置监控预警。监控预警能够让你及时发现系统的性能信息、比如磁盘快满了,内存超负荷了,我们可以提前作出调整。

最后,遇到问题不要慌。根据经验,再通过命令排查内存、磁盘、网络、cpu,问题无非就这几类,切不可着急忙慌乱改一通,让简单问题复杂化,希望大家以后多多支持我们!

(0)

相关推荐

  • Linux Shell+Curl网站健康状态检查脚本,抓出中国博客联盟失联站点

    一开始搭建中国博客联盟,既有博友提醒我,做网址大全这类网站维护很麻烦,需要大量的精力去Debug一些已夭折的网站,更是拿松哥的博客大全举例.当然,我也是深以为然.前些时间,看到梦轩丽人的boke123网址大全的维护记录,好像是纯手工检查,张戈实在是佩服的五体投地,太有毅力了. 现在博客联盟也收录的博客也已破200了,全部来自自主提交,不管你是草博还是名博,张戈不会强买强卖.由于大部分都是建站不过半年的新站,半路放弃.提前太监的博客估计还是有的,于是我决定还是把站点维护这个工作做起来. 上午用PH

  • 检查linux网络状态的两个脚本

    一.通过定时收发email检测网络连通性 复制代码 代码如下: #/bin/bashecho "Daily test mail" > state.txtmail -s Server_State abc@jb51.net < state.txtrm -df ./state.txt ~                         crontab -e增加如下任务10 07 * * * /root/checkNKmail &分时日月周 二.定时检测网络状态通过emai

  • linux防火墙状态查看的方法实例

    linux防火墙状态查看的方法 1.基本操作 # 查看防火墙状态 service iptables status # 停止防火墙 service iptables stop # 启动防火墙 service iptables start # 重启防火墙 service iptables restart # 永久关闭防火墙 chkconfig iptables off # 永久关闭后重启 chkconfig iptables on 2.开启80端口 vim /etc/sysconfig/iptabl

  • Shell脚本实现检查服务器安全状态(用户、登录IP、防火墙检查)

    说明:大家平时对Linux服务器安全主要是对系统用户的检查,登陆服务器IP检查,以及防火墙状态检查! 1.需要把正确系统用户名存储在/root/liu_shell/local_user.txt文件中,然后进行比较! 2.对登陆IP判断是不是以192.168.1和192.168.2开头的IP为正常IP! 3.判断iptables状态! 复制代码 代码如下: #!/usr/bin/python #coding=utf-8 import sys,os,re,socket host=str(socket

  • Linux体检,了解你的Linux状态(网络IO,磁盘,CPU,内存)

    目录 1.核心命令 2.常用命令 3.核心命令详解 3.1.ps aux 3.2.Top 1.上半部分显示了整体系统负载情: 2.下半部分显示了各个进程的运行情况: 1.核心命令 linux 监控网络IO.磁盘.CPU.内存: CPU:vmstat .sar –u.top 磁盘IO:iostat –xd.sar –d.top 网络IO:iftop -n.ifstat.dstat –nt.sar -n DEV 2 3 磁盘容量:df –h 内存使用:free –m.top 2.常用命令 (1)内存

  • Linux虚拟机修改ip地址,查看网关,网络环境配置的教程

    修改虚拟机的ip地址: 进入如下界面,直接修改子网ip即可. 查看网关: Linux网络环境配置: 第一种方式(自动获取): 说明:登陆后,通过界面来设置自动获取ip 我们先进入设置: 把自动连接勾上然后点应用.之后每次启动系统的时候就可以自动连接网络了. 特点:Linux启动后会自动获取ip,缺点是每次自动获取的ip地址可能不一样,这种方法不适用于做服务器,因为我们服务器的ip需要实时固定. 第二种方法:(指定固顶的ip) 说明: 直接修改配置文件来指定ip,并可以链接到外网(程序员推荐),编

  • Linux bridge桥接两个VirtualBox虚拟网络的方法步骤

    这篇文章缘起于这段时间我对拆东墙补西墙这种工作方式的抱怨. 先是磁盘空间不够用,配发的电脑仅仅剩余12G的空间,不能外接硬盘,暂时也不能上传备份,相当于一台离线的机器吧.我却要完整编译一个4.19版本的Linux内核-于是没日没夜的,我开始人肉压缩再释放的操作,不得开心颜.最终我还是搞定了问题,不过这个磁盘空间问题解决得不算优雅,至少它无法让人觉得我在炫技. 和针对磁盘空间的抱怨相比,下面的问题就有点意思了. 使用虚拟机搭建网络测试环境总是会遇到各种奇葩的问题,这往往是各种虚拟机平台的缺陷所致.

  • Linux备份及恢复及Linux文件权限详解

    Linux备份及恢复及Linux文件权限详解 概述 一个系统管理员菜鸟不小心输入"chmod -R 777 /"从而导致了巨大的悲剧,使得整个系统遭到了严重的破坏.在日常管理中,我们有许多工具可以用来备份文件权限,如cp.rsync.etckeeper等.如果你使用了这个备份工具,那么你的确不需要担心改变的文件权限问题. 但如果只是想暂时备份文件权限(而不是文件本身),例如:为了阻止一些目录的内容被覆盖暂时移除该目录下所有文件写的权限:或是正在排除文件权限问题的过程中需要对文件进行ch

  • 总结网络IO模型与select模型的Python实例讲解

    网络I/O模型 人多了,就会有问题.web刚出现的时候,光顾的人很少.近年来网络应用规模逐渐扩大,应用的架构也需要随之改变.C10k的问题,让工程师们需要思考服务的性能与应用的并发能力. 网络应用需要处理的无非就是两大类问题,网络I/O,数据计算.相对于后者,网络I/O的延迟,给应用带来的性能瓶颈大于后者.网络I/O的模型大致有如下几种: 同步模型(synchronous I/O) 阻塞I/O(bloking I/O) 非阻塞I/O(non-blocking I/O) 多路复用I/O(multi

  • Android图片三级缓存策略(网络、本地、内存缓存)

    一.简介 现在的Android应用程序中,不可避免的都会使用到图片,如果每次加载图片的时候都要从网络重新拉取,这样不但很耗费用户的流量,而且图片加载的也会很慢,用户体验很不好.所以一个应用的图片缓存策略是很重要的.通常情况下,Android应用程序中图片的缓存策略采用"内存-本地-网络"三级缓存策略,首先应用程序访问网络拉取图片,分别将加载的图片保存在本地SD卡中和内存中,当程序再一次需要加载图片的时候,先判断内存中是否有缓存,有则直接从内存中拉取,否则查看本地SD卡中是否有缓存,SD

  • 虚拟机中Linux新手入门配置IP以及重启网络

    刚刚接触虚拟机,或者刚在虚拟机中安装linux的朋友们,因为是在虚拟机中安装的系统,所以需要自己配置IP地址. 下面分几步来配置这个IP地址: 第一步:打开你的虚拟机,打开linux,并使用root账号登录. 如图,我是用的是CentOS7.2系统,点击登录进去后,进入敲指令的界面,输入vi /etc/sysconfig/network-scripts/ifcfg-eth0(后面的eth每台电脑不一样,可按tab键补全.) 按照上述指令进入配置IP的界面,如图所示 由于我是已经配好的了,所以会比

  • linux系统使用python监测网络接口获取网络的输入输出

    net.py 获取网络接口的输入和输出 复制代码 代码如下: #!/usr/bin/env Pythonimport timeimport sys if len(sys.argv) > 1: INTERFACE = sys.argv[1]else: INTERFACE = 'eth0'STATS = []print 'Interface:',INTERFACE def rx(): ifstat = open('/proc/net/dev').readlines() for interface i

  • Linux下apache日志分析与状态查看方法

    假设apache日志格式为:118.78.199.98 – - [09/Jan/2010:00:59:59 +0800] "GET /Public/Css/index.css HTTP/1.1″ 304 – "http://www.a.cn/common/index.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; GTB6.3)" 问题1:在apachelog中找出访问次数最多的1

  • linux vps服务器进程kswapd0与events/0消耗大量CPU的问题

    今天下午网站宕了两次机,发工单给阿里云,发现原因是服务器的CPU 100%了. 重启服务器后,使用 top 命令看看是哪些进程消耗那么大的 CPU 使用.盯了有好十几分钟,主要消耗 CPU 的进程有两个,一个是 mysql,另一个是 apache.下面的图可以看到,mysql 占用了很大部分的 CPU 使用.apache 单个进程虽然占得不多,但有不少个 apache 进程同时存在,也消耗了不少 CPU 的使用. 当然,这些不足以让服务器的 CPU 直接跑满挂掉,后来发现了两个大家伙: 当 my

随机推荐