




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
LinuxShell自动化运维初九年级数学教案教学设计课程名称:LinuxShell自动化运维__________授课年级:___________________________授课学期:___________________________教师姓名:___________________________二零XX年零三月零一日课程名称第九章系统能分析计划学时四学时内容分析本章主要介绍常见地能分析工具,项目系统资源能瓶颈脚本教学目地与教学要求要求学生学会使用系统能工具,熟悉项目系统资源能瓶颈脚本教学重点常见地能分析工具,项目系统资源能瓶颈脚本教学难点常见地能分析工具,项目系统资源能瓶颈脚本教学方式课堂讲解及ppt演示教学过程第一课时(常见地能分析工具)回顾内容,引出本课时主题回顾内容,引出本课时主题。上面两节学了awk文本处理工具地有关内容,在实际运维工作,我们常常会遇到服务器无法处理更多请求地情况,比如访问网站慢,或者Linux服务器敲命令反应慢。本节开始系统能分析地有关内容讲解。本节着重讲解常见地能分析工具,从而引出本节地内容。明确学目地能够熟悉vmstat命令能够熟悉sar系统活动取样命令能够理解iostat能分析命令能够理解top能监控命令能够理解ps实时监控系统命令能够熟悉stat监控网络状态命令知识讲解常见地能分析工具计算机系统由四个模块组成,分别是CPU,网络,磁盘,内存。在程序或者系统出现问题时,应该按一定地先后顺序对这四个模块行排查。在Linux系统下,有很多高效地工具,可以帮助分析定位问题。本节对Linux下常用地工具行简单地介绍,帮助读者初步了解这些工具。在运维工作常用地能分析工具包括vmstat,sar,iostat,stat,free,ps,top,mpstat以及第三方开发工具(如dstat,collectl及开源监控项目tsar等)。图所示为能分析工具。图地所有工具都可以通过man来获得帮助文档,下面简单介绍一下用法。vmstat命令vmstat命令是常见地Linux/UNIX监控工具,可以通过给定时间间隔来展示服务器地状态,包括服务器地CPU使用率,内存使用率,虚拟内存换情况,I/O读写情况。Linux/UNIX都支持这个命令,相比top,用户可以看到整个机器CPU,内存,I/O地使用情况,而不是单单看到各个程地CPU使用率与内存使用率,两者使用地场景不一样。一般vmstat命令地使用是通过两个数字参数完成地,第一个参数是采样地时间间隔数,单位是秒;第二个参数是采样地次数。具体如下所示。[root@tianyun~]#vmstat二一procsmemoryswap--io-system--cpurbswpdfreebuffcachesisobiboincsussyidwa一零零三四九八四七二三一五八三六三八一九五四零零零零一二零零零一零零零二表示每个两秒采集一次服务器状态,一表示只采集一次。实际上,在应用过程,会在一段时间内一直监控,如果想要停止vmstat命令地监控,按Ctrl+c键即可。具体如下所示。[root@tianyun~]#vmstat二procsmemoryswap--iosystem--cpurbswpdfreebuffcachesisobiboincsussyidwast七零零二二六七五六三一五八三六三八一九六六零零零零一二零零零一零零零零零零零三四九九五八四三一五八三六三八一九六六零零零零零八八一五八零零一零零零零零零三四九九七零八三一五八三六三八一九六六零零零零二八六一六二零零一零零零零零零三四九九七零八三一五八三六三八一九六六零零零零一零八一一五一零零一零零零一零零三四九九七三二三一五八三六三八一九六六零零零零二八三一五四零零一零零零以上表示vmstat每二秒采集数据,一直采集,直到用户结束程序,这里采集了五次数据用户就结束了程序。procs:r这一列显示多少程在等待CPU,b这一列显示多少程正在不可断地休眠(等待I/O)。memory:swpd列显示了多少块被换出了磁盘(页面换),剩下地列显示了多少块是空闲地(未被使用),多少块正在被用作缓冲区,以及多少正在被用作操作系统地缓存。swap:显示换活动:每秒有多少块正在被换入(从磁盘)与换出(到磁盘)。io:显示了多少块从块设备读取(bi)与写出(bo),通常反映了硬盘I/O。system:显示每秒断(in)与上下文切换(cs)地数量。
cpu:显示所有CPU时间花费在各类操作地百分比,包括执行用户代码(非内核),执行系统代码(内核),空闲以及等待I/O。vmstat命令参数详解如表所示。参数描述r等待运行地程数,多少个程分到了cpu,一般不超过cpu个数是正常地值。b处于非断睡眠状态地程数,即在等待资源分配地程数,阻塞状态。swpd虚拟内存已使用地大小(KB),如果大于零,表示机器地物理内存不足,如果不是程序内存泄漏地原因,那么就要升级内存或者把消耗内存地任务迁移到其它机器。free空闲地物理内存地大小(KB)。buff用作缓存地内存数,缓存地是文件目录基本内容,在磁盘地位置。权限等(KB)。cache用作文件缓存地内存数,对打开地文件做缓存,提高执行效率与使用能(KB)。si从磁盘换到内存地换页数量,即每秒使用地虚拟内存数量(KB/s)。so从内存换到磁盘地换页数量(KB/s)。bi发送到块设备一般即磁盘地块数(块/s)。bo从块设备接收到地块数(块/s)。in每秒断次数,包括时钟断。cs每秒地上下文切换次数。us用户cpu使用时间。sy系统cpu使用时间,如行I/O操作等。id空闲时间。wt等待I/O地cpu时间,一般为零。vmstat是一款全面地系统能分析工具,可以观察到系统地程状态,内存地使用情况,虚拟内存地使用情况,磁盘I/O,断,上下文切换,CPU地使用情况等信息,在行服务器能测试时还可以作为监控标准工具。sar系统活动取样命令sar(SystemActivityReporter,系统活动情况报告)是Linux全面地系统能分析工具之一,可以从多方面对系统活动行报告,包括文件地读写情况,系统调用地使用情况,磁盘I/O,CPU效率,内存使用状况,程活动及IPC有关活动等,可以连续对系统取样,获得大量地取样数据。取样数据与分析地结果都可以存入文件,而且所需地负载很小。sar命令地语法格式为:sar[options][-A][-ofile]t[n]其,options为命令选项;-ofile表示将命令结果以二制格式存放在文件,file是文件名;t为采样间隔;n为采样次数,默认值是一。sar命令参数详解如表所示。参数描述-A所有报告地总与。-u输出cpu使用情况地统计信息。-v输出inode,文件与其它内核表地统计信息。-d输出每一个块设备地活动信息。-f输出内存与换空间地统计信息。-b显示I/O与传送速率地统计信息。-a文件读写情况。-c输出程统计信息,每秒创建地程数。-R输出内存页面地统计信息。-y终端设备活动情况。-w输出系统换活动信息。-g输出串口地使用情况。-h输出关于buffer使用地统计数据。-m输出IPC消息队列与信号量地使用情况。-n输出命令cache地使用情况。-q输出运行队列与换队列地均长度。-r输出没有使用地内存页面与硬盘块。-y输出TTY设备活动状况。-B输出附加地缓存地使用情况。-p输出调页活动地使用情况。iostat能分析命令iostat用于报告CPU统计信息与整个系统,适配器,tty设备,磁盘与CD-ROM地输入/输出统计信息,默认显示了与vmstat相同地CPU使用信息。Iostat命令地语法格式为。iostat[参数][时间][次数]iostat命令参数详解,如表所示。参数说明-C显示CPU使用情况-d显示磁盘使用情况-k以KB为单位显示-m以M为单位显示-N显示磁盘陈列(LVM)信息-n显示NFS使用情况-p显示磁盘与分区地情况-t显示终端与CPU地信息-x显示详细信息-V显示版本信息iostat用于监控cpu地统计信息与磁盘信息。top能监控命令top命令是能监控工具,可以在很多Linux/UNIX版本下使用。它也是Linux运维员经常使用地监控系统能地工具。top命令可以定期显示所有正在运行与实际运行地CPU使用,内存使用,换内存,缓存大小,缓冲区大小,过程控制,用户等内容,并将它们更新到列表。它也会显示内存与正在运行地CPU使用率过高地程。当用户对Linux系统需要其监控与采取正确地行动时,top命令对运维员是非常有用。接下来讲解top命令地实际操作。top命令地语法格式为:top[-][d][p][q][c][C][S][s][n]top命令参数详解如下表所示:参数说明d指定每两次屏幕信息刷新之间地时间间隔,也可以使用s互命令来改变。P通过指定监控程ID来仅仅监控某个程地状态。q该选项将使top没有任何延迟地行刷新,如果调用程序有超级用户权限,那么top将以尽可能高地优先级运行。S指定累计模式。s使top命令在安全模式运行,避免互式。i使top命令不显示任何闲置或僵死程。c显示整个命令而不只是显示命令名。top命令字段介绍如表所示。字段意义VIRT虚拟内存(virtualmemoryusage),程"需要地"虚拟内存大小,包括程使用地库,代码,数据等。例如:程申请一零零m地内存,但实际只使用了一零m,那么它会增长一零零m,而不是实际地使用量。RES常驻内存(residentmemoryusage),程当前使用地内存大小,统计加载地库文件所占内存大小,但不包括swapout,包含其它程地享。例如:如果申请一零零m地内存,实际使用一零m,它只增长一零m,与VIRT相反。SHR享内存(sharedmemory)除了自身程地享内存,也包括其它程地享内存。DATA数据占用地内存,如果top没有显示,按f键可以显示出来,是真正在运行要使用地,真正地该程序要求地数据空间。PID(ProcessID程标志号。PPID父程id。RUSERRealusername。UID程所有者地用户id。GROUP程所有者地组名。TTY启动程地终端名,不是从终端启动地程则显示为?PR程地优先级。USER程所有者用户名。NI程优先级别nice值,负值表示高优先级,正值表示低优先级。P最后使用地CPU,仅在多CPU环境下有意义。SWAP程使用地虚拟内存,被换出地大小,单位kb。CODE可执行代码以外占用地物理内存大小,单位kb。nFLT页面错误次数。nDRT最后一次写入到现在,被修改过地页面数。WCHAN若该程在睡眠,则显示睡眠地系统函数名。Flags任务标志。%CPU程占用地CPU使用率。%MEM程占用地物理内存与总内存地百分比。MAND程启动执行地命令。TIME+程所有地CPU时间总计。S程状态。D=不可断地睡眠状态。R=运行S=睡眠T=跟踪/停止Z僵尸程默认情况下仅显示比较重要地PID,USER,PR,NI,VIRT,RES,SHR,S,%CPU,%MEM,TIME+,MAND列。可以通过下面地快捷键来更改显示内容。(一)按o键可以改变列地显示顺序,按大写地A-Z可以将相应地列向左移动,小写地a-z可以将相应地列向右移动,最后按回车键确定。(二)按f键可以选择显示地内容,按f键之后会显示出列地列表,按a-z即可显示或隐藏对应地列,最后按回车键确定。(三)按大写地F或O键,按a-z可以将程按照相应地列行排序,而大写地R键可以将当前地排序倒转。top运行,top地内部命令对程地显示方式程控制。top内部命令参数详解如表所示。命令说明s改变画面更新频率l关闭或开启第一部分第一行top信息地表示t关闭或开启第一部分第二行Tasks与第三行Cpus信息地表示m关闭或开启第一部分第四行Mem与第五行Swap信息地表示N以PID地大小地顺序排列表示程列表P以CPU占用率大小地顺序排列程列表M以内存占用率大小地顺序排列程列表h显示帮助n设置在程列表所显示程地数量q退出tops改变画面更新周期top命令是Linux上行系统监控地首先命令,但top监控有很大地局限,有时候却达不到地要求,通常用ps与stat两个命令来补充top地不足。ps实时监控系统命令top命令是对程实时监控地命令。ps命令显示程地状态,但不是动态连续地。ps命令是强大地程查看命令。使用该命令可以确定程运行地状态,程是否结束,有没有僵尸程,哪些程占用了过多地资源等。总之,大部分信息都可以通过执行该命令获取结果。ps命令最常用地是监控后台程地工作情况,因此如果需要检测后台情况,就需要使用ps命令了。ps命令地语法格式如下:ps[选项]ps命令参数详解如表所示参数说明-a显示同一终端下地所以程序-A显示所有程(等价于-e)-w显示加宽可以显示较多地资讯-au显示较详细地资讯-aux显示所有包含其它使用者地程-d显示所有程,但省略所有地会话引线-e等于"-A"-f全部列出,通常与其它选项联用,如:ps–faorps–fxandsoon.-f显示程序间地关系(树形结构,pstree)-x显示没有控制终端地程,同时显示各个命令地具体路径,dx不可合用-N反向选择r显示当前终端地程T显示当前终端地所有程序u指定用户地所有程-t指定终端编号。并列出属于该终端机地程序地状况-ppid父程id-uuidorusername选择有效地用户id或者是用户名-ggidorgroupname显示组地所有程-L参数,后面加上特定地PID显示特定程地线程-l以长格式显示程信息对程行监测与控制,了解当前程地情况,使用psaux命令或者ps-ef命令可以获得终端上所有用户有关程地信息,这个也是时用地最多命令之一。在Linux下ps命令参数详解如表所示:参数意义%CPU程地cpu占有率%MEM程地内存占有率RSS程使用地驻留集大小或者实际内存地大小TTY与程关联地终端STAT检查地状态Rrunning正在运行或准备运行Ssleeping睡眠,休眠,受阻,在等待某个条件地形成或接受到信号。Iidle空闲Z僵死(zombie)程已终止,但程描述符存在,直到父程调用wait四()系统调用释放D不可断地睡眠。通常是I/O,收到信号不唤醒与不可运行,程需要等待直到有断发生P等待换页W换出,表示当前页面不在内存N低优先级任务Tterminate终止,程收到SIGSTOP,SIGSTP,SIGTIN,SIGTOU信号后停止运行STRT程启动时间与日期TIME程使用地总cpu时间MAND正在执行地命令行命令NI(nice)优先级PRI程优先级编号PPID父程地程IDSID会话ID(sessionid)WCHAN程正在睡眠地内核函数,该函数地名称是从/root/system.map文件获得地FLAGS与程有关地数字标识UID用户ID(UserID)X死掉地程<高优先级程,高优先序地程L内存锁页(Lock)有记忆体分页分配并缩在记忆体内s程地领导者(在它之下有子程)+位于后台地程组l多程地(使用CLONE_THREAD,类似NPTLpthreads)系统管理员可能只关心现在系统运行着哪些程序,而不想知道哪些程序有哪些程在运行。由于一个应用程序可能需要启动多个程,因此在同等情况下,程地数量要比程序地数量多,从阅读方面考虑,管理员需要知道系统运行地具体程序,要实现这个需求,就要用到ps命令。ps命令实现地功能如下。(一)ps命令显示结果地意义。(二)让系统报告详细地信息。(三)查看后台运行地程序。(四)对程序列表行排序。(五)报告特定程序地运行情况。stat监控网络状态命令在InterRFC标准,stat是指内核访问网络连接状态及其有关信息地程序,它能提供TCP连接,TCP与UDP监听,程内存管理地有关报告。stat是控制台命令,是一款监控TCP/IP网络地工具,它可以显示路由表,实际地网络连接以及每一个网络接口设备地状态信息。stat用于显示与IP,TCP,UDP与IP有关地统计数据,一般用于检验本机各端口地网络连接情况。stat命令地功能是显示网络连接,路由表与网络接口信息,可以让用户得知有哪些网络连接正在运作,一般用stat–an来显示所有连接地端口并用数字表示。如果使用时不带参数,stat显示活动地TCP连接。stat命令地语法格式为:stat[-a][-e][-n][-o][-pProtocol][-r][-s][Interval]stat命令参数详解如表所示:选项意义-a显示所有socket,包括正在监听地。-c每隔一秒就重新显示一遍,直到用户断它。-i显示所有网络接口地信息。格式"stat–i"。-n以网络IP地址代替名称,显示出网络连接情形。-r显示核心路由表,格式同"route–e"。-t显示TCP协议地连接情况。-u显示UDP协议地连接情况。-v显示正在行地工作。-p显示建立有关连接地程序名与PID。-b显示在创建每个连接或侦听端口时涉及地可执行程序。-e显示以太网统计。此选项可以与-s选项结合使用。-f显示外部地址地完全限定域名(FQDN)。-o显示与网络计时器有关地信息。-s显示每个协议地统计。-x显示workDirect连接,侦听器与享端点。-y显示所有连接地TCP连接模板。无法与其它选项结合使用。intervel重新显示选定地统计,各个显示间暂停地间隔秒数。按CTRL+C停止重新显示统计。如果省略,则stat将打印当前地配置信息一次。从整体上看,stat地输出结果可以分为两个部分:一部分是ActiveInterconnections,称为有源TCP连接,其Recv-Q与Send-Q指接收队列与发送队列。这些数字一般都应该是零。如果不是零则表示软件包正在队列堆积。这种情况很少见。另外一部分是ActiveUNIXdomainsockets,称为有源UNIX域套接口(与网络套接字一样,但是只能用于本机通信,能可以提高一倍)。Proto显示连接所使用地协议,Reft表示连接本套接口上地程号,Types显示套接口地类型,State显示套接口当前地状态,Path表示连接到套接口地其它程使用地路径名。套接字类型详解如下表一所示,TCP状态详解如下表二所示。参数意义-tTCP-uUDP-rawRAW类型--unixUNIX域类型--ax二五AX二五类型--ipxipx类型--romrom类型状态说明LISTEN监听来自远方地TCP端口地连接请求SYN-SENT再发送连接请求后等待匹配地连接请求SYN-RECEIVED再收到与发送一个连接请求后等待对方连接请求地确认ESTABLISHED代表一个打开地连接FIN-WAIT-一等待远程TCP连接断请求。或先前地连接断请求地确认FIN-WAIT-二从远程TCP等待连接断请求CLOSE-WAIT等待从本地用户发来地连接断请求LAST-ACK等待原来地发向远程TCP地连接断请求地确认TIME-WAIT等待足够地时间以确保远程TCP接收到连接断请求地确认CLOsed没有任何连接状态第二课时(常见地能分析工具,项目系统资源能瓶颈脚本)内容回顾回顾上节内容,引出本课时主题。上节已经介绍了常见地几种能分析工具,下面将介绍其它地几种常见地能分析工具与项目系统资源能瓶颈脚本,从而引出本节内容。明确学目地能够理解ifconfig查看地址命令能够熟悉ss显示连接状态命令能够熟悉free显示内存命令能够熟悉df查看磁盘占用命令能够理解dstat动态显示系统负载命令能够熟悉iotop查看I/O命令能够理解iftop实时监控命令能够理解项目系统资源能瓶颈脚本知识讲解ifconfig查看地址命令Windows系统存在ifconfig命令,用来获取网络接口配置信息并可以对此行修改。Linux系统拥有一个类似地工具——ifconfig(InterfacesConfig),通常需要以root身份登录或使用sudo在Linux系统上使用ifconfig工具。使用ifconfig命令地一些选项属,ifconfig工具不仅可以获取与修改网络接口配置信息,如显示/设置IP地址,子网掩码,广播地址等。ifconfig命令地语法格式为:ifconfig[网络设备][参数]ifconfig命令用来查看与配置网络设备,当网络环境发生改变时可以通过此命令对网络行相应地配置。Ifconfig命令参数详解如表所示:参数意义up启动指定网络设备/网卡down关闭指定网络设备/网卡。该参数可以有效地阻止通过指定接口地IP信息流,如果想永久地关闭一个接口,还需要从核心路由表将该接口地路由信息全部删除arp设置指定网卡是否支持ARP协议-promisc设置是否支持网卡地promiscuous模式,如果选择此参数,网卡将接收网络发给它所有地数据包-allmulti设置是否支持多播模式,如果选择此参数,网卡将接收网络所有地多播数据包-a显示全部接口信息-s显示摘要信息(类似于stat-i)add给指定网卡配置IPv六地址del删除指定网卡地IPv六地址mtu<字节数>设置网卡地最大传输单元(bytes)mask<子网掩码>设置网卡地子网掩码,掩码可以是有前缀零x地三二位十六制数,也可以是用点分开地四个十制数,如果不打算将网络分成子网,可以不管这一选项,如果要使用子网,那么网络每一个系统需要有相同子网掩码tunnel建立隧道dstaddr设定一个远端地址,建立点对点通信-broadcast<地址>为指定网卡设置广播协议-pointtopoint<地址>为网卡设置点对点通讯协议multicast为网卡设置组播标志address为网卡设置IPv四地址txqueuelen<长度>为网卡设置传输队列地长度ifconfig如果不接受任何参数,就会输出当前网络接口地情况。具体参见例九-二四。lo是表示主机地回环地址,它一般是用于测试一个网络程序,但又不想让局域网或外网地用户查看,只能在这台主机上运行与查看所用地网络接口。例如,把HTTPD服务器地IP地址指定到回环地址,在浏览器输入一二七.零.零.一就能自己看到所架构Web网站了,局域网地其它主机或用户无法知道。例九-二四ifconfig输出结果每行分别表示为:第一行:连接类型:Ether(以太网)HWaddr(硬件MAC地址)。第二行:网卡地IP地址,子网,掩码。第三行:UP(表示网卡开启状态),RUNNING表示网卡地网线被接上,MULTICAST表示支持组播,MTU:一五零零表示最大地传输单元为一五零零字节。第四,五行:接收,发送数据包情况统计。第六,七行:接收,发送数据字节数统计信息。ss显示连接状态命令查看服务器连接数一般都使用stat命令。ss命令地优势在于它能够显示更多,更详细关于TCP与连接状态地信息,而且比stat更快速,更高效。ss是SocketStatistics地缩写。顾名思义,ss命令可以用来获取socket统计数据,它可以显示PACKET套接字,TCP套接字,UDP套接字,DCCP套接字,RAW套接字,UNIX域套接字等地统计信息,而且允许显示与stat类似地内容。ss快地秘诀在于,它利用了TCP协议栈tcp_diag。tcp_diag是用于分析统计地模块。可以获得Linux内核第一手信息,这就确保了ss地快捷高效。当然,如果系统没有tcp_diag,ss也可以正常运行,速度会变得稍慢,但仍然比stat快。ss命令地语法格式为:ss[参数]或:ss[参数][过滤]ss命令参数详解如表所示:选项意义-h--help帮助信息-V--version程序版本信息-n--numeric不解析服务名称-r--resolve解析主机名-a--all显示所有套接字(sockets)-l--listening显示监听状态地套接字(sockets)-o--options显示计数器信息-e--extended显示详细地套接字(sockets)信息-m--memory显示套接字(sockets)地内存使用情况-p--processes显示使用套接字(sockets)地程-i--info显示TCP内部信息-s--summary显示套接字(sockets)使用概况-四--ipv四仅显示IPv四地套接字(sockets)-六--ipv六仅显示IPv六地套接字(sockets)-零--packet显示PACKET套接字(sockets)-t--tcp仅显示TCP套接字(sockets)-u--udp仅显示UDP套接字(sockets)-d--dccp仅显示DCCP套接字(sockets)-w--raw仅显示RAW套接字(sockets)-x--unix仅显示Unix套接字(sockets)-f--family=FAMILY显示FAMILY类型地套接字(sockets),FAMILY可选,支持unix,i,i六,link,link-A--query=QUERY,--socket=QUERY查看某种类型QUERY:={all|i|tcp|udp|raw|unix|packet|link}[,QUERY]-D--diag=FILE将原始TCP套接字(sockets)信息存储到文件-F--filter=FILE使用此参数指定地过滤规则文件,过滤某种状态地连接FILTER:=[statTCP-STATE][EXPRESSION]下面是一些常见地ss命令。ss-l显示本地打开地所有端口ss-pl显示每个程具体打开地socketss-t-a显示所有tcpsocketss-u-a显示所有UDPsocketss-ostateestablished'(dport=:smtporsport=:smtp)'显示所有已建立地SMTP连接ss-ostateestablished'(dport=:httporsport=:http)'显示所有已建立地HTTP连接ss-Xsrc/tmp/.X一一-unix/*找出所有连接X服务器地程ss-S列出当前socket详细信息free显示内存命令free命令可以显示Linux系统空闲地,已用地物理内存,swap内存,以及被内核使用地buffer。本节学如何使用free命令监控系统地内存情况。一般使用free–m方式查看内存占用情况(以MB为单位),free同样提供了-b(B),-k(KB),-g(GB)与-tera(TB)这些单位,要显示单位地统计结果,只要选择这个单位符号,在free后面跟上即可。下面是一个以MB为单位地输出样例,命令显示结果为:[root@tianyun~]#free-mtotalusedfreesharedbufferscachedMem:一零零二九二零八一零四二三七五-/+buffers/cache:五零二五零零Swap:一零二零三一零一七free还提供了-h选项,与其它选项地最大不同是-h选项会在数字后面加上适合类可读地单位。具体如下所示。[root@tianyun~]#free-htotalusedfreesharedbufferscachedMem:一.零G九二九M七二M零B四三M三八三M-/+buffers/cacheSwap:一.零G三.三M一.G数字一.零后是字母G(GB)。当数字并没有达到GB时,free会在每个数字后面跟上合适地单位。系统实际可用内存并不是free地部分,而系统实际内存占用以及可用内存有着加减关系。free命令选项详解如表所示。选项意义total内存总数used已经使用地内存数free空闲地内存数shared多个程享地内存总额buffersbuffercache与cachepagecache磁盘缓存地大小-buffers/cache(已用)地内存数,即used–buffers–cached+buffers/cache(可用)地内存数,即free+buffers+cached由此得出结论,可用内存地计算公式为:可用内存=free+buffers+cachedfree命令参数详解如表所示。参数意义-h以类可读地方式输出统计结果-t使用该选项会多显示一行标题为Total地统计信息,该行统计地是(used,free,total,地总与)此Total与total不同-o(小写)禁止显示第二行地缓冲区调整值(-/+buffers/cache)-s每个多少秒自动刷新结果-c与-s配合使用,控制刷新结果次数-l显示高低内存地统计详情-a显示可用内存-V显示版本号free作为状态检查工具,最好地统计内存利用率地方式是使用延迟间隔,这样地话,可以使用-s选项后面跟上想要间隔地秒数。还可以在后面合并几个选项来使输出内容满足需求。例如,每三秒统计一次内存利用率并且适于类可读,具体参见例九-四六~例九-四八。df查看磁盘占用命令Linuxdf命令是用来检查Linux服务器地磁盘空间占用情况,用该命令获取硬盘被占用了多少空间,还剩余多少空间等信息。df命令主要用来显示每个文件系统地信息,包括文件系统,已使用,未使用,已使用空间地占用百分比,以及挂载点等信息。df命令地功能是显示指定磁盘文件地可用空间,如果没有指定文件名,则显示所有当前被挂载地文件系统地可用空间。默认情况下,磁盘空间将以KB为单位行显示;当指定环境变量POSIXLY_CORRECT时,将以五一二字节为单位行显示。df命令地语法格式为:df[选项][文件]df命令常见参数详解如表所示。参数意义-a全部文件系统列表-B--block-size指定单位大小,如一k,一m等-h以类易读格式显示,如GB,MB,KB等-H与"-h"一样,但计算式为:一k=一零零零,而不是一k=一零二四-i显示inode信息-k区块为一零二四字节,以KB地容量显示各文件系统,相当于—block-size=一k-l只显示本地文件系统-m区块为一零四八五七六字节,以KB地容量显示各文件系统,相当于—block-size=一m--no-sync忽略sync命令-P输出格式为POSIX--sync在取得磁盘信息前,先执行sync命令-t文件系统类型--block-size指定区块大小-t<文件系统类型>只显示选定文件系统地磁盘信息-x<文件系统类型>不显示选定文件系统地磁盘信息--help显示帮助信息--version显示版本信息dstat动态显示系统负载命令dstat命令工具默认情况下会动态显示CPU,disk,,page,system负载情况,每秒收集一次。如果系统没有这个工具,只需yum–yinstall安装下即可。dstat命令地语法格式如下:dstat[-afv][options…][delay[count]]dstat命令参数详解如表所示。参数意义-c--cpu,统计CPU状态,包括user,system,idle(空闲等待时间百分比),wait(等到磁盘IO),hardwareinterrupt(硬件断),softwareinterrupt(软件断)等-d--disk统计磁盘读写状态-Dtotalsda统计指定磁盘或汇总信息-l--load统计系统负载情况,包括一分钟,五分钟,一五分钟均值-m--mem统计系统物理内存使用情况,包括used,buffers,cache,free-s--swap统计已使用与剩余量-n-统计网络使用情况,包括接收与发送数据-Neth一,total统计eth一接口汇总流量-r--io统计I/O请求,包括读写请求-p--proc统计程信息,包括runnable,uninterruptible,new-y--sys统计系统信息,包括断,上下文切换-t显示统计时间,对分析历史数据非常有用--fs统计文件打开数与inodes数-a此为默认选项,等同于-cdngy--ipcIPC状态(消息队列,信号,享内存)--lock文件锁状态(posix,flock,read,write)--raw原始套接字信息--socket套接字信息(所有地,tcp,udp,原始地,IP片段地)--tcptcp状态(listen,established,syn,time_wait,close)--udpudp状态(listen,active)--unixUnix接口状态(datagram,stream,listen,active)--vm虚拟内存信息(hard,pagefaults,softpagefaults,allocated,free)硬页面错误,较页面错误,分配地,未分配地delay两次输出之间地时间间隔,默认是一scount报告输出地次数,默认是没有限制,一直输出知道ctrl+cdstat命令监测界面如图所示。dstat命令参数详解如表所示。参数意义usr用户程消耗地CPU时间百分比,usr地值比较高时,说明用户程消耗地CPU时间多,但是如果长期超过五零%地使用,那么就要考虑优化程序行加速。sys内核程消耗地CPU时间百分比,sys地值高时,说明系统内核消耗地CPU资源多,idlCPU处在空闲状态时间百分比waiIO等待消耗地CPU时间百分比,wai地值高时,说明IO等待比较严重,这可能由于磁盘大量作随机访问造成,也可能是磁盘地带宽出现瓶颈。hiq硬断siq软断read磁盘读操作writ磁盘写操作数recv接受请求数send发送请求数in每秒产生地断次数out系统分页int系统断次数csw每秒上下文切换次数分页统计系统地分页活动。分页指地是一种内存管理技术用于查找系统场景,一个较大地分页表明系统正在使用大量地换空间,或者说内存非常分散,大多少情况下希望看到pagein(换入)与pageout(换出)地值是零r运行地与等待(CPU时间片)运行地程数b处于不可断状态地程数,常见地情况是由IO引起地swpd切换到换内存上地内存(默认以KB为单位)如果swpd地值不为零,但si,so地值长期为零,也不会影响系统能free空闲地物理内存buff作为buffercache地内存,对块设备地读写行缓冲cache作为pagecache地内存,文件系统地cache。如果cache地值大地时候,说明cache文件数多,如果频繁访问到地文件都能被cache,那么磁盘地读IObi会非常小si换内存使用,由磁盘调入内存。内存够用地使用,si与so值为零,如果值长期大于零时,系统能会受到影响,磁盘IO与CPU资源都会被消耗。so换内存使用,由内存调入磁盘bi从块设备读入地数据总量(读磁盘)(KB/s)bo写入到块设备地数据总量(写磁盘)(KB/s)itop查看I/O命令若想确定哪个程产生了I/O,就需要利用iotop工具行查看。iotop命令可以查看I/O统计信息排序,追踪到具体地程,显示当前程或者线程地使用率。iotop命令地语法格式为:iotop[options]iotop命令参数详解如表所示。参数意义-v--version显示版本号-h--help显示帮助用法-o--only只显示正在产生I/O地程活线程,除了传参,可以在运行过程按o生效-b--batch非互模式,一般用来记录日志-nNUM--iter=NUM设置监测地次数,默认无限,一般在非互式下使用-dSEC--delay=SEC设置每次监测地间隔,默认一秒-pPID--pid=PID指定监测地程或线程-uUSER--user=USER指定监测某个用户产生地I/O-p--process仅显示程,默认iotop显示所有线程-a--accumulated显示累积地I/O,而不是带宽-k--kilobytes使用KB单位,在非互式模式下
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 化纤棉枕头企业数字化转型与智慧升级战略研究报告
- 地基维修协议
- 二零二五年度绿色建筑设计入股投资协议
- 2025年度橡胶林土地流转与承包经营合同
- 仿制眼科用药行业跨境出海战略研究报告
- 制药用超临界萃取设备行业跨境出海战略研究报告
- 2025年度白酒年份酒收藏鉴定与评估合同
- 2025年度无证房屋买卖合同历史建筑风貌保护协议
- 二零二五年度个人信托资产委托投资协议
- 二零二五年度土地承包经营权流转协议书
- 2025年上半年中电科太力通信科技限公司招聘易考易错模拟试题(共500题)试卷后附参考答案
- 2025年沙洲职业工学院高职单招语文2018-2024历年参考题库频考点含答案解析
- 【化学】常见的盐(第1课时)-2024-2025学年九年级化学下册(人教版2024)
- 2024甘肃省公务员(省考)行测真题
- 体育活动策划与组织课件
- JJG 1204-2025电子计价秤检定规程(试行)
- 咨询公司顾问聘用协议书
- 认养一头牛-双寡格局下新品牌如何实现弯道超车
- 2024年德州职业技术学院单招职业适应性测试题库
- 业务约定书第10号:企业清产核资专项审计业务约定书
- 2024年医药行业年终总结.政策篇 易联招采2024
评论
0/150
提交评论