一、查看内存占用

1、free

# free -m

以MB为单位显示内存使用情况

[root@localhost ~]# free -m
total used free shared buff/cache available
Mem:
Swap:

# free -h

以GB为单位显示内存使用情况

[root@localhost ~]# free -h
total used free shared buff/cache available
Mem: 11G .2G .5G 410M .9G .6G
Swap: .9G 0B .9G

# free -t

以总和的形式查询内存的使用信息

[root@localhost ~]# free -t
total used free shared buff/cache available
Mem:
Swap:
Total:

# free -s 5

周期性的查询内存使用信息

每5秒执行一次命令

[root@localhost ~]# free -s
total used free shared buff/cache available
Mem:
Swap:

解释:

Mem:内存的使用情况总览表(物理内存)

Swap:虚拟内存。即可以把数据存放在硬盘上的数据

shared:共享内存,即和普通用户共享的物理内存值

buffers:用于存放要输出到disk(块设备)的数据的

cached:存放从disk上读出的数据

total:机器总的物理内存

used:用掉的内存

free:空闲的物理内存

注:物理内存(total)=系统看到的用掉的内存(used)+系统看到空闲的内存(free)

2、查看某个pid的物理内存使用情况

# cat /proc/PID/status | grep VmRSS

[root@localhost ~]# pidof nginx

[root@localhost ~]#
[root@localhost ~]# cat /proc//status | grep VmRSS
VmRSS: kB
[root@localhost ~]#
[root@localhost ~]# cat /proc//status | grep VmRSS
VmRSS: kB
[root@localhost ~]#
[root@localhost ~]# pidof java [root@localhost ~]# cat /proc//status | grep VmRSS
VmRSS: kB

由上面可知,nginx服务进程的两个pid所占物理内存为"2652+1264=3916k"

3、查看本机所有进程的内存占比之和

# cat mem_per.sh

[root@localhost ~]# cat mem_per.sh
#!/bin/bash
ps auxw|awk '{if (NR>1){print $4}}' > /opt/mem_list
awk '{MEM_PER+=$1}END{print MEM_PER}' /opt/mem_list
[root@localhost ~]#
[root@localhost ~]# chmod mem_per.sh
[root@localhost ~]#
[root@localhost ~]# sh mem_per.sh
64.4
[root@localhost ~]#

脚本配置解释:
ps -auxw|awk '{print $3}'   表示列出本机所有进程的cpu利用率情况,结果中第一行带"%CPU"字符
ps -auxw|awk '{print $4}'   表示列出本机所有进程的内存利用率情况,结果中第一行带"%MEM"字符
ps auxw|awk '{if (NR>1){print $4}}  表示将"ps auxw"结果中的第一行过滤(NR>1)掉,然后打印第4行

二、查看CPU使用情况

1、top

top后键入P看一下谁占用最大

# top -d 5

周期性的查询CPU使用信息

每5秒刷新一次

top - :: up  min,   user,  load average: 0.02, 0.10, 0.05
Tasks: total, running, sleeping, stopped, zombie
%Cpu(s): 3.0 us, 2.8 sy, 0.0 ni, 94.2 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
# us:表示用户空间程序的cpu使用率(没有通过nice调度)
# sy:表示系统空间的cpu使用率,主要是内核程序。
# id:空闲cpu
KiB Mem : total, free, used, buff/cache
KiB Swap: total, free, used. avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
mysql S 0.6 25.2 :02.31 mysqld
root S 0.4 0.0 :01.14 kworker/:
root S 0.4 0.0 :00.17 xfsaild/dm-
root R 0.4 0.1 :00.11 top
root S 0.2 0.4 :01.69 systemd
root S 0.2 0.0 :00.18 khugepaged
root S 0.2 0.3 :00.18 sshd
root S 0.0 0.0 :00.01 kthreadd
root S 0.0 0.0 :00.01 ksoftirqd/
root S 0.0 0.0 :00.00 kworker/:
root - S 0.0 0.0 :00.00 kworker/:0H
root S 0.0 0.0 :00.02 kworker/u256:
root rt S 0.0 0.0 :00.00 migration/
root S 0.0 0.0 :00.00 rcu_bh
root S 0.0 0.0 :00.00 rcuob/
root S 0.0 0.0 :00.00 rcuob/
root S 0.0 0.0 :00.00 rcuob/

2、ps auxw(查看本机的进程所占cpu和mem的百分比情况)

使用"ps auxw" 可以查看到本机的进程所占cpu和mem的百分比情况

# ps auxw | head -1

%CPU 进程的cpu占用率
%MEM 进程的内存占用率

[root@localhost ~]# ps auxw | head -
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
[root@localhost ~]#

查看java进程所占本机的cpu百分比, 如下为0.2%

# ps auxw |grep -v grep|grep -w java|awk '{print $3}'

[root@localhost ~]# ps auxw |grep -v grep|grep -w java|awk '{print $3}'
0.2

查看java进程所占本机的内存百分比, 如下为30.0%

# ps auxw |grep -v grep|grep -w java|awk '{print $4}'

[root@localhost ~]# ps auxw |grep -v grep|grep -w java|awk '{print $4}'
30.0

3、查看本机所有进程的CPU占比之和

# cat cpu_per.sh

[root@localhost ~]# cat cpu_per.sh
#!/bin/bash
ps auxw|awk '{if (NR>1){print $3}}' > /opt/cpu_list
awk '{CPU_PER+=$1}END{print CPU_PER}' /opt/cpu_list
[root@localhost ~]#
[root@localhost ~]# chmod cpu_per.sh
[root@localhost ~]#
[root@localhost ~]# sh cpu_per.sh
44.5
[root@localhost ~]#

三、查看cpu信息(信息记录在/proc/cpuinfo中)

# 总核数 = 物理CPU个数 X 每颗物理CPU的核数

# 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数

1、查看虚拟机逻辑CPU的个数

# cat /proc/cpuinfo| grep "processor"| wc -l

[root@localhost ~]# cat /proc/cpuinfo| grep "processor"| wc -l

2、查看物理CPU个数

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

[root@localhost ~]# cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l

3、列出CPU详细信息

# lscpu

服务器1:

[root@localhost ~]# lscpu
Architecture: x86_64
CPU op-mode(s): -bit, -bit
Byte Order: Little Endian
CPU(s):
On-line CPU(s) list: -
Thread(s) per core:
Core(s) per socket:
座:
NUMA 节点:
厂商 ID: GenuineIntel
CPU 系列:
型号:
型号名称: Intel(R) Core(TM) Duo CPU T7700 @ .40GHz
步进:
CPU MHz: 2194.916
BogoMIPS: 4389.83
超管理器厂商: KVM
虚拟化类型: 完全
L1d 缓存: 32K
L1i 缓存: 32K
L2 缓存: 4096K
NUMA 节点0 CPU: -
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx lm constant_tsc rep_good nopl eagerfpu pni ssse3 cx16 pcid sse4_2 x2apic hypervisor lahf_lm

服务器2:

[root@bogon ~]# lscpu
Architecture: x86_64
CPU op-mode(s): -bit, -bit
Byte Order: Little Endian
CPU(s):
On-line CPU(s) list: -
Thread(s) per core:
Core(s) per socket:
Socket(s):
NUMA node(s):
Vendor ID: GenuineIntel
CPU family:
Model:
Model name: Intel(R) Xeon(R) CPU E7- v4 @ .00GHz
Stepping:
CPU MHz: 1995.192
BogoMIPS: 3990.38
Hypervisor vendor: VMware
Virtualization type: full
L1d cache: 32K
L1i cache: 32K
L2 cache: 256K
L3 cache: 35840K
NUMA node0 CPU(s): -
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss ht syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts nopl xtopology tsc_reliable nonstop_tsc aperfmperf eagerfpu pni pclmulqdq ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx hypervisor lahf_lm 3dnowprefetch epb dtherm arat pln pts

4、查看每个物理CPU中core的个数(即核数)

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

[root@localhost ~]# cat /proc/cpuinfo| grep "cpu cores"| uniq
cpu cores :

三、Linux下查看哪些进程占用的CPU和内存资源最多的方法

1、获取占用CPU资源最多的10个进程

# ps aux | head -1; ps aux | grep -v PID | sort -rn -k +3 | head -10

[root@localhost ~]# ps aux | head -; ps aux | grep -v PID | sort -rn -k + | head -
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 0.8 0.0 ? Ss : : sshd: root@pts/
root 0.7 0.0 ? S May26 : /bin/bash /usr/local/VMOptimizationTools/sangfor_guest_datareport
root 0.6 0.0 ? Ss : : sshd: root@notty
root 0.3 0.0 ? S May26 : /bin/bash /usr/local/VMOptimizationTools/sangfor_update_ipc_callback
root 0.3 0.0 ? S May26 : /bin/bash /usr/local/VMOptimizationTools/sangfor_sfping
0.3 0.1 ? S : : /usr/sbin/apache2 -k start
root 0.2 0.0 ? S May26 : /bin/bash /usr/local/VMOptimizationTools/sangfor_vm_proxyd_w
root 0.2 0.0 ? S May26 : /bin/bash /usr/local/VMOptimizationTools/sangfor_vm_proxyd
0.2 2.0 ? Ss Jun25 : oraclehelowin (LOCAL=NO)
root 0.1 0.0 ? S May26 : /bin/bash /usr/local/VMOptimizationTools/sangfor_watchdog

2、获取占用内存资源最多的10个进程

# ps aux | head -1; ps aux | grep -v PID | sort -rn -k +4 | head -10

[root@localhost ~]# ps aux | head -; ps aux | grep -v PID | sort -rn -k + | head -
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
0.0 5.7 ? Ss May31 : ora_dbw0_helowin
0.0 4.5 ? Ss May29 : ora_dbw0_helowin
0.0 3.5 ? Ss May29 : ora_smon_helowin
0.0 2.5 ? Ss Jun17 : oraclehelowin (LOCAL=NO)
0.0 2.4 ? Ss Jun14 : oraclehelowin (LOCAL=NO)
0.0 2.3 ? Ss Jun26 : oraclehelowin (LOCAL=NO)
0.0 2.1 ? Ss May29 : ora_cjq0_helowin
0.2 2.0 ? Ss Jun25 : oraclehelowin (LOCAL=NO)
0.0 2.0 ? Ss Jun21 : oraclehelowin (LOCAL=NO)
0.0 1.8 ? Ss May31 : ora_smon_helowin

3、查看占用cpu最高的进程

# ps aux | head -1; ps aux | grep -v PID | sort -rn -k +3 | head -1

[root@localhost ~]# ps aux | head -; ps aux | grep -v PID | sort -rn -k + | head -
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 0.7 0.0 ? S May26 : /bin/bash /usr/local/VMOptimizationTools/sangfor_guest_datareport

4、获取占用内存资源最高的进程

# ps aux | head -1; ps aux | grep -v PID | sort -rn -k +4 | head -1

[root@localhost ~]# ps aux | head -; ps aux | grep -v PID | sort -rn -k + | head -
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
0.0 5.7 ? Ss May31 : ora_dbw0_helowin

四、Linux下查看某些进程的启动时间和运行时长

比如查看java进程的启动时间和运行时长

# ps -ef|grep -v grep|grep -w java|awk '{print $2}'

# ps -eo pid,lstart,etime | grep 1973

其中:

Mon Jun 24 09:25:41 2019       为java进程的启动时间

4-00:16:55                     为java进程的运行时长,天-小时-分钟-秒

[root@localhost ~]# ps -ef|grep -v grep|grep -w java|awk '{print $2}'

[root@localhost ~]#
[root@localhost ~]# ps -eo pid,lstart,etime | grep
Mon Jun :: -::
[root@localhost ~]#
[root@localhost ~]# date
Fri Jun :: CST

查看所有进程的启动事件、运行时长

# ps -eo user,pid,lstart,etime,cmd

查看nginx进程启动的精确时间和启动后运行的时长

# ps -eo pid,lstart,etime,cmd|grep nginx

[root@nginx-proxy-client ~]# ps -eo pid,lstart,etime,cmd|grep nginx
Mon Jun :: -:: nginx: master process /usr/local/nginx/sbin/nginx
Mon Jun :: -:: nginx: worker process
Fri Jun :: : grep --color=auto nginx
[root@nginx-proxy-client ~]#
[root@nginx-proxy-client ~]# date
2019年 06月 28日 星期五 :: CST
[root@nginx-proxy-client ~]#

五、查看网络情况

# ifconfig

[root@localhost ~]# ifconfig
eno16777736: flags=<UP,BROADCAST,RUNNING,MULTICAST> mtu
inet 192.168.2.80 netmask 255.255.255.0 broadcast 192.168.2.255
inet6 fe80::20c:29ff:fe4c:ff47 prefixlen scopeid 0x20<link>
ether :0c::4c:ff: txqueuelen (Ethernet)
RX packets bytes (617.7 KiB)
RX errors dropped overruns frame
TX packets bytes (31.1 KiB)
TX errors dropped overruns carrier collisions lo: flags=<UP,LOOPBACK,RUNNING> mtu
inet 127.0.0.1 netmask 255.0.0.0
inet6 :: prefixlen scopeid 0x10<host>
loop txqueuelen (Local Loopback)
RX packets bytes (400.0 B)
RX errors dropped overruns frame
TX packets bytes (400.0 B)
TX errors dropped overruns carrier collisions

# ip a

[root@localhost ~]# ip a
: lo: <LOOPBACK,UP,LOWER_UP> mtu qdisc noqueue state UNKNOWN
link/loopback ::::: brd :::::
inet 127.0.0.1/ scope host lo
valid_lft forever preferred_lft forever
inet6 ::/ scope host
valid_lft forever preferred_lft forever
: eno16777736: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
link/ether :0c::4c:ff: brd ff:ff:ff:ff:ff:ff
inet 192.168.2.80/ brd 192.168.2.255 scope global eno16777736
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fe4c:ff47/ scope link
valid_lft forever preferred_lft forever

四、查看磁盘以及分区情况

# df -Th

查看分区、挂载情况

[root@localhost ~]# df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/centos-root xfs 15G .8G 13G % /
devtmpfs devtmpfs 903M 903M % /dev
tmpfs tmpfs 913M 913M % /dev/shm
tmpfs tmpfs 913M 8.6M 904M % /run
tmpfs tmpfs 913M 913M % /sys/fs/cgroup
/dev/sda1 xfs 297M 115M 183M % /boot
tmpfs tmpfs 183M 183M % /run/user/

# lsblk

查看磁盘情况

[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda : 20G disk
├─sda1 : 300M part /boot
└─sda2 : 19G part
├─centos-root : 15G lvm /
└─centos-swap : 4G lvm [SWAP]
sr0 : 4G rom

# fdisk -l

查看详细的硬盘分区情况

[root@localhost ~]# fdisk -l

Disk /dev/sda: 21.5 GB,  bytes,  sectors
Units = sectors of * = bytes
Sector size (logical/physical): bytes / bytes
I/O size (minimum/optimal): bytes / bytes
Disk label type: dos
Disk identifier: 0x0004a0a8 Device Boot Start End Blocks Id System
/dev/sda1 * Linux
/dev/sda2 8e Linux LVM Disk /dev/mapper/centos-root: 16.1 GB, bytes, sectors
Units = sectors of * = bytes
Sector size (logical/physical): bytes / bytes
I/O size (minimum/optimal): bytes / bytes Disk /dev/mapper/centos-swap: MB, bytes, sectors
Units = sectors of * = bytes
Sector size (logical/physical): bytes / bytes
I/O size (minimum/optimal): bytes / bytes

end

查看Linux系统内存、CPU、磁盘使用率和详细信息的更多相关文章

  1. CentOS7下查看系统环境(内存CPU磁盘使用率)

    1.方法一 yum install atop --安装atop sudo atop--开启监视 2.方法二 top 3.方法三 free --查看没存情况 ps ux --查看CPU 情况 磁盘 df

  2. 查看linux占用内存/CPU最多的进程

    可以使用一下命令查使用内存最多的10个进程 ps -aux | sort -k4nr | head -n 10 可以使用一下命令查使用CPU最多的10个进程 ps -aux | sort -k3nr ...

  3. <转>查看linux占用内存/CPU最多的进程

    转自 http://beginman.cn/page26/ 查使用内存最多的10个进程 ps -aux | sort -k4nr | head -n 10 或者top (然后按下M,注意大写) 查使用 ...

  4. 查看linux系统CPU和内存命令

    cat /proc/cpuinfo查看linux系统的CPU型号.类型以及大小,如下图所示.   通过greap命令根据Physical Processor ID筛选出多核CPU的信息.   cat ...

  5. 查看linux系统常用的命令,Linux查看系统配置常用命令

    一.linux CPU大小  cat /proc/cpuinfo |grep "model name" && cat /proc/cpuinfo |grep &qu ...

  6. 查看linux系统各种参数配置的命令

    查看linux系统各种参数配置的命令 last |grep shutdown                             //查看上次关机时间 last |grep reboot     ...

  7. 【查看linux配置】查看linux系统常用的命令,Linux查看系统配置常用命令

    一.linux CPU大小  cat /proc/cpuinfo |grep "model name" && cat /proc/cpuinfo |grep &qu ...

  8. linux 如何查看硬盘大小,内存大小等系统信息及硬件信息

    一.linux CPU大小[root@idc ~]# cat /proc/cpuinfo |grep "model name" && cat /proc/cpuin ...

  9. 08: 查看Linux系统基本信息和硬盘CPU等

    目录: 1.1 查看Linux系统基本信息 1.2 查看三秒内的平均CPU 1.3 查看内存使用情况 1.4 查看当前系统负载 1.1 查看Linux系统基本信息返回顶部 1.查看Linux系统uui ...

随机推荐

  1. Windows10内嵌Ubuntu子系统配置python开发环境

    Windows10内嵌Ubuntu子系统配置python开发环境 安装pycharm. 到intellij idea网站下载Linux环境下载免费的pycharm,通过ubuntu子系统内部的/mnt ...

  2. java项目Jenkins部署

    假设背景: Nginx跳板机服务器:192.168.10.1 Tomcat应用服务器:192.168.10.3 端口:10083 应用名称:appXXX 1.配置跳板机的转发路径 如:192.168. ...

  3. spring cloud-config的client中/refresh的端点报错401

    post访问/refresh端口报错如下 { "timestamp": 1537865395040, "status": 401, "error&qu ...

  4. API文档自动生成,Swagger的配置

    ASP.NET的部署方式 第一步:引用程序集 打开NuGet程序包管理器,搜索Swagger,安装第一个,注意画圈的地方, 已经包含主程序和UI了,安装完成后会在根目录App_Start文件夹下生成S ...

  5. [HNOI2008]Cards(dp,Burnside引理)

    Burnside引理: 参考自 某大佬对Burnside引理和Polya定理的讲解 相关概念 群:在数学中,群表示一个拥有满足封闭性.满足结合律.有单位元.有逆元的二元运算的代数结构. 置换群:由有限 ...

  6. 小白学 Python 数据分析(1):数据分析基础

    各位同学好,小编接下来为大家分享一些有关 Python 数据分析方面的内容,希望大家能够喜欢. 人工植入广告: PS:小编最近两天偷了点懒,好久没有发原创了,最近是在 CSDN 开通了一个付费专栏,用 ...

  7. Jutil 单元测试

    eclipse 自身集成了jtuil,右击项目,点击bulidpath,addjar,如下所示添加jutil 新建一个Junit的测试类用来测试上面的测试方法,新增Junit的测试类方法如下: // ...

  8. Visual Studio Code | 报错 command 'markdown.extension.onBackspaceKey' not found

    背景 今天使用Visual Strudio Code想用键盘Back去删除一些字符,发现报如下错误: command 'markdown.extension.onBackspaceKey' not f ...

  9. Spring AOP源码分析--代理方式的选择

    能坚持别人不能坚持的,才能拥有别人未曾拥有的.关注编程大道公众号,让我们一同坚持心中所想,一起成长!! 年前写了一个面试突击系列的文章,目前只有redis相关的.在这个系列里,我整理了一些面试题与大家 ...

  10. OpenCV3入门(五)图像的阈值

    1.图像阈值与二值化 阈值是一种简单的图像分割方法,一幅图像包括目标物体(前景).背景还有噪声,要想从数字图像中直接提取出目标物体,可以设定一个像素值即阈值,然后用图像的每一个像素点和阈值做比较,给出 ...