CentOS系统状态查看.docx
- 文档编号:22863696
- 上传时间:2023-04-28
- 格式:DOCX
- 页数:24
- 大小:71.96KB
CentOS系统状态查看.docx
《CentOS系统状态查看.docx》由会员分享,可在线阅读,更多相关《CentOS系统状态查看.docx(24页珍藏版)》请在冰豆网上搜索。
CentOS系统状态查看
CentOS系统状态查看
一、环境介绍
利用镜像文件安装操作系统,IP地址设置为。
vi/etc/sysconfig/network-scripts/ifcfg-eth0
修改成以下字段:
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=static
IPADDR=networkrestart
最好先利用date查看下当前时刻,若是不准确的话,能够与国际时刻做个同步
yum-yinstallntpdate
二、ntpdate查看Cpu
1)top命令是最流行Unix/Linux的性能工具之一。
系统治理员可用运行top命令监视进程和Linux整体性能。
-n:
更新的次数,完成后将会退出top
top-n1
top-09:
53:
43up26min,1user,loadaverage:
,
Tasks:
68total,1running,67sleeping,0stopped,0zombie
Cpu(s):
%us,%sy,%ni,%id,%wa,%hi,%si,%st
Mem:
1922616ktotal,222816kused,1699800kfree,8088kbuffers
Swap:
2047992ktotal,0kused,2047992kfree,116692kcached
PIDUSERPRNIVIRTRESSHRS%CPU%MEMTIME+COMMAND
1391root200150281160900R0:
top
1root2001922814921216S0:
init
2root200000S0:
kthreadd
2)能够看到第三行显示的是当前CPU状态信息
top-n1|sed-n3p
Cpu(s):
%us,%sy,%ni,%id,%wa,%hi,%si,%st
或
top-n1|grepCpu
Cpu(s):
%us,%sy,%ni,%id,%wa,%hi,%si,%st
3)每列显示的意思如下:
若是需要查看用户空间占用CPU的百分比,利用以下命令
%us—用户空间占用CPU的百分比。
%sy—内核空间占用CPU的百分比。
%ni—改变过优先级的进程占用CPU的百分比
%id—空闲CPU百分比
%wa—IO等待占用CPU的百分比
%hi—硬中断(HardwareIRQ)占用CPU的百分比
%si—软中断(SoftwareInterrupts)占用CPU的百分比
top-n1|grepCpu|awk'{print$2}'
%us,
4)若是需要只显示百分比,利用以下命令
top-n1|grepCpu|awk'{print$2}'|cut-c1-4
%
5)可是若是将那个数字作为系统CPU利用率不是很准,最好是利用100%减去空闲CPU百分比,利用以下命令
top-n1|grepCpu|awk'{print$5}'|awk-F"%"'{print(100-$1)"%"}'
%
三、查看内存
6)能够看到第四行显示的是当前Mem状态信息
top-n1|sed-n4p
Mem:
1922616ktotal,223576kused,1699040kfree,8216kbuffers
或
top-n1|grepMem
Mem:
1922616ktotal,223452kused,1699164kfree,8208kbuffers
7)每列显示的意思如下:
若是需要查看用物理内存总量,利用以下命令
1922616ktotal—物理内存总量
223576kused—利用中的内存总量
1699040kfree—空闲内存总量
8216kbuffers—缓存的内存量
top-n1|grepMem|awk'{print$3}'
1922616k
8)若是需要显示内存利用百分比,利用以下命令
top-n1|grepMem|awk'{print$5/$3*100"%"}'
%
9)也能够通过free命令查看内存利用情形(单位k,若是需要单位为m,利用free-m)
注:
free命令比top命令更快
total:
共计物理内存的大小。
used:
已利用多大。
free:
可用有多少。
Shared:
多个进程共享的内存总额。
Buffers/cached:
磁盘缓存的大小。
free
totalusedfreesharedbufferscached
Mem:
1922616223436169918008328116796
-/+buffers/cache:
983121824304
Swap:
204799202047992
10)第二行为内存利用情形
free|sed-n2p
Mem:
1922616223436169918008344116796
或
free|grepMem
Mem:
1922616223436169918008344116796
11)若是需要查看共计物理内存的大小,能够利用以下命令
free-m|sed-n2p|awk'{print$2}'
1877
12)若是需要显示内存利用百分比,利用以下命令
free|sed-n2p|awk'{print$3/$2*100"%"}'
%
四、查看磁盘
13)能够利用df命令查看磁盘情形(默许单位为k,若是需要单位为m,利用df–m或单位自动df-h)
df
文件系统1K-块已用可用已用%挂载点
/dev/mapper/VolGroup-lv_root
14072366%/
tmpfs96130809613080%/dev/shm
/dev/sda14958445289441735012%/boot
14)因为显示的不对齐,需要-P参数对齐
df-P
文件系统1024-块已用可用配额挂载点
/dev/mapper/VolGroup-lv_root14072766%/
tmpfs96130809613080%/dev/shm
/dev/sda14958445289441735012%/boot
15)因为第一行不是需要的内容,需要去除第一行
df-P|sed-n'1!
'p
/dev/mapper/VolGroup-lv_root14072686%/
tmpfs96130809613080%/dev/shm
/dev/sda14958445289441735012%/boot
16)若是只需要查看总磁盘大小一行,利用命令
df-P|sed-n'1!
'p|awk'{print$2}'
961308
495844
17)若是需要计算总磁盘大小一行,利用命令
df-P|sed-n'1!
'p|awk'{a+=$2}END{printa}'
18)若是需要计算总的利用磁盘大小一行,利用命令
df-P|sed-n'1!
'p|awk'{b+=$3}END{printb}'
1460166
19)若是需要计算总的磁盘利用率,利用命令
df-P|sed-n'1!
'p|awk'{a+=$2}{b+=$3}END{printb/a*100"%"}'
%
五、查看网速
20)能够利用ifconfig命令查看网卡eth0的利用情形
ifconfigeth0
eth0Linkencap:
EthernetHWaddr00:
50:
56:
B2:
1D:
65
inetaddr:
Bcast:
Mask:
inet6addr:
2001:
da8:
20d:
31:
2:
:
/64Scope:
Global
inet6addr:
2001:
da8:
20d:
31:
250:
56ff:
feb2:
1d65/64Scope:
Global
inet6addr:
fe80:
:
250:
56ff:
feb2:
1d65/64Scope:
Link
UPBROADCASTRUNNINGMULTICASTMTU:
1500Metric:
1
RXpackets:
949925errors:
0dropped:
0overruns:
0frame:
0
TXpackets:
476662errors:
0dropped:
0overruns:
0carrier:
0
collisions:
0txqueuelen:
1000
RXbytes:
12GiB)TXbytes:
MiB)
21)最后一行能够查看网卡接收和发送字节
ifconfigeth0|grepbytes
RXbytes:
37GiB)TXbytes:
MiB)
22)字节数是随着时刻的增加不断的增加的,查看当前接收字节数,可利用如下命令
ifconfigeth0|grepbytes|awk'{print$2}'|awk-F":
"'{print$2}'
23
ifconfigeth0|grepbytes|awk'{print$2}'|awk-F":
"'{print$2}'
91
23)由于字节数的不断增加,因此每距离1秒取得值相减即为该秒的网速值
ifconfigeth0|grepbytes|awk'{print$2}'|awk-F":
"'{print$2}';sleep1s;ifconfigeth0|grepbytes|awk'{print$2}'|awk-F":
"'{print$2}'
24
76
24)两个命令返回值相减,需要利用脚本来做操作
vi
输入以下内容
RX0=$(ifconfigeth0|grepbytes|awk'{print$2}'|awk-F":
"'{print$2}')
sleep1s
RX1=$(ifconfigeth0|grepbytes|awk'{print$2}'|awk-F":
"'{print$2}')
echo$((RX1-RX0))
sh
240
得出的240,即为当前网卡的实时接收网速为240B/s
25)若是需要显示单位为KB/s或MB/s,需要在原先的值后面除以1024,可是默许利用echo除法只能显示整数,不能显示小数,那个地址需要利用awk命令
vi
修改为以下内容
RX0=$(ifconfigeth0|grepbytes|awk'{print$2}'|awk-F":
"'{print$2}')
sleep1s
RX1=$(ifconfigeth0|grepbytes|awk'{print$2}'|awk-F":
"'{print$2}')
awk"BEGIN{print($RX1-$RX0)/1024}"
sh
26)同理,能够利用脚本取到实时接收和实时发送的网速
vi
输入以下内容
RX0=$(ifconfigeth0|grepbytes|awk'{print$2}'|awk-F":
"'{print$2}')
TX0=$(ifconfigeth0|grepbytes|awk'{print$6}'|awk-F":
"'{print$2}')
sleep1s
RX1=$(ifconfigeth0|grepbytes|awk'{print$2}'|awk-F":
"'{print$2}')
TX1=$(ifconfigeth0|grepbytes|awk'{print$6}'|awk-F":
"'{print$2}')
awk"BEGIN{print($RX1-$RX0)/1024}";awk"BEGIN{print($TX1-$TX0)/1024}"
sh
这是我从客户端下载该设备上文件时,得出的网速,接收s,发送KB/s
六、记录参数
27)若是只需要将时刻,CPU利用率,内存利用率,磁盘利用率记录在文件,利用命令
echo$(date+%F-%T;top-n1|grepCpu|awk'{print$5}'|awk-F"%"'{print(100-$1)"%"}';free|sed-n2p|awk'{print$3/$2*100"%"}';df-P|sed-n'1!
'p|awk'{a+=$2}{b+=$3}END{printb/a*100"%"}')>>/root/
执行三次,再查看
cat/root/
20:
15:
29%%%
20:
15:
32%%%
20:
15:
34%%%
28)若是需要每隔5分钟就执行一次,需要利用crontab,命令为
crontab-e
输入以下内容:
注:
在按时器crontab启动的脚本中利用top命令,默许不能正常执行,需要给top命令加上-b参数(以非交互和非全屏模式运行)即可
同时,所有的%前需要利用\符号来转义,不然也会犯错
*/5****echo$(date+\%F-\%T;top-bn1|grepCpu|awk'{print$5}'|awk-F"\%"'{print(100-$1)"\%"}';free|sed-n2p|awk'{print$3/$2*100"\%"}';df-P|sed-n'1!
'p|awk'{a+=$2}{b+=$3}END{printb/a*100"\%"}')>>/root/
稍等20分钟,可查看
cat/root/
20:
45:
01%%%
20:
50:
01%%%
20:
55:
05%%%
29)若是还需要将网卡利用情形记录在文件,利用脚本
vi
输入以下内容:
Time=$(date+%F-%T)
Cpu=$(top-bn1|grepCpu|awk'{print$5}'|awk-F"%"'{print(100-$1)"%"}')
Mem=$(free|sed-n2p|awk'{print$3/$2*100"%"}')
Disck=$(df-P|sed-n'1!
'p|awk'{a+=$2}{b+=$3}END{printb/a*100"%"}')
RX0=$(ifconfigeth0|grepbytes|awk'{print$2}'|awk-F":
"'{print$2}')
TX0=$(ifconfigeth0|grepbytes|awk'{print$6}'|awk-F":
"'{print$2}')
sleep1s
RX1=$(ifconfigeth0|grepbytes|awk'{print$2}'|awk-F":
"'{print$2}')
TX1=$(ifconfigeth0|grepbytes|awk'{print$6}'|awk-F":
"'{print$2}')
echo$(echo$Time$Cpu$Mem$Disck;awk"BEGIN{print($RX1-$RX0)/1024}";awk"BEGIN{print($TX1-$TX0)/1024}")>>/root/
sh
cat/root/
20:
05:
16%%%
20:
10:
06%%%11222
20:
10:
08%%%11525
20:
10:
11%%%
能够看出,从客户端下载该设备上文件时,发送网速急速上升
30)若是需要每隔5分钟就执行一次,需要利用crontab,
注:
在按时器crontab启动的脚本中直接利用ifconfig命令,默许不能正常执行,需要给出全途径
vi
修改成
Time=$(date+%F-%T)
Cpu=$(top-bn1|grepCpu|awk'{print$5}'|awk-F"%"'{print(100-$1)"%"}')
Mem=$(free|sed-n2p|awk'{print$3/$2*100"%"}')
Disck=$(df-P|sed-n'1!
'p|awk'{a+=$2}{b+=$3}END{printb/a*100"%"}')
RX0=$(/sbin/ifconfigeth0|grepbytes|awk'{print$2}'|awk-F":
"'{print$2}')
TX0=$(/sbin/ifconfigeth0|grepbytes|awk'{print$6}'|awk-F":
"'{print$2}')
sleep1s
RX1=$(/sbin/ifconfigeth0|grepbytes|awk'{print$2}'|awk-F":
"'{print$2}')
TX1=$(/sbin/ifconfigeth0|grepbytes|awk'{print$6}'|awk-F":
"'{print$2}')
echo$(echo$Time$Cpu$Mem$Disck;awk"BEGIN{print($RX1-$RX0)/1024}";awk"BEGIN{print($TX1-$TX0)/1024}")>>/root/
crontab-e
输入以下内容:
*/5****sh/root/
稍等20分钟,可查看
cat/root/
20:
25:
01%%%
20:
30:
01%%%
20:
35:
01%%%
20:
40:
01%%%
七、其他参数
31)若是echo的直接输出不能知足要求,能够利用echo-e,当字符串中显现以下字符,那么专门加以处置,而可不能将它当做一样文字输出:
\n换行且光标移至行首;\t插入tab(可插入多个table以达到对齐的目的)
32)若是需要比较文字再操作,那么利用grep-q命令与&&和||配合利用
33)若是需要在awk中引入系统变量,需要利用“‘’”符号,如awk'BEGIN{print"'"$Ip"'"}'
34)若是简单的print输出不能处置您的程序中所需要的复杂信息,那么能够尝试由printf命令取得的加倍复杂的输出,%f打印浮点表示,\n换行
35)以下为最新版脚本
cat/root/
RX0=$(/sbin/ifconfigeth0|grepbytes|awk'{print$2}'|awk-F":
"'{print$2}')
TX0=$(/sbin/ifconfigeth0|grepbytes|awk'{print$6}'|awk-F":
"'{print$2}')
sleep1s
RX1=$(/sbin/ifconfigeth0|grepbytes|awk'{print$2}'|awk-F":
"'{print$2}')
TX1=$(/sbin/ifconfigeth0|grepbytes|awk'{print$6}'|awk-F":
"'{print$2}')
RX=$(awk'BEGIN{printf"%.2f\n",("'$RX1'"-"'$RX0'")/1024}')
TX=$(awk'BEGIN{printf"%.2f\n",("'$TX1'"-"'$TX0'")/1024}')
Time=$(date+%F-%T)
Cpu=$(top-bn1|grepCpu|awk'{print$5}'|awk-F"%"'{print(100-$1)"%"}')
Mem=$(free|sed-n2p|awk'{printf"%.2f\n",$3/$2*100}')
Disck=$(df-P|sed-n'1!
'p|awk'{a+=$2}{b+=$3}END{printf"%.2f\n",b/a*100}')
Day=$(date+%F)
Ip=$(/sbin/ifconfigeth0|grepBcast|awk'{print$2}'|awk-F":
"'{print$2}')
touch/root/$Day-$
cat/root/$Day-$|grep-qCpu&&echo-e"$Time\t$Cpu\t\t$Mem%\t\t$Disck%\t\t$RX\t\t$TX">>/root/$Day-$||echo-e"时刻\t\t\tCpu利用率\t内存利用率\t磁盘利用率\t流入速度Kbps\t流出速度Kbps">>/root/$Day-$
ll/root/
-rw-r--r--.1rootroot24110月1014:
061rootroot107910月1014:
06
cat/root/时刻Cpu利用率内存利用率磁盘利用率流入速度Kbps流出速度Kbps
20:
05:
02%%%
20:
10:
02%%%
20:
15:
02%%%
20:
20:
02%%%
八、网页显示
36)若是需要将多台效劳器的状态信息搜集到一台效劳器上,并能够通过网页查看,则需要预备一台http效劳器,在效劳器上,检查是不是安装了httpd,若是没有安装那么通过yum开始安装,然后启动效劳,配置防火墙
rpm-qa|grep-qhttpd||yum-yinstallhttpd
servicehttpdrestart
chkconfighttpdon
iptables-IINPUT5-mstate--stateNEW-mtcp-ptcp--dport80-jACCEPT
serviceiptablessave
37)在被监控端,需要利用scp命令,将生成的txt文档拷贝到http效劳器上,可是scp拷贝时需要输入http端密码,那个地址推荐利用expect脚本来解决
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- CentOS 系统 状态 查看