查看服务器硬件指标

一、查看内存占用
1、free

free -m

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

[root@localhost ~]# free -m
total used free shared buff/cache available
Mem: 11852 1250 8668 410 1934 9873
Swap: 6015 0 6015

free -h

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

[root@localhost ~]# free -h
total used free shared buff/cache available
Mem: 11G 1.2G 8.5G 410M 1.9G 9.6G
Swap: 5.9G 0B 5.9G

free -t

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

[root@localhost ~]# free -t
total used free shared buff/cache available
Mem: 12137332 1285344 8870628 420268 1981360 10105740
Swap: 6160380 0 6160380
Total: 18297712 1285344 15031008

free -s 5

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

每5秒执行一次命令

[root@localhost ~]# free -s 5
total used free shared buff/cache available
Mem: 12137332 1280796 8875008 420268 1981528 10110136
Swap: 6160380 0 6160380
解释:

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
27327 27326
[root@localhost ~]#
[root@localhost ~]# cat /proc/27327/status | grep VmRSS
VmRSS: 2652 kB
[root@localhost ~]#
[root@localhost ~]# cat /proc/27326/status | grep VmRSS
VmRSS: 1264 kB
[root@localhost ~]#
[root@localhost ~]# pidof java
1973
[root@localhost ~]# cat /proc/1973/status | grep VmRSS
VmRSS: 1166852 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 755 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 - 02:37:55 up 4 min, 1 user, load average: 0.02, 0.10, 0.05
Tasks: 355 total, 1 running, 354 sleeping, 0 stopped, 0 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 : 1868660 total, 1081340 free, 578388 used, 208932 buff/cache
KiB Swap: 4194300 total, 4194300 free, 0 used. 1123992 avail Mem

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
2220 mysql 20 0 1307796 471172 7608 S 0.6 25.2 0:02.31 mysqld
349 root 20 0 0 0 0 S 0.4 0.0 0:01.14 kworker/0:3
644 root 20 0 0 0 0 S 0.4 0.0 0:00.17 xfsaild/dm-0
3489 root 20 0 146432 2268 1440 R 0.4 0.1 0:00.11 top
1 root 20 0 44500 7120 2596 S 0.2 0.4 0:01.69 systemd
283 root 39 19 0 0 0 S 0.2 0.0 0:00.18 khugepaged
2621 root 20 0 141264 5140 3896 S 0.2 0.3 0:00.18 sshd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 0:00.01 ksoftirqd/0
4 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0
5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H
6 root 20 0 0 0 0 S 0.0 0.0 0:00.02 kworker/u256:0
7 root rt 0 0 0 0 S 0.0 0.0 0:00.00 migration/0
8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_bh
9 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/0
10 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/1
11 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/2
复制代码

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

ps auxw | head -1

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

[root@localhost ~]# ps auxw | head -1
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 755 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
6

2、查看物理CPU个数

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

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

3、列出CPU详细信息

lscpu

服务器1:

复制代码
[root@localhost ~]# lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 6
On-line CPU(s) list: 0-5
Thread(s) per core: 1
Core(s) per socket: 6
座: 1
NUMA 节点: 1
厂商 ID: GenuineIntel
CPU 系列: 6
型号: 15
型号名称: Intel® Core™2 Duo CPU T7700 @ 2.40GHz
步进: 11
CPU MHz: 2194.916
BogoMIPS: 4389.83
超管理器厂商: KVM
虚拟化类型: 完全
L1d 缓存: 32K
L1i 缓存: 32K
L2 缓存: 4096K
NUMA 节点0 CPU: 0-5
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): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 8
On-line CPU(s) list: 0-7
Thread(s) per core: 1
Core(s) per socket: 8
Socket(s): 1
NUMA node(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 79
Model name: Intel® Xeon® CPU E7-4830 v4 @ 2.00GHz
Stepping: 1
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): 0-7
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 : 6
三、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 -1; ps aux | grep -v PID | sort -rn -k +3 | head -10
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 9416 0.8 0.0 163544 6284 ? Ss 08:38 0:00 sshd: root@pts/0
root 3783 0.7 0.0 12072 2032 ? S May26 357:27 /bin/bash /usr/local/VMOptimizationTools/sangfor_guest_datareport
root 9545 0.6 0.0 163224 5904 ? Ss 08:38 0:00 sshd: root@notty
root 3966 0.3 0.0 12704 2676 ? S May26 183:12 /bin/bash /usr/local/VMOptimizationTools/sangfor_update_ipc_callback
root 3784 0.3 0.0 12560 2552 ? S May26 182:42 /bin/bash /usr/local/VMOptimizationTools/sangfor_sfping
33 10431 0.3 0.1 409704 17832 ? S 08:38 0:00 /usr/sbin/apache2 -k start
root 3986 0.2 0.0 12452 2280 ? S May26 122:23 /bin/bash /usr/local/VMOptimizationTools/sangfor_vm_proxyd_w
root 3781 0.2 0.0 12740 2672 ? S May26 115:59 /bin/bash /usr/local/VMOptimizationTools/sangfor_vm_proxyd
500 23785 0.2 2.0 1790172 249528 ? Ss Jun25 11:30 oraclehelowin (LOCAL=NO)
root 4053 0.1 0.0 12508 2520 ? S May26 75:16 /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 -1; ps aux | grep -v PID | sort -rn -k +4 | head -10
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
500 32304 0.0 5.7 1794892 700976 ? Ss May31 2:53 ora_dbw0_helowin
500 4785 0.0 4.5 1797912 550132 ? Ss May29 4:03 ora_dbw0_helowin
500 4796 0.0 3.5 1798308 426468 ? Ss May29 2:11 ora_smon_helowin
500 25850 0.0 2.5 1810144 307340 ? Ss Jun17 0:10 oraclehelowin (LOCAL=NO)
500 32471 0.0 2.4 1810184 299704 ? Ss Jun14 0:30 oraclehelowin (LOCAL=NO)
500 3927 0.0 2.3 1791308 283440 ? Ss Jun26 0:13 oraclehelowin (LOCAL=NO)
500 5432 0.0 2.1 1794272 261692 ? Ss May29 7:16 ora_cjq0_helowin
500 23785 0.2 2.0 1790172 249528 ? Ss Jun25 11:30 oraclehelowin (LOCAL=NO)
500 19092 0.0 2.0 1793248 253080 ? Ss Jun21 0:28 oraclehelowin (LOCAL=NO)
500 32310 0.0 1.8 1794224 229200 ? Ss May31 1:25 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 -1; ps aux | grep -v PID | sort -rn -k +3 | head -1
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 3783 0.7 0.0 12072 2032 ? S May26 357:32 /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 -1; ps aux | grep -v PID | sort -rn -k +4 | head -1
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
500 32304 0.0 5.7 1794892 700976 ? Ss May31 2:53 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}’
1973
[root@localhost ~]#
[root@localhost ~]# ps -eo pid,lstart,etime | grep 1973
1973 Mon Jun 24 09:25:41 2019 4-00:16:55
[root@localhost ~]#
[root@localhost ~]# date
Fri Jun 28 09:42:48 CST 2019
复制代码

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

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
1418 Mon Jun 24 13:38:18 2019 3-20:21:05 nginx: master process /usr/local/nginx/sbin/nginx
1419 Mon Jun 24 13:38:18 2019 3-20:21:05 nginx: worker process
5543 Fri Jun 28 09:59:23 2019 00:00 grep --color=auto nginx
[root@nginx-proxy-client ~]#
[root@nginx-proxy-client ~]# date
2019年 06月 28日 星期五 09:59:45 CST
[root@nginx-proxy-client ~]#
复制代码
五、查看网络情况

ifconfig

复制代码
[root@localhost ~]# ifconfig
eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.2.80 netmask 255.255.255.0 broadcast 192.168.2.255
inet6 fe80::20c:29ff:fe4c:ff47 prefixlen 64 scopeid 0x20
ether 00:0c:29:4c:ff:47 txqueuelen 1000 (Ethernet)
RX packets 7866 bytes 632606 (617.7 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 215 bytes 31932 (31.1 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
loop txqueuelen 0 (Local Loopback)
RX packets 8 bytes 400 (400.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 8 bytes 400 (400.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
复制代码

ip a

复制代码
[root@localhost ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eno16777736: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0c:29:4c:ff:47 brd ff:ff:ff:ff:ff:ff
inet 192.168.2.80/24 brd 192.168.2.255 scope global eno16777736
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fe4c:ff47/64 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 2.8G 13G 19% /
devtmpfs devtmpfs 903M 0 903M 0% /dev
tmpfs tmpfs 913M 0 913M 0% /dev/shm
tmpfs tmpfs 913M 8.6M 904M 1% /run
tmpfs tmpfs 913M 0 913M 0% /sys/fs/cgroup
/dev/sda1 xfs 297M 115M 183M 39% /boot
tmpfs tmpfs 183M 0 183M 0% /run/user/0
复制代码

lsblk

查看磁盘情况

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

fdisk -l

查看详细的硬盘分区情况

复制代码
[root@localhost ~]# fdisk -l

Disk /dev/sda: 21.5 GB, 21474836480 bytes, 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x0004a0a8

Device Boot Start End Blocks Id System
/dev/sda1 * 2048 616447 307200 83 Linux
/dev/sda2 616448 40478719 19931136 8e Linux LVM

Disk /dev/mapper/centos-root: 16.1 GB, 16106127360 bytes, 31457280 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk /dev/mapper/centos-swap: 4294 MB, 4294967296 bytes, 8388608 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值