AIX命令参考手册.docx
- 文档编号:20650925
- 上传时间:2023-04-25
- 格式:DOCX
- 页数:79
- 大小:63.72KB
AIX命令参考手册.docx
《AIX命令参考手册.docx》由会员分享,可在线阅读,更多相关《AIX命令参考手册.docx(79页珍藏版)》请在冰豆网上搜索。
AIX命令参考手册
AIX命令参考手册
第1章AIX资源检测命令
性能优化以及确定系统中的性能瓶颈是系统管理员的主要任务之一。
在一个计算机系统中,CPU、内存、硬盘和网络是影响系统性能的主要因素,因此系统性能调整也主要在于如何在这些资源中获得某种平衡,以满足人们对系统性能的期望。
性能调制需要很多技巧,知识以及经验,不能仅靠分析统计数字,图表就可取得,性能调制有时是一件复杂甚至是非常困难的任务。
如同其它UNIX系统一样,AIX也给系统管理员剪裁系统提供了非常丰富的手段。
这里我们简单介绍RS/6000AIX系统中几个用于监控和调制多项系统资源的工具,每个工具的功能都很强,如想更透彻地了解这些命令的用法,请参考有关技术资料或手册。
这里讲述的命令将不仅仅局限于CPU、硬盘、内存或网络资源的某个方面,它们可用于其中的一项或多项资源。
1.1AIX监控工具
1.1.1iostat
iostat命令主要通过观察物理磁盘的活跃时间以及他们的平均传输速度,监控系统输入/输出设备负载。
根据iostat命令产生的报告,用户可确定一个系统配置是否平衡,并据此在物理磁盘与适配器之间更好地平衡输入/输出负载。
iostat工具的主要目的是通过监控磁盘的利用率(tm_act字段),而探测到系统中的I/O瓶颈。
iostat还可用于确定CPU问题,辅助容量规划,并可以为最终解决I/O问题提供相关材料。
vmstat和iostat联合使用,可捕获到确定与CPU,内存和I/O子系统有关的性能问题的必需数据。
iostat命令可产生下面四种类型的报告:
·tty和CPU利用情况
·磁盘的利用情况
·系统吞吐率
·适配器吞吐率
1.1.2netpmon
netpmon命令可以监控关于网络行为的系统事件和性能以及网络行为对CPU的消耗。
netpmon命令在指定的监控周期报告网络行为。
netpmon启动后直至发布trcstop命令终止它之前,一直在后台运行。
如果使用缺省设置,trace命令将会在netpmon命令之后立即自动启动。
另外,netpmon中还可用trcon命令选择在后面的某个时间跟踪。
当这种跟踪用trcstop命令终止后,netpmon命令就会输出它的报告并退出。
缺省时报告会输出到标准输出,需要时也可以重定向到某个文件。
netpmon命令还可以在一次先前产生的跟踪中以脱机模式使用。
在这样的情况下,需要用gennames命令产生一个文件。
该文件必须在trace终止后立即产生。
所产生的报告中包括CPU使用情况、网络设备驱动器I/O情况、互联网络套接字调用,以及网络文件系统(NFS)I/O信息:
·CPUuse:
netpmon命令报告线程和中断处理器对CPU的使用情况。
该命令将网络相关行为的CPU使用情况与其它行为的CPU使用情况区分开。
·NetworkDeviceDriverI/O:
netpmon命令监控网络适配器上所通过的I/O统计。
·InternetSocketCalls:
netpmon命令在互联网络套接字上监控read,recv,recvfrom,write,send以及sendto子程序。
ICMP,TCP,UDP这几个协议的每个进程都会予以报告。
·NFSI/O:
netpmon命令监控客户NFS文件上的read和write子程序,NFS客户上的RPC请求以及NFS服务器的read和write请求。
1.1.3PDT(性能诊断工具)
PDT通过收集和集中各种性能、配置和可用数据自动找出性能问题。
PDT评估系统的当前状态并跟踪系统在工作量和性能上的变化。
PDT数据收集和报告很容易起用,不需要更多的管理行为。
虽然许多常见的系统性能问题都有特定性,但PDT还试图用一些被认为性能好的系统中的通用概念来帮助它查找问题。
这些概念包括:
·资源的平衡使用
·在限定范围操作
·确定的工作量趋势
·无错误操作
·系统参数得到适当设置。
1.1.4ps
ps命令是UNIX系统中最常见的命令,它主要显示系统中关于进程的统计和状态信息,如进程ID,I/O行为以及CPU利用率等。
利用ps命令提供的信息,可决定一个进程运行了多长时间,进程使用了多少CPU时间,以及进程是否受系统的惩罚。
还可用ps命令确定进程使用了多少内存,完成多少I/O,进程的优先级以及是谁创建了进程。
下面这几个命令组合对于管理RS/6000AIX系统有帮助:
(1)显示10个消耗CPU最多的进程:
#psaux|head-1;psaux|sort-rn+2|head-10
(2)显示10个消耗存储空间最多的进程:
#psaux|head-1;psaux|sort-rn+3|head-10
(3)按顺序显示系统中受罚的进程:
#ps-eakl|head-1;ps-eakl|sort-rn+5
(4)按优先级顺序显示系统中的进程:
#ps-eakl|sort-n+6|head
(5)按处理时间为顺序显示系统中的前十个进程:
#psvx|head-1;psvx|grep-vPID|sort-rn+3|head-10
(6)按实际内存使用的多少顺序显示系统中的前十个进程:
#psvx|head-1;psvx|grep-vPID|sort-rn+6|head-10
(7)按换入页面的多少顺序显示系统中的前10个进程:
#psvx|head-1;psvx|grep-vPID|sort-rn+4|head-10
1.1.5vmstat
vmstat命令报告关于核心线程,虚拟内存,自陷(trap),磁盘以及CPU行为的统计。
而且每种行为报告都被更细致地用百分比分别表示用户态、核态、空闲以及等待磁盘I/O等情况。
内核维持了对核心线程,换页以及中断行为的统计数据,而vmstat命令则通过使用knlist子程序和/dev/kmen伪设备驱动器访问这些数据。
磁盘的输入/输出统计是通过设备驱动器维持的。
对于磁盘,平均传输速度是通过使用活跃时间核传输信息数目决定的。
而活跃时间百分比则是从报告期间驱动器忙的时间量计算出来的。
vmstat命令产生五种类型的报告:
·虚存行为报告
·fork子进程情况报告
·每个设备产生的中断情况报告
·汇总报告
·输入/输出行为报告
1.1.6sar
sar命令报告CPU的使用情况,I/O以及其它系统行为。
sar命令可以收集,报告以及保存系统行为信息。
如果没有指定输入文件,则sar调用sarc命令访问系统数据。
用户可用让cron命令运行两个shell脚本(/usr/lib/sa/sa1和/usr/lib/sa2)以提供日统计和报表。
在crontab文件/var/spool/cron/crontabs/adm中包括了一些样本节,用于示范cron要在何时运行这些shell脚本。
以这种方式收集到的数据对于确定系统的时间周期特征和决定峰值使用时间是有用的。
但要注意的是,sar命令自己运行时会产生相当数量的读写。
因此最好在没有工作量的情况下运行sar统计,看看sar对总的统计数字有多大的影响。
1.1.7topas
topas命令用于监控各种系统资源,如CPU的使用情况,CPU事件和队列,内存和换页空间的使用,磁盘性能,网络性能以及NFS统计等。
它还会报告指派给不同WLM类的进程对系统资源的消耗情况。
它还能报告系统中最热门的进程和工作量管理器(WLM)的热门类。
有关WLM类信息只有在WLM激活时才会显示。
topas命令将热门进程定义为那些使用大量CPU时间的进程。
topas命令没有作日志的选项,所有信息都是实时的。
topas命令利用SystemPerformanceMeasurementInterface(SPMI)API获得有关信息。
正是因为通过SPMIAPI,使系统开销保持在最小程度。
topas命令使用perfstat库调用访问perfstat内核扩展。
1.1.8truss
truss命令跟踪一个进程的系统调用、所接收的信号以及招致的机器错。
要检查的应用程序可在truss命令的命令行中指定,也可将truss命令挂在一个或多个已经在运行的进程上。
1.2AIX调制工具
1.2.1fdpr
fdpr命令改进用户级程序和库的执行时间和对实际内存的使用。
fdr命令可以通过不同的操作,如删除不必要的指令和重组代码和数据,而实现这样的目标。
fdr命令安装在目录/usr/bin下。
fdpr命令在三个不同阶段上,对原有的执行代码应用先进的优化技术从而为其构筑一个优化的可执行代码。
这三个阶段分别是:
·在阶段1,fdpr创建一个增加了某些装置(instrumented)的可执行程序。
原有的可执行程序被保存为__ProgramFile.save,而新版本被命名为__ProgramFile.instr。
·在阶段2,fdpr运行该增加了某些装置的可执行程序,并收集摘要(profiling)数据。
该摘要数据被保存在一个叫__ProgramFile.prof的文件中。
运行执行程序时需要为它提供典型的输入数据,以使fdpr命令能够找出代码中可优化的部分。
·在阶段3,fdpr命令使用阶段2中收集到的重要信息对可执行代码重新排序。
这些重新排序涉及到这样一些任务:
(1)将那些高频度执行代码序列包装在一起。
(2)对条件分之重新排序,以改进硬件对分之条件的预测。
(3)将较少使用的代码部分移出来。
(4)内嵌一些热门函数。
(5)从重排序后的代码中删除掉NOP(空操作)指令。
另外,编译器中还提供了一个-qfdpr标志,用它可使编译器在执行代码中增加一些额外的信息,以辅助fdpr对该执行代码重新排序。
但是,如果使用这个-qfdpr标志,则fdpr也只对那些用-qfdpr标志编译的模块重新排序。
1.2.2schedtune
schedtune命令可以给抖动、进程挂起、时间片以及线程在锁上所能轮询的时间长度等设置准则。
用schedtune,可调整AIX中所设立的一组影响其内存负载控制机制的参数。
Schedtune命令用于显示和修改那些用于检测系统内存是否在过度使用以致造成抖动的参数。
Schedtune命令还能用于修改运行在系统上的进程的惩罚和衰减因子。
在root用户下,用schedtune命令可做下面的事情:
· 决定用于确定抖动的准则。
· 决定哪个准则用于挂起进程。
· 决定在抖动终止后要等待多长时间才重新激活那些先前被挂起的进程。
· 决定被挂起的进程的最小数目。
· 调制调度优先级公式。
· 更改时间片数值。
· 决定在一把锁上轮询多长时间。
· 将schedtune值复位到它的缺省值。
需要注意的是,所有用schedtune作的修改在系统重启后都将丢失。
为了确保所需的schedtune值在引导时能够置上,可在/etc/inittab文件中插入适当的schedtune命令。
如:
schedt:
2:
once:
/usr/samples/kernel/schedtune-s65536
1.2.3vmtune
vmtune命令负责显示和调整虚存管理器(VMM)和其它AIX部件使用的参数。
系统中的根用户可动态修改包括下面这些参数:
· VMM页替换
· 永久文件读写
· 文件系统缓冲区结构(bufstructs)
· LVM缓冲区
· 裸输入/输出
· 换页空间参数
· 页删除
· 内存固定参数
第2章处理系统启动问题
本章目标:
1、理解系统启动的基本过程并且能够正常的关闭系统
2、进入Aix错误日志
3、解决启动问题
4、记住并能理解基本的LED上的错误代码
2.1本章的主要命令
alog,cfgmgr,last,bootlist,uptime,mpcfg,shutdown
2.2启动过程
2.2.1启动的前提条件:
必须有一个bootimage可以加载,同时要能够进入/和/usr文件系统。
(如果/tmp,/var不能进入呢?
)
2.2.2启动的三种形式
a、硬盘启动
b、无盘工作站启动(通过网络上的其它远程机器提供的启动文件)
c、服务模式(也叫维护模式,key设置在service位置上,或是PCI架构通过按F5来进入维护模式)
2.2.3机器启动的三个阶段
a、只读存储内核初始化阶段(Readonlystoragekernelinitphase),在这一阶段,主板被检查,ROS初始化程序加载时寻找bootlist,一旦找到启动设备,bootimage读入内存并开始系统初始化。
b、基本设备配置阶段,所有的设备在这一阶段被配置,通过cfgmgr命令
c、系统启动阶段,在这一阶段,所有的lv激活,交换换页开始,并且init开始读取并执行/etc/inittab里的程序。
2.3加电顺序,LED显示和声音提示
在启动过程中要注意LED上代码的变化,它可以提示系统处于哪一个启动阶段。
同时要注意嘀声提示,在设备logo展示完后,如果这时系统ROS没有被破坏,又会出现一次嘀声提示,这时可以选择按F1或F5,如果没有任何选择,这时开始调用bootlist来搜索启动设备。
2.4有用的命令
2.4.1alog命令
可以使用alog命令来查找启动过程的产生的问题,它维护和管理启动日志,位于/var/adm/ras/bootlog,由于启动日志是固定大小的,所以它循环使用。
在启动时,rc.boot启动脚本调用了alog并把启动日志记录到bootlog中去。
alog配置数据库中又四种日志:
boot,bosinst,nim,dumpsymp。
1、查看日志内容
alog–fLogFile[-o]
2、记录数据到一个指定的日志文件中
alog–fLofFile|[[-q][-sSzie]]
3、显示某一日志类型的冗长值
alog–LLogType–V
4、改变某一日志类型的属性值
5、显示当前某一日志类型的属性
alog–L[-tLogType]
实际应用:
#alog–L
#alog–o–tboot
记在,由于bootlog没有协同机制的控制,所有如果又多个进程要同时写该日志时,可能记录上会有错误。
2.4.2cfgmgr命令
1、语法:
cfgmgr[-f|-s|-pPhase][-IDevice][-lName][-v]
-f:
指定运行第一阶段配置规则,只有在boot是使用,在系统启动后,是不能使用这一选项的。
-iDevice:
指定安装介质的位置
-lNmae:
指定设备名
-pPhase:
指定阶段
-s:
指定cfgmgr执行第二阶段的配置规则
-v:
输出显示信息
(结合3.2来学习)
2、设备配置是受ConfigurationRulesobjectclass控制的,每条配置规则指定以下三项:
要执行程序的全路径,(相对于其它规则)什么时候执行该程序,在什么阶段执行。
3、在系统启动时,cfgmgr分为两个阶段,第一阶段带有-f参数,第二阶段带-s参数。
4、cfgmgr识别三阶段配置规则:
其中阶段2是:
secondbootphasefornormalboot,阶段三是:
secondbootphaseforserviceboot。
阶段1是在系统启动时自动运行的,要运行阶段2,可以使用cfgmgr,cfgmgr–s,或cfgmgr–p2等命令。
而要运行阶段3,只能用cfgmgr–p3命令。
5、可以指定-i参数来使识别设备时自动安装该设备所需软件。
注意:
为了包含配置数据库的完整性,在运行cfgmgr时不要轻易使用中断。
6、一般在系统运行状态下使用cfgmgr–v来加配新加的设备
2.4.3使用last命令
但用户登录或退出系统时,都会在/var/adm/wtmp文件中记录,除非他们被acctcon1和acctcon2命令生成每日报告。
last命令就是读取该文件。
如果碰到系统时间改变,该文件记录会有两个记录时间,以保证登录时间跨度的准确性。
语法:
last[-fFileNmae][-Number][Name…][Terminal…]
其中,Name是登录用户名,Terminal是登录的终端名。
#lastrootconsole
#lastshutdown可以查看系统shutdown的时间
2.4.4bootlist命令
有效的boot设备:
fdxx,hdiskxx,cdxx,rmtxx,entxx,tokxxx。
2.4.5uptime命令
显示系统启动了多长时间。
后面的负载数字是指可运行的处理器在过去5,10,15分钟的平均负载。
2.4.6mpcfg命令
该命令使用在老式的MicroChannel架构的机器上。
该命令是用户可以有root的权限去管理服务信息,包括服务支持和诊断工具。
1、为了显示服务信息
#mpcfg–d{-f–m–p–s}
2、改变服务信息
#mpcfg–c{-f|-m|-p–s–w}IndexValue
3、保持或恢复服务信息
#mpcfg{-r|-s}
2.4.7使用shutdown命令
1、参数
-h和-v参数一样:
关闭该系统。
-F:
尽快关闭系统
-i:
指定交换模式
2、可以添加应用程序的关闭到shutdown的程序中
但shutdown命令发起时,它会检查/etc/rc.shutdown文件,所有可以把关闭应用程序写入该文件。
2.5解决启动中问题
2.5.1进入一个没有(不能)启动的系统
2.5.2安装介质的问题
2.5.3LED上显示的启动时的错误代码
1、201:
破坏的bootimage
2、223-229:
无效的引导顺序
3、551,555,557:
受破坏的文件系统或文件系统日志
4、552,554,556:
超级快或定制的ODM库受破坏
5、553:
受破坏的/etc/inittab文件
第3章硬件设备
3.1列出硬件设备
使用lsdev,lspv,lsattr三个命令
3.1.1使用lsdev命令
该命令显示设备配置在ODM库中的信息,使用-C和-P参数。
1、列出在预定义ODM库中的设备
#lsdev–P–H
其中-H是限制列输出的头(headersabovethecolumnoutput)
2、列出在已定制ODM库中的设备
#lsdev–C-H
3、列出可用设备
#lsdev–C–cadapter–Sa
其中-S是指定设备状态
4、列出支持的设备
#lsdev–P–rclass
3.1.2使用lspv命令
格式:
lspv[-l|-p|-M][-nDescriptorPhysicalVolume][-vVolumeGroupID]
参数:
-p:
列出该PV上每个PP的range,state,region,lvname,typeandmountpoint。
-vVolumeGroupID:
列出基于该VolumeGroupID变量的有关信息
比如:
#lspv–phdisk0
3.2cfgmgr配置系统设备
1、cfgmgr命令用于配置系统设备,并且可以选择性的安装所需的设备驱动软件包。
2、CongigurationRulesobjectclass作为设备配置数据库(DeviceConfigurationdatabase)的一部分,每条配置规则包含有三项:
要运行的可执行程序的全路径,什么时候运行该程序(即seq项),哪一阶段运行该程序。
如:
Phaseseqrule
11/usr/lib/methods/defsys
25/usr/lib/methods/ptynode
310/usr/lib/methods/startlft
cfgmgr运行分为三个阶段,分别有-f,-s或不带参数,-p3来设定。
先后顺序(即seq项),数值越小,优先级越高,但0除外,它的优先级最小。
所有在seq项中,值为1时优先级最高。
3、在使用cfgmgr来安装配置设备时,有时会提示某些需要的设备驱动软件没有安装,如果系统没办法确定该安装哪个软件包版本,它会使用:
(冒号)隔开,在同一行内列出可能需要安装的驱动软件包。
这时,还可以指定-i来让系统自动安装所需的驱动软件包。
4、参数说明
-idevice:
指定安装介质的路径
-lName:
指定要配置的设备名
-pPhase:
指定确定的某一阶段
-s:
运行第二阶段配置规则
-v:
显示信息输出
比如:
#cfgmgr–lscsi0
#cfgmgr–i/usr/sys/inst.images
3.3系统管理服务(SMS)
cfgmgr是在软件层面上去管理配置设备,可以使用SMS在硬件层面上去检测和配置系统配件。
在系统启动时按F1进入图形SMS菜单。
(或按F4进入ASCIISMS菜单),如果在启动时最后一个IBM图标(icon)出现后在按F1或F4,那么这时将进入正常的启动引导阶段。
可以在SMS中设置进入密码,但如果忘记的话,唯一的办法是对主板的芯片放电(removetheon-boardsystembattary)
3.4硬件设备的兼容性
SCSI,PCI和ISA不同标准和接口的设备,配置不同。
3.4.1设备配置数据库
设备配置信息是存储在设备设备配置数据库(DeviceConfigurationDatabase),通过ODM来管理的。
它包括两个内容:
预定义数据库:
包括所有可能配置到系统的设备配置数据。
已定制好数据库:
包括系统中所有目前已定义的和配置好的设备的配置信息。
3.4.2使用lsattr命令
使用lsattr命令来列出某个设备或某种设备的信息。
语法如下:
lsattr{-D[-o]|-E[-o]|-FFormat}–lName[-aAttribute]….[-fFile][-h][-H]
-D:
显示缺省值
-E:
显示当前值
-aAttribute:
指定某个或某类设备的某个属性
-lName:
指定定制设备对象类的设备登录名(简单说,就是设备名)
-R:
指定某一属性的合法值(可能取值)
-sSubclass:
指定某一设备子类名
-tType:
指定某一类设备
比如:
#lsattr–Elrmt0
#lsattr–Dlrmt0
#lsattr–lscsi0–abus_intr_lvl
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- AIX 命令 参考手册