AIX命令参考手册
更新时间:2024-06-11 10:10:01 阅读量: 综合文库 文档下载
文档名称:AIX命令参考手册
文档密级
AIX命令参考手册 第1章 AIX资源检测命令
性能优化以及确定系统中的性能瓶颈是系统管理员的主要任务之一。在一个计算机系统中,CPU、内存、硬盘和网络是影响系统性能的主要因素,因此系统性能调整也主要在于如何在这些资源中获得某种平衡,以满足人们对系统性能的期望。性能调制需要很多技巧,知识以及经验,不能仅靠分析统计数字,图表就可取得,性能调制有时是一件复杂甚至是非常困难的任务。
如同其它UNIX系统一样,AIX也给系统管理员剪裁系统提供了非常丰富的手段。这里我们简单介绍RS/6000 AIX系统中几个用于监控和调制多项系统资源的工具,每个工具的功能都很强,如想更透彻地了解这些命令的用法,请参考有关技术资料或手册。这里讲述的命令将不仅仅局限于CPU、硬盘、内存或网络资源的某个方面,它们可用于其中的一项或多项资源。
1.1 AIX监控工具
1.1.1 iostat
iostat命令主要通过观察物理磁盘的活跃时间以及他们的平均传输速度,监控系统输入/输出设备负载。根据iostat命令产生的报告,用户可确定一个系统配置是否平衡,并据此在物理磁盘与适配器之间更好地平衡输入/输出负载。
iostat工具的主要目的是通过监控磁盘的利用率(tm_act字段),而探测到系统中的I/O瓶颈。iostat还可用于确定CPU问题,辅助容量规划,并可以为最终解决I/O问题提供相关材料。vmstat和iostat联合使用,可捕获到确定与CPU,内存和I/O子系统有关的性能问题的必需数据。 iostat命令可产生下面四种类型的报告: · tty和CPU利用情况 · 磁盘的利用情况 · 系统吞吐率 · 适配器吞吐率
1.1.2 netpmon
netpmon命令可以监控关于网络行为的系统事件和性能以及网络行为对CPU的消耗。netpmon命令在指定的监控周期报告网络行为。
netpmon启动后直至发布trcstop命令终止它之前,一直在后台运行。如果使用缺省设置,trace命令将会在netpmon命令之后立即自动启动。另外,netpmon中还可用trcon命令选择在后面的某个时间跟踪。当这种跟踪用trcstop命令终止后,netpmon5/1/2013
未经许可不得扩散
第1页, 共70页
文档名称:AIX命令参考手册
文档密级
命令就会输出它的报告并退出。缺省时报告会输出到标准输出,需要时也可以重定向到某个文件。
netpmon命令还可以在一次先前产生的跟踪中以脱机模式使用。在这样的情况下,需要用gennames命令产生一个文件。该文件必须在trace终止后立即产生。 所产生的报告中包括CPU使用情况、网络设备驱动器I/O情况、互联网络套接字调用,以及网络文件系统(NFS)I/O信息:
· CPU use:netpmon命令报告线程和中断处理器对CPU的使用情况。该命令将网络相关行为的CPU使用情况与其它行为的CPU使用情况区分开。
· Network Device Driver I/O:netpmon命令监控网络适配器上所通过的I/O统计。 · Internet Socket Calls:netpmon命令在互联网络套接字上监控read,recv,recvfrom,write,send以及sendto子程序。ICMP,TCP,UDP这几个协议的每个进程都会予以报告。
· NFS I/O:netpmon命令监控客户NFS文件上的read和write子程序,NFS客户上的RPC请求以及NFS服务器的read和write请求。
1.1.3 PDT(性能诊断工具)
PDT通过收集和集中各种性能、配置和可用数据自动找出性能问题。PDT评估系统的当前状态并跟踪系统在工作量和性能上的变化。PDT数据收集和报告很容易起用,不需要更多的管理行为。
虽然许多常见的系统性能问题都有特定性,但PDT还试图用一些被认为性能好的系统中的通用概念来帮助它查找问题。这些概念包括: · 资源的平衡使用 · 在限定范围操作 · 确定的工作量趋势 · 无错误操作
· 系统参数得到适当设置。
1.1.4 ps
ps命令是UNIX系统中最常见的命令,它主要显示系统中关于进程的统计和状态信息,如进程ID,I/O行为以及CPU利用率等。利用ps命令提供的信息,可决定一个进程运行了多长时间,进程使用了多少CPU时间,以及进程是否受系统的惩罚。还可用ps命令确定进程使用了多少内存,完成多少I/O,进程的优先级以及是谁创建了进程。 下面这几个命令组合对于管理RS/6000 AIX系统有帮助: (1)显示10个消耗CPU最多的进程:
# ps aux |head -1 ;ps aux |sort -rn +2 |head -10 (2)显示10个消耗存储空间最多的进程:
# ps aux |head -1 ;ps aux |sort -rn +3 |head -10 (3)按顺序显示系统中受罚的进程:
#ps -eakl |head -1 ;ps -eakl |sort -rn +5 5/1/2013
未经许可不得扩散
第2页, 共70页
文档名称:AIX命令参考手册
(4)按优先级顺序显示系统中的进程: #ps -eakl |sort -n +6 |head
(5)按处理时间为顺序显示系统中的前十个进程:
#ps vx |head -1 ;ps vx |grep -v PID |sort -rn +3 |head -10 (6)按实际内存使用的多少顺序显示系统中的前十个进程: #ps vx |head -1 ;ps vx |grep -v PID |sort -rn +6 |head -10 (7)按换入页面的多少顺序显示系统中的前10个进程:
#ps vx |head -1 ;ps vx |grep -v PID |sort -rn +4 |head -10
文档密级
1.1.5 vmstat
vmstat命令报告关于核心线程,虚拟内存,自陷(trap),磁盘以及CPU行为的统计。而且每种行为报告都被更细致地用百分比分别表示用户态、核态、空闲以及等待磁盘I/O等情况。
内核维持了对核心线程,换页以及中断行为的统计数据,而vmstat命令则通过使用knlist子程序和/dev/kmen伪设备驱动器访问这些数据。磁盘的输入/输出统计是通过设备驱动器维持的。对于磁盘,平均传输速度是通过使用活跃时间核传输信息数目决定的。而活跃时间百分比则是从报告期间驱动器忙的时间量计算出来的。 vmstat命令产生五种类型的报告: · 虚存行为报告 · fork子进程情况报告 · 每个设备产生的中断情况报告 · 汇总报告
· 输入/输出行为报告
1.1.6 sar
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.7 topas
topas命令用于监控各种系统资源,如CPU的使用情况,CPU事件和队列,内存和换页空间的使用,磁盘性能,网络性能以及NFS统计等。它还会报告指派给不同WLM类的进程对系统资源的消耗情况。它还能报告系统中最热门的进程和工作量管理器(WLM)的热门类。有关WLM类信息只有在WLM激活时才会显示。topas命令将热门进程定义为那些使用大量CPU时间的进程。topas命令没有作日志的选项,所有信息5/1/2013
未经许可不得扩散
第3页, 共70页
文档名称:AIX命令参考手册
都是实时的。
文档密级
topas命令利用System Performance Measurement Interface(SPMI)API获得有关信息。正是因为通过SPMI API,使系统开销保持在最小程度。topas命令使用perfstat库调用访问perfstat内核扩展。
1.1.8 truss
truss命令跟踪一个进程的系统调用、所接收的信号以及招致的机器错。要检查的应用程序可在truss命令的命令行中指定,也可将truss命令挂在一个或多个已经在运行的进程上。
1.2 AIX调制工具
1.2.1 fdpr
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.2 schedtune
schedtune命令可以给抖动、进程挂起、时间片以及线程在锁上所能轮询的时间长度等设置准则。
用schedtune,可调整AIX中所设立的一组影响其内存负载控制机制的参数。Schedtune命令用于显示和修改那些用于检测系统内存是否在过度使用以致造成抖动5/1/2013
未经许可不得扩散
第4页, 共70页
文档名称:AIX命令参考手册
文档密级
的参数。Schedtune命令还能用于修改运行在系统上的进程的惩罚和衰减因子。在root用户下,用schedtune命令可做下面的事情: · 决定用于确定抖动的准则。 · 决定哪个准则用于挂起进程。
· 决定在抖动终止后要等待多长时间才重新激活那些先前被挂起的进程。 · 决定被挂起的进程的最小数目。 · 调制调度优先级公式。 · 更改时间片数值。
· 决定在一把锁上轮询多长时间。 · 将schedtune值复位到它的缺省值。
需要注意的是,所有用schedtune作的修改在系统重启后都将丢失。为了确保所需的schedtune值在引导时能够置上,可在/etc/inittab文件中插入适当的schedtune命令。如:schedt:2:once:/usr/samples/kernel/schedtune -s 65536
1.2.3 vmtune
vmtune命令负责显示和调整虚存管理器(VMM)和其它AIX部件使用的参数。系统中的根用户可动态修改包括下面这些参数: · VMM页替换 · 永久文件读写
· 文件系统缓冲区结构(bufstructs) · LVM缓冲区 · 裸输入/输出 · 换页空间参数 · 页删除 · 内存固定参数
第2章 处理系统启动问题
本章目标:
1、 理解系统启动的基本过程并且能够正常的关闭系统 2、 进入Aix错误日志
5/1/2013
未经许可不得扩散
第5页, 共70页
文档名称:AIX命令参考手册
文档密级
3、 解决启动问题
4、 记住并能理解基本的LED上的错误代码
2.1 本章的主要命令
alog,cfgmgr,last,bootlist,uptime,mpcfg,shutdown
2.2 启动过程
2.2.1 启动的前提条件:
必须有一个boot image可以加载,同时要能够进入/和/usr文件系统。(如果/tmp,/var不能进入呢?)
2.2.2 启动的三种形式
a、 硬盘启动
b、 无盘工作站启动(通过网络上的其它远程机器提供的启动文件) c、 服务模式(也叫维护模式,key设置在service位置上,或是PCI架构通过按F5来进入维护模式)
2.2.3 机器启动的三个阶段
a、 只读存储内核初始化阶段(Read only storage kernel init phase),在这一阶段,主板被检查,ROS初始化程序加载时寻找bootlist,一旦找到启动设备,boot image读入内存并开始系统初始化。
b、 基本设备配置阶段,所有的设备在这一阶段被配置,通过cfgmgr命令
c、 系统启动阶段,在这一阶段,所有的lv激活,交换换页开始,并且init开始读取并执行/etc/inittab里的程序。
2.3 加电顺序,LED显示和声音提示
在启动过程中要注意LED上代码的变化,它可以提示系统处于哪一个启动阶段。
同时要注意嘀声提示,在设备logo展示完后,如果这时系统ROS没有被破坏,又会出现一次嘀声提示,这时可以选择按F1或F5,如果没有任何选择,这时开始调用bootlist来搜索启动设备。
5/1/2013
未经许可不得扩散
第6页, 共70页
文档名称:AIX命令参考手册
文档密级
2.4 有用的命令
2.4.1 alog命令
可以使用alog命令来查找启动过程的产生的问题,它维护和管理启动日志,位于/var/adm/ras/bootlog,由于启动日志是固定大小的,所以它循环使用。在启动时,rc.boot启动脚本调用了alog并把启动日志记录到bootlog中去。alog配置数据库中又四种日志:boot,bosinst,nim,dumpsymp。 1、查看日志内容 alog –f LogFile [-o]
2、记录数据到一个指定的日志文件中 alog –f LofFile | [ [ -q] [ -s Szie] ] 3、显示某一日志类型的冗长值 alog –L LogType –V
4、改变某一日志类型的属性值 5、 显示当前某一日志类型的属性 alog –L [-t LogType ] 实际应用: #alog –L #alog –o –t boot
记在,由于bootlog没有协同机制的控制,所有如果又多个进程要同时写该日志时,可能记录上会有错误。
2.4.2 cfgmgr命令
1、语法:cfgmgr [-f | -s | -p Phase ] [ -I Device ] [ -l Name ] [-v]
-f:指定运行第一阶段配置规则,只有在boot是使用,在系统启动后,是不能使用这一选项的。 -i Device:指定安装介质的位置 -l Nmae:指定设备名 -p Phase:指定阶段
-s: 指定cfgmgr执行第二阶段的配置规则 -v:输出显示信息
5/1/2013
未经许可不得扩散
第7页, 共70页
文档名称:AIX命令参考手册
文档密级
(结合3.2来学习)
2、设备配置是受Configuration Rules object class控制的,每条配置规则指定以下三项:要执行程序的全路径,(相对于其它规则)什么时候执行该程序,在什么阶段执行。
3、在系统启动时,cfgmgr分为两个阶段,第一阶段带有-f参数,第二阶段带-s参数。
4、cfgmgr识别三阶段配置规则:其中阶段2是:second boot phase for normal boot,阶段三是:second boot phase for service boot。阶段1是在系统启动时自动运行的,要运行阶段2,可以使用cfgmgr,cfgmgr –s,或cfgmgr –p 2等命令。而要运行阶段3,只能用cfgmgr –p 3命令。 5、可以指定-i参数来使识别设备时自动安装该设备所需软件。 注意:为了包含配置数据库的完整性,在运行cfgmgr时不要轻易使用中断。
6、 一般在系统运行状态下使用cfgmgr –v来加配新加的设备
2.4.3 使用last命令
但用户登录或退出系统时,都会在/var/adm/wtmp文件中记录,除非他们被acctcon1和acctcon2命令生成每日报告。last命令就是读取该文件。 如果碰到系统时间改变,该文件记录会有两个记录时间,以保证登录时间跨度的准确性。
语法:last [-f FileNmae ] [- Number ] [ Name?] [Terminal ?] 其中,Name是登录用户名,Terminal是登录的终端名。 #last root console
#last shutdown 可以查看系统shutdown的时间
2.4.4 bootlist命令
有效的boot设备:fdxx, hdiskxx, cdxx,rmtxx,entxx,tokxxx。
2.4.5 uptime命令
显示系统启动了多长时间。后面的负载数字是指可运行的处理器在过去5,10,15分钟的平均负载。
2.4.6 mpcfg命令
该命令使用在老式的Micro Channel架构的机器上。
该命令是用户可以有root的权限去管理服务信息,包括服务支持和诊断
5/1/2013
未经许可不得扩散
第8页, 共70页
工具。
文档名称:AIX命令参考手册
文档密级
1、为了显示服务信息 #mpcfg –d { -f –m –p –s} 2、改变服务信息
#mpcfg –c { -f |-m | -p –s –w } Index Value 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.3 LED上显示的启动时的错误代码
1、201:破坏的boot image 2、223-229:无效的引导顺序
3、551,555,557:受破坏的文件系统或文件系统日志 4、552,554,556:超级快或定制的ODM库受破坏 5、553:受破坏的/etc/inittab文件
5/1/2013
未经许可不得扩散
第9页, 共70页
文档名称:AIX命令参考手册
文档密级
第3章 硬件设备
3.1 列出硬件设备
使用lsdev,lspv,lsattr三个命令
3.1.1 使用lsdev命令
该命令显示设备配置在ODM库中的信息,使用-C和-P参数。 1、列出在预定义ODM库中的设备 #lsdev –P –H
其中-H是限制列输出的头(headers above the column output) 2、列出在已定制ODM库中的设备 #lsdev –C -H 3、列出可用设备 #lsdev –C –c adapter –S a 其中-S是指定设备状态 4、列出支持的设备 #lsdev –P –r class
3.1.2 使用lspv命令
格式: lspv [-l | -p | -M ] [-n DescriptorPhysicalVolume] [-v VolumeGroupID] 参数:
-p:列出该PV上每个PP的range,state,region, lv name, type and mount point。
-v VolumeGroupID:列出基于该VolumeGroupID变量的有关信息 比如:#lspv –p hdisk0
3.2 cfgmgr配置系统设备
1、cfgmgr命令用于配置系统设备,并且可以选择性的安装所需的设备驱动软件包。
2、Congiguration Rules object class作为设备配置数据库(Device Configuration database)的一部分,每条配置规则包含有三项:要运行的可执行程序的全路径,什么时候运行该程序(即seq项),哪一阶段运行
5/1/2013
未经许可不得扩散
第10页, 共70页
文档名称:AIX命令参考手册
文档密级
该程序。如: Phase seq rule 1 1 /usr/lib/methods/defsys 2 5 /usr/lib/methods/ptynode 3 10 /usr/lib/methods/startlft
cfgmgr运行分为三个阶段,分别有-f,-s或不带参数,-p 3来设定。 先后顺序(即seq项),数值越小,优先级越高,但0除外,它的优先级最小。所有在seq项中,值为1时优先级最高。
3、在使用cfgmgr来安装配置设备时,有时会提示某些需要的设备驱动软件没有安装,如果系统没办法确定该安装哪个软件包版本,它会使用:(冒号)隔开,在同一行内列出可能需要安装的驱动软件包。这时,还可以指定-i来让系统自动安装所需的驱动软件包。 4、参数说明
-i device:指定安装介质的路径 -l Name: 指定要配置的设备名 -p Phase: 指定确定的某一阶段 -s: 运行第二阶段配置规则 -v: 显示信息输出 比如:#cfgmgr –l scsi0 #cfgmgr –i /usr/sys/inst.images
3.3 系统管理服务(SMS)
cfgmgr是在软件层面上去管理配置设备,可以使用SMS在硬件层面上去检测和配置系统配件。
在系统启动时按F1进入图形SMS菜单。(或按F4进入ASCII SMS菜单),如果在启动时最后一个IBM图标(icon)出现后在按F1或F4,那么这时将进入正常的启动引导阶段。
可以在SMS中设置进入密码,但如果忘记的话,唯一的办法是对主板的芯片放电(remove the on-board system battary)
5/1/2013
未经许可不得扩散
第11页, 共70页
文档名称:AIX命令参考手册
文档密级
3.4 硬件设备的兼容性
SCSI,PCI和ISA不同标准和接口的设备,配置不同。
3.4.1 设备配置数据库
设备配置信息是存储在设备设备配置数据库(Device Configuration Database),通过ODM来管理的。它包括两个内容: 预定义数据库:包括所有可能配置到系统的设备配置数据。
已定制好数据库:包括系统中所有目前已定义的和配置好的设备的配置信息。
3.4.2 使用lsattr命令
使用lsattr命令来列出某个设备或某种设备的信息。语法如下: lsattr { -D [-o ] | -E [ -o ] | -F Format } –l Name [-a Attribute ] ….[-f File] [-h ] [ -H ]
-D: 显示缺省值 -E: 显示当前值
-a Attribute: 指定某个或某类设备的某个属性
-l Name: 指定定制设备对象类的设备登录名(简单说,就是设备名) -R: 指定某一属性的合法值(可能取值) -s Subclass: 指定某一设备子类名 -t Type:指定某一类设备 比如: #lsattr –El rmt0 #lsattr –Dl rmt0
#lsattr –l scsi0 –a bus_intr_lvl –E #lsattr –l tty0 –a login –R
此命令输出:enable disable share delay hold
注意,使用lasttr命令所显示的设备属性的有效值是从配置数据库取得的,如果使用chdev没有使用-p参数,结果改了设备的属性,但还没有更新到配置数据库中去,这时lsattr显示的可能不是该设备属性的实际值,直到等到系统重启后两者数据才会一致。(试一试,不要重启情况)
5/1/2013
未经许可不得扩散
第12页, 共70页
文档名称:AIX命令参考手册
文档密级
3.5 使用smit device菜单 3.6 系统错误日志
3.6.1 使用errdemon命令
errdemon守护进程(/usr/lib/errdemon)检测系统错误并写入到/dev/error。该错误日志最终记录到/var/adm/ras/errlog文件中去。 #/usr/lib/errdemon –l 显示有关配置情况 #/usr/lib/errdemon –B 16384 #/usr/lib/errdemon –s 2000000
3.6.2 使用errpt命令
errpt命令步骤任何错误日志分析,可以使用diag来分析错误。 参数:
-s StartDate: 指定在该指定时间后的日志 比如:
#errpt –aj 2bfa76f6
#errpt –a –s 0405093005 显示2005年4月5日9:30以来的日志
3.6.3 使用errlogger命令
可以使用errlogger命令来记录操作信息或其它信息到系统错误日志中去。 #errlogger Testing use of errlogger command.
3.6.4 其它error有关命令
errclear
errinstall: 在错误日志信息设置中安装信息 errupdate: 升级错误记录模板储存库
3.7 诊断硬件问题
利用diag上多个可选的工具和服务可以用来诊断硬件上的问题,运行diag,选择Diagnostic Routines,再选择Problem Determination。 也可以使用命令行#diag –d sysplannar0 –v –e来诊断sysplannar0设备的问题。
5/1/2013
未经许可不得扩散
第13页, 共70页
文档名称:AIX命令参考手册
文档密级
3.8 系统日志
Aix使用syslogd来记录系统信息,syslogd守护进行读取数据报路(datagram socket)并把它记录到/etc/syslog.conf中定义的目的地。/etc/syslog.pid文件中记录的是syslogd守护进程的进程号,可以使用kill或refresh等命令来重启或刷新该守护进行,一旦syslog.conf配置文件被改动后。
每条信息各成一行,它可能包含一个有在<>号里标记的优先级代码,超过900bytes的信息会被截去。
/usr/include/sys/syslog.h文件里包含着定义在/etc/syslog.conf文件里可以定义的各种工具和优先级代码。
Syslogd命令语法:syslogd [-d] [-s] [-f ConfigurationFile] [-m Markinterval] [-r]
3.8.1 syslogd配置文件
/etc/syslog.conf文件控制着syslogd守护进程的行为,它决定着syslogd往哪里发送错误信息和如何对其它系统的事件作出反映等。
3.8.2 /etc/syslog.conf配置文件的格式
syslog.conf配置文件的每一行包含有一个选择项和一个动作项,中间用一个或多个tab(空格)键隔开。比如:mail.debug /usr/spool/mqueue/syslog 在选址项中,定义一个工具及其优先级,中间由点号连接,可以由多个选址项并列,中间要用分号隔开,要选择所有的工具,用星号(*)。如: *.debug;mail.none /tmp/debug.log。
工具由以下几项:kern, user, mail, daemon, auth, syslog, lpr, news, uucp, * ,其中*代表所有工具。
优先级别:emerg, alert, crit, err, warning, notice, info, debug, none,其中none的含义是不包含所选的工具,只用于在同一行中有*号工具的定义行。如:*.err;lpr.none /tmp/error.log。在syslog.conf文件中定义了某级别,意思就是在该级别和该级别以上的所有信息都会被记录。
在动作项(action field)中,可以定义要把信息发送的所在地,如某个目录或某个用户,某台主机。可有:File Nmae, @Host, User [,User][?]。
3.8.3 使用系统日志
1、启动关闭和刷新syslogd进程。
5/1/2013
未经许可不得扩散
第14页, 共70页
文档名称:AIX命令参考手册
文档密级
Syslog.conf的配置
2、定义mail工具在debug级别或以上信息到文件/tmp/mail.syslog, mail.debug /tmp/mailsyslog
3、定义所有错误级别或以上信息,出来lpd工具到主机Logserver *.err;lpd.none @Logserver
4、定义所有的mail工具信息到所有用户终端屏幕 mail.debug *
5、定义所以在emerg优先级或以上和mail、daemon工具在crit级别以上信息给用户stan和xtjk
*.emerg;mail,daemon.crit stan,xjtk
3.9 mkdev设置一个ASCII终端
使用smit tty或直接使用smit maktty,也可以使用mkdev命令行。 #mkdev –c tty –t tty –s rs232 –p sa0 –w s1 –a login=enable –a term=vt100 #rmdel –l tty_name –d 删除某个终端。
第4章 系统和软件安装
4.1 基本操作系统安装
要安装操作系统,在机器启动时要切换到维护模式,即听到嘀声后按下F5(或Esc+5)键来选择安装选项。
4.1.1 全新完全安装
4.1.2 升级安装(Migration installation)
保留了rootvg里的所有文件系统、lv和系统配置文件,除了/tmp文件系统。
4.1.3 保留安装
保留用户数据,将会删除和重建操作系统的文件系统如/,/var,/tmp,/usr四个文件系统。任何在这些目录的用户数据也会丢失。系统配置将必须重做。
5/1/2013
未经许可不得扩散
第15页, 共70页
文档名称:AIX命令参考手册
文档密级
可以使用/etc/preserve.list来定义需要保留的系统文件。The /etc/filesystems files is listed by default.
4.2 高级安装选项
4.2.1 安装Package Set or Desktop
该选项让你配置系统启动后将会使用的界面。缺省是安装Package Set而这就只能选择ASCII控制台。
Desktop选项是图形界面,可以选择CDE,KDE,GNOME等图形界面,如果选择None,那在此选项下支行安装最小的配置如X11,Java,perl,SMIT和基于Web的系统管理工具。
4.2.2 启用Trusted Computing Base(TCB)
本选项提供一个更高级别的安全。选择本选项将会安装bos.rte.security软件包,而且你配置和启用它。如果你在此时不安装TCB,那么你就要重新安装操作系统。安装了TCB,你可以在系统中通过卸装bos.rte.security软件报来卸载。
4.2.3 启用64-bit和JFS2
如果你的机器是64位的处理器,那么将会默认加载(load)64-bit内核,但只有你选择了这一选项后系统启用(enable)64-bit内核。
如果你是升级安装而来,那么原来的JFS文件系统将不会转换成JFS2文件系统。
4.3 配置助手(Configuration Assistant)
安装完毕系统重启后,配置助手工具/usr/sbin/install_assist将会自动运行。 配置完毕后,记得要“退出配置助手”,选择“结束”,这样下次启动才不会还是自动启动配置助手。 使用oslevel命令
4.4 使用oslevel命令鉴定系统软件维护版本
使用oslevel命令来鉴定一个系统的软件的维护版本(maintaneance level) osleve [-l Level | -g -q ]
-l Level:列出早于指定维护版本的fileset。
5/1/2013
未经许可不得扩散
第16页, 共70页
文档名称:AIX命令参考手册
文档密级
-g: 列出迟于目前维护版本的fileset 软件的版本:vv.rr.mmmm.ffff vv:version number 版本号 rr: release number 发布版号
mmmm: modifacation level 修改版号 ffff: fix level 补丁版号 例如: #oslevel #oslevel –q #oslevel –g #oslevel –l 4.3.3.0
4.5 软件包(software packaging)
4.5.1 Filesets
A fileset是Aix操作系统最小的安装基本单位。比如bos.net.uucp或者bos.net.nfs.client。
4.5.2 Packages
一组提供某种特定功能的fileset的集合。如bos.net。
4.5.3 Licensed Porgram Products(LPP)
A Licensed Program Product is a complete software product including all packages associated with that licensed porgram.
4.5.4 Bungles
A bungle is a list of software that can contain filesets,packages,and LPPs that are suited for a particular use.
系统定义的默认bundles在/usr/sys/inst.data/sys_bundles。而用户生成的bundles则储存在/usr/sys/inst.data/user_bundles。
4.5.5 PTFs and APARs
PTF: Program Temporary Fix的首字母的缩写词。如同其它软件包一样,它使用lslpp命令来安装。
APAR:Authorized Program Analysis Report的首字母的缩写词。它使用
5/1/2013
未经许可不得扩散
第17页, 共70页
文档名称:AIX命令参考手册
文档密级
instfix命令来安装到系统中去。
经过测试和确认后,APARs最后将变成PTFs。
4.6 安装可选的软件包或升级
4.6.1 4.6.1 installp命令
软件可以安装成两种状态:applied和committed。Applied状态保存了原来以前版本的软件,它把以前版本存储在/usr/lpp/PackageName目录下。这种方式可以回滚到以前的软件版本。而committed状态删除了存放在/usr/lpp/PackageName目录下的所有以前版本。建议在安装新软件包时使用applied状态而不要使用committed。 1、安装软件在applied状态
#installp –avx –d /usr/inst.images bos.net 2、安装软件在committed状态 #installp –acpX –d /usr/inst.images bos.net
注意:如果你同时从同一个安装介质中运行两个installp命令,将会提示错误,这时你可能要使用installp –C来清除失败的安装
还有,安装结果输出到/var/adm/sw/installp.summary,可以查看该文件来查看安装了哪些软件包。
3、提交(committing)处于applied状态的软件升级包 #installp –cgX all
4、取消applied状态的升级,回到原来的版本 #installp –rBfx ./reject.list 5、删除已安装的软件
#installp –ugp –V2 bos.net.ipsec.rte 6、失败安装过后的清除 #installp –C
7、 列出安装介质上所有可安装的软件包 #installp –L –d /dev/cd0
4.6.2 4.6.2使用smit来维护软件
使用smit菜单来维护软件时,可以在/var/adm/sw/installp.log记录维护日
5/1/2013
未经许可不得扩散
第18页, 共70页
文档名称:AIX命令参考手册
文档密级
志,如同使用installp命令一样,当然使用smit也会在$HOME/smit.log记录使用smit的日志。
4.7 维护可选软件(应用于软件包升级)
被发布用于修复一个问题的软件称为update。
4.7.1 列出软件的维护版本
使用lslpp命令,有以下选项: -f:列出属于某个软件包的所有文件 -w:列出某个文件属于哪个软件包
-h:列出软件包安装和升级的历史信息,可以查看安装或升级时间 -a: 但和其它选项合着使用时,列出指定软件包的所有信息,不能和-f一起使用。
1、列出当前软件包的维护版本 #lslpp –l
2、列出某软件包包含哪些文件 #lslpp –f bos.net 3、列出安装和升级历史 #lslpp –h bos.sysmgt.trace
4.7.2 下载补丁
使用IBM提供的FixDist工具可以到service.software.ibm.com站点下载补丁包(fixes)
BFF格式:Backup File Format,是使用Aix系统命令backup来生成的,可以使用restore来读取,补丁包一般是.bff格式,还包括有.info文件来描述升级包。 .toc 和inutoc命令
4.7.3 instfix显示和升级安装的软件到最新版本
显示一个单一的补丁
使用instfix命令,有以下选项: -a: 显示一个补丁的特征文本说明 -i: 显示补丁或关键字是否已安装
5/1/2013
未经许可不得扩散
第19页, 共70页
文档名称:AIX命令参考手册
文档密级
-k Keyword: 指定一个APAR号或关键字 -T: 显示安装介质的补丁列表 例如:
1、列出补丁列表 #instfix –T –d /dev/cd0
2、查看APAR IX75893是否已经安装 #instfix –aik IX75893
3、查看补丁IX75893的相关信息 #instfix –aik IX75893
4、查看哪些维护版本安装到系统上 #instfix –i |grep ML 5、安装补丁
#instfix –aix IX75893 –d /dev/cd0
也使用smit show_apar_stat来查看补丁的状态,使用smit updata_by_fix来安装APAR,使用smit update_all来升级所有软件包到最新版本。
4.8 在硬盘上创建安装映象
使用smit bffcreate菜单。
使用这种方法可以解决需要安装处于不同安装介质(如不同光盘)的但有相互依赖(co-requisites)的软件包。
4.9 可变的硬盘安装
可以减少停机时间,可是用于测试新的版本。只在4.3或以上版本可用。
4.9.1 需事先安装的软件包
bos.alt_disk_install.boot_images: 用于使用mksysb备份带来安装。 Bos.alt_disk_install.rte用于使用克隆rootvg来安装。
4.9.2 可变的rootvg克隆
把当前的rootvg克隆到该系统中一个新的硬盘中,注意,不支持SSA硬盘。
4.9.3 可变的mksysb安装
5/1/2013
未经许可不得扩散
第20页, 共70页
文档名称:AIX命令参考手册
文档密级
可以使用不同机型或架构的mksysb备份带来安装。
第5章 存储管理、LVM和文件系统
5.1 相关概念
PV、VG、PP、LV、LP的概念和相互关系。
5.2 逻辑卷管理
5.2.1 LVM配置数据
对vg, lv, 和pv的描述数据并不是只放在一个地方,而是存放在很多地方。 1、ODM数据库
ODM数据库存放着包括所有配置PV、VG和LV的信息,它和VGDA中的信息是镜像的。比如,在import一个vg时,VGDA的信息就会拷贝到ODM库中。
ODM数据库同时也存放着与Logical Volume Control Block(逻辑卷控制块)镜像的信息。
2、VGDA(volume group descriptor area)
在一个vg包含的pv的开始部分,存放着所有的属于该vg的lv、pv的描述信息。
每个硬盘至少包含有一个VGDA,每个VGDA都有个时间戳,它鉴定了该VGDA是否时最新的,有时VGDA没有被同步。所以,有时你需要更新这些没有同步的VGDA信息,这也是varyon程序所要做的。 VGDA是在一块硬盘被分配为PV是分配的,而在一个PV加入一个VG时,该VGDA加入了VG的相关信息,当一个PV从VG删除时,相应的VG信息也从VGDA中删除啦。 3、VGSA(volume group status area) VGSA保存这pv和pp的状态信息。 4、LVCB(logical volme control block)
LVCB位于每个lv的开始部分。它包含每个lv的信息,使用了几百个字
5/1/2013
未经许可不得扩散
第21页, 共70页
文档名称:AIX命令参考手册
文档密级
节空间大小。
如:#getlvcb –TA hd2 (其它命令)
5.2.2 Disk quorum
每个PV上VGDA的个数,主要看该VG包含基本PV。
当一个quorum失去后,该vg自动varyoff掉,使用lvm无法在进入该vg,保证了数据不会丢失。
在镜像情况下,可以把quorum关掉,这时可以提高该vg的可用性,但可能会导致数据丢失的风险,所有要及时更换故障硬盘。
5.2.3 硬盘镜像
Aix提供一个lv级别上的镜像工具,但使用mklv来创建一个lv时,可以选择两到三个拷贝。但为了增强该lv的可用性,需要把这些拷贝放在不同的硬盘上。
mirrorvg命令,也可以使用mklvcopy来镜像某个lv,但前提是目标盘必须已经加入到该vg中去。
1、替换一个坏的硬盘,换上一个新硬盘到一个镜像的vg上: #umirrorvg uservg hdisk4 #reducevg uservg hdisk4 #redev –dl hdisk4 换上一块新硬盘,然后 #extendvg uservg hdisk4 #mirrorvg uservg
2、生成一个严格对应的镜像 #mirrorvg –m datavg hdisk2 hdisk3
3、rootvg的镜像(quorum时候自动关闭)
使用mirrorvg做完镜像后,还需要使用bosboot, bootlist等命令。其中bosboot生成一个新的引导映象,而bootlist是把新的硬盘加入引导行列。 注意:不要没有做成功bosboot就重启机器,很可能导致系统启动不了。 4、非rootvg的镜像
但一个非rootvg的vg镜像后,该quorum会自动关闭,但只有varyoff,varyon该vg后才能生效。
5/1/2013
未经许可不得扩散
第22页, 共70页
文档名称:AIX命令参考手册
文档密级
对于dump设备(/dev/hd6,一般也是paging space),系统是不会mirror的。但如果dump设备和paging设备是在不同的lv上,则paging设备会自动mirrored,而dump设备不会mirrored。
5.3 管理pv
6.3.1配置一个pv
6.3.2使一个可用的硬盘变成一个pv。
#chdev –l hdisk2 –a pv=yes,该命令为该disk分配了一个PVID。 6.3.3改变pv的属性 1、设置pv的可分配权限 #chpv –a y(n) hdisk2 2、设置pv的可用性
#chpv –v r pvname 该命令停止了该pv上的所有VGDA和VGSA的拷贝。
#chpv –v a pvname 6.3.4删除pv #rmdev –dl hdisk1
如果不加入-d参数,则不会在ODM库中删除该pv的定义。 6.3.5列出pv的相关信息 1、列出系统中的pv #lvpv 或 #lvdev –Cc disk 2、列出pv的属性 #lspv hdisk1
注意有VG Descriptors的信息,还有VG State的信息(如果有些该VG的pv是inactive则显示active/partial) 3、列出一个pv的分配(allocation)信息 #lspv –l hdisk1
4、列出pv的分区信息(partition allocation by PV region) #lvpv –p hdisk1
5/1/2013
未经许可不得扩散
第23页, 共70页
文档名称:AIX命令参考手册
文档密级
5、列出物理分区表
可以使用以下命令来查看数据存放的连续度,以提供该PV的I/O性能。 #lspv –M hdisk1
6、移植一个pv上的内容
使用migratepv命令,但前提是目标pv必须和源pv在同一个vg上。 注意如果移植rootvg,要单独移植hd5(#migratepv –l hd5 SourceDiskNumber DestinationDiskNumber),并且移植完hd5后,要使用bosboot和bootlist命令。同时还有使用mkboot –c –d /dev/SourceDiskNumber命令来清理引导记录。 #bosboot –ad /dev/DestinationDiskNumber #bootlist –m normal DestinationDiskNumber #mkboot –c –d /dev/ SourceDiskNumber
5.4 管理vg
6.4.1添加一个vg
可以使用smit vg和mkvg命令,mkvg命令还提供以下选项: -d: 该vg所能包含的最大pv数
-m:指定该vg所能包含pv的最大大小,它将决定可以使用多少个pp,默认是1016个。
注意:创建一个vg是,根文件系统空间至少要有2MB的空间大小,将会创建/etc/vg目录。 6.4.2改变vg属性 1、改变vg的激活属性
#chvg –an(-ay) newvg 指定该vg在系统启动时是否自动varyon。 2、解锁一个vg
但一个LVM命令异常中断时,vg可能会被锁住,这时可以使用下列命令, #chvg –u newvg 3、添加一个pv #extendvg newvg hdisk3
当然,如果你想添加一个原来已经属于一个varied状态vg的pv时,将
5/1/2013
未经许可不得扩散
第24页, 共70页
文档名称:AIX命令参考手册
文档密级
会出错。如果该vg没有被varyon,这时,系统会问你是否确定要这么做。 4、删除一个pv
注意,对应的该vg必须处于varyon状态,所属的pv才能被删除(这时才能写VGDA信息) #reducevg myvg hdisk3 reducevg有-d和-f选项:
-d: 在删除该pv前,将会自动删除该pv上的所有lv,这将很危险,因为有的lv可能跨越了不同的pv。 -f: 强制删除lv,不经过确认。 5、删除一个PV的标记(reference)
如果在移走一块硬盘前没有事先做好reducevg myvg hdisk3,这时该vg的VGDA信息将还会保留那块已经移走硬盘的信息。这时通过以下命令可以删除该pv的信息。
#reducevg VolumeGroup 000000536c63937 6.4.3导入和导出一个vg
为了从ODM库中删除一个vg的系统定义,必须使用exportvg命令。而importvg则是从VGDA中读取vg信息并加入到ODM库中。
如果要导入的vg和原来系统中的vg有重名,则可以指定一个新的vg名,或者有系统来指定一个vg名。同样,如果该vg的lv有重名,则系统也会重新分配新的lv名。
注意,从一个系统移植vg到另一个系统中去,一定要事先做好exportvg。 注意:
1、如果没有冲突,importvg也将会对该vg上fs在系统的/etc/filesystems文件中创建mount point。
2、如果一个vg包含有活动的paging space,则不能直接exportvg,必须先把该paging space置于不活动状态。
3、在importvg后,建议对vg的fs进行fsck,在mount这些fs前。 4、使用smit exportvg命令将会删除/etc/filesystems的相应的文件系统说明,但会在系统中保留mount points。 6.4.4varyon和varyoff一个vg
理解varyon vg的过程,读取并判断VGDA的可用性,刷新并同步VGDA
5/1/2013
未经许可不得扩散
第25页, 共70页
的信息。
文档名称:AIX命令参考手册
文档密级
varyonvg有以下选项:
-f: 强制varyon,即使VGDA和ODM库中信息不一样。
-n: 指定在varyon时不自动使用syncvg命令来同步处于stale状态的分区。 -s: varyon成维护模式
5.5 管理vg
1、列出varyon状态的vg #lsvg –o
2、列出vg的属性 #lsvg myvg 3、列出vg中的lv #lsvg –l myvg
4、列出一个vg中pv的状态 #lsvg –p myvg 6.4.6重新组织一个vg
使用reorgvg命令来重新组织一个vg中的pp分区情况,前提是指定的该lv必须是可重新分配的,可以使用chlv –r命令来更改。 注意:对条带化的lv不会重新分配存放位置。
在4.2或更高版本上,如果recorgvg后面没有指定lv名字,则默认只对该vg中的第一个lv重组。 #reorgvg vg02 lv03 lv04
#echo “hdisk06” | reorgvg -i vg02 lv203 lv205 6.4.7同步一个vg
使用syncvg来同步处于stale状态的lv拷贝。比如拔掉一块硬盘重新插上以后。
其实,在varyonvg命令使用时,会自动使用syncvg来同步即将varyon的vg。
1、同步hdisk04和hdisk05上的拷贝 #syncvg –p hdisk04 hdisk05
5/1/2013
未经许可不得扩散
第26页, 共70页
文档名称:AIX命令参考手册
文档密级
2、同步vg04和vg05上的拷贝 #syncvg –v vg04 vg05
5.6 管理lv
5.6.1 添加一个lv
创建一个lv时其默认的最大值是最大可以有128个逻辑分区(logical partitions)
使用mklv命令,可以使用-t来指定类型,但不能创建boot类型的lv。 也可以使用smit mklv菜单,如果没有指定PHYSICAL VOLUME,则默认在系统的第一个PV上创建lv。
5.6.2 删除一个lv
可以使用rmlv或smit relv菜单。 rmlv命令有两个选项,-f和-p。
-p PhysicalVolume: 只删除指定PV上的逻辑分区,除非其它pv上没有lp,否则不会删除该lv。
5.6.3 减小lv的大小
备份数据,删除原来lv,重建新的较小的lv,恢复数据。
5.6.4 增大lv的大小
使用smit chjfs或者extednlv命令
5.6.5 拷贝一个lv
可以把lv拷贝到一个新的lv或原已经存在的lv上,但将会覆盖原来的lv。 使用cplv命令行
1、拷贝一个lv到一个新的lv上 #cplv –v myvg –y newlv oldlv
本命令将会拷贝oldlv的内容到新的,在myvg上的newlv上,如果没有指定vg名,则会在oldlv所在的vg上创建newlv。本命令会自动新建一个lv,无需先用手工创建newlv。
2、拷贝一个lv到一个原已经存在的lv上(lv应该不过关闭) #cplv –e existinglv oldlv
existinglv上的数据将会被覆盖,并且要确认existinglv的大小不能小于
5/1/2013
未经许可不得扩散
第27页, 共70页
oldlv。
文档名称:AIX命令参考手册
文档密级
3、使用smit cplv菜单
如果你碰到错误提示:cplv: Destination logical volume must have type set to copy,这时你要改变lv的可拷贝属性:#chlv –t copy Destination_Logical_Volume_Name。
5.6.6 分开一个lv的多个拷贝
使用splitlvcopy命令可以分开一个lv上的拷贝而把它建成一个新的独立的lv。
注意:虽然splitlvcopy可以对打开的lv进行操作,但为了安全起见,还是健康umount文件系统把lv关闭后在进行操作。 #splitlvcopy –y newlv oldlv 2
5.6.7 列出lv
lslv lvname
5.6.8 lv的大小
要注意有多个拷贝的情况。
Totel LV size=PP size*LPs assigned to LV * Number of copies of the LV
5.7 管理文件系统
JFS把lv分成固定大小的逻辑块(logical block),有Logical Block 0, Superblock(位于第1和第31个逻辑块),Allocation Groups。
5.7.1 文件系统的属性
1、Number of I-nodes 和nbpi(number of bytes per i-node) JFS最大的i-nodes是224 (16MB) 2、Allocation group size
3、File system fragment addressability
Each fragment must be addressable by a number from 0 to 228 4、JFS log
5、最大的文件系统大小
是NBPI*224和Fragment Size*228的较小值,所以,可以把NBPI选大一点,但Fragment Size更加文件的事件大小来考虑。
5/1/2013
未经许可不得扩散
第28页, 共70页
文档名称:AIX命令参考手册
文档密级
5.7.2 创建一个fs
使用smit crjfs菜单或者crfs命令来创建。 #crfs –v jfs –g rootvg –a size=8192 –m /mydata 注意,命令不是cfjfs
5.7.3 一个文件系统
When a file system is mounted over a directory, the permissions of the root directory of the mounted file system takes precedence over the permissions of the mount point.
使用命令行mount,可以使用mount –a或mount all来mount全部文件系统。
也可以使用smit mount。
自动mounting,有两类文件系统,在/etc/filesystem文件中的mount=automatic和mount=true,前者是操作系统的四个文件系统(/,/var,/tmp,/usr),在boot阶段(多用户初始化之前)就已经mount,所有要注意,在系统运行过程中,这四个文件系统是不能被umount下来的。后者是用户定义和控制的,在多用户初始化时,有/etc/rc脚本调用mount all命令来mount这些文件系统。
可以使用chfs –A yes file_system命令来改变文件系统在系统启动时是否自动mount。
5.7.4 删除一个文件系统
先umount,后在删除,也可以使用rmfs命令行,如果要删除mount point,则要加上-r参数。#rmfs –r myfs
5.7.5 加大文件系统的大小
使用chfs命令或smit chjfs菜单
5.7.6 减小文件系统的大小
如果是非操作系统的文件系统,可以使用多种方式(cpio, backup, tar, savevg等)备份数据后,删除文件系统,重建后,恢复数据方式进行。 更重要的是,可以使用mksysb备份带来减小一个文件系统的大小,在使用备份带恢复时,可以选用shrink选项来缩小文件系统的大小,对于操作系统的几个文件系统(如/, /var, /tmp, /usr)来说,只能采用这种方法。
5.7.7 检查文件系统的一致性
5/1/2013
未经许可不得扩散
第29页, 共70页
文档名称:AIX命令参考手册
文档密级
建议在mount文件系统前使用fsck来检查文件系统的一致性,如果使用fsck命令没有指定任何文件系统,则它将会检查/etc/filesystems文件里check=true的所有文件系统。
注意到,/etc/filesystems文件里,操作系统的四个文件系统(/, /var, /tmp, /usr)的check=false),这时由于在启动阶段(boot process)就已经fsck了这四个文件系统,而在多用户启动初始化时,是不需要fsck来检查已经mount的文件系统的。
5.7.8 初始化JFS日志设备
使用logform LogName命令行。
5.7.9 JFS日志设备的存放位置
应尽量把JFS日志设备放置在比较空间的磁盘上,同时也可以使用多个JFS日志设备。
5.7.10 大文件系统支持
使用lsfs –q 可以查看文件系统是否支持大文件系统,注意有bf: true输出项。
5.8 解决文件问题
5.8.1 恢复超级块错误
如果提示:
fsck:Not an AixV4 file system fsck:Not a recognized file system type 使用dd来恢复受破坏的超级块
#dd count=1 bs=4k skip=31 seek=1 if=/dev/lv00 of=/dev/lv00 然后再用fsck来检查文件系统。
5.8.2 无法umount文件系统
fuser,genkex等命令的使用。 #find /home –type d –exec fuser –u {} \\;
5/1/2013
未经许可不得扩散
第30页, 共70页
文档名称:AIX命令参考手册
文档密级
第6章 交换空间(Paging space)
6.1 7.1概述
以4K为单位,也叫swap sapce,在实际内存和辅助存储(如磁盘空间)之间置换(换页)数据。当系统的时间内存比较低时,内存里的最近没有使用的程序或数据被置换到paging space。
在安装时,Aix默认使用hd6作为paging space设备。 Paging space大小的考虑
如果paging space太小了,进程可能会丢失,甚至系统会崩溃。当空余的paging space blocks下降到一个阀值时,系统会通知所有进程。 1、paging spaces放置的位置
放置paging space到不同的pv上可以提高性能,不建议一块硬盘上放置多个paging space。 2、paging spaces的大小
总的大小一般建议为实际内存的两倍大,如果内存大于256MB,则为512MB+(memory size-256MB)*1.25。
如果要建立多个paging space,则必须建得差不多大小,因为paging space采用round-robin循环算法,并且由于启动时只有hd6是激活的,所以要把hd6建得稍大一点。
Lsps –a命令查看每个paging sapce的使用情况,而lsps –s则是查看所有活动的paging space的总和和使用率。 3、paging space所在vg的限制
如果是5.1以前的版本,则不要把paging space放置到可移动的硬盘空间去,尽量只把它放置到rootvg上。因为如果要export含有激活的paging space的vg ,则比较麻烦,还要重启机器。
如果是5L以上版本,则问题不大,但也要swapoff该paging space。
6.2 管理交换空间
有以下命令:chps, lsps, mkps, rmps, swapon, swapoff。注意mkps和mklv –t paging的区别。还有rmps和rmlv。
在系统启动早期阶段,/sbin/rc.boot脚本调用swapon来激活主交换空间
5/1/2013
未经许可不得扩散
第31页, 共70页
文档名称:AIX命令参考手册
文档密级
hd6,在后面的阶段,才激活其它交换分区。活动的交换分区不能被删除,如果是5L以前版本,则要使用chps –a n命令来使得系统重启后不激活(如果是hd6,还要改动/sbin/rc.boot里的swapon命令),重启系统后才能删除该交换空间。
使用swapon –a命令将激活/etc/swapsapces文件里所列的所有交换空间,使用mkps –a命令创建一个新的交换空间时将自动添加该空间名到该文件里,而使用rmps来删除一个交换空间时也会自动删除该文件里的定义。
6.2.1 显示交换空间属性
使用lsps命令,有#lsps –a和#lsps –s用法 #lsps –a –c
6.2.2 添加和激活一个交换空间
不要把交换空间加到经常移动的磁盘空间里,直接移走一个带有活动交换空间的硬盘将导致系统崩溃。 使用smit mkps(可以使用mkps命令吗)
6.2.3 改变交换空间的属性
1、使交换空间不活动
使用smit chps菜单,做完后可用lsps –a命令来查看。 2、动态使交换空间不活动(5.1版具有的功能)
使用swapoff命令,或者使用smit swapoff菜单。注意其它的交换空间这时要有足够的剩余空间。 3、增加交换空间大小 也是使用smit chps菜单。
4、动态减少交换空间大小(5.1才有,不要重启)
5L版引进chps –d命令,可以动态减少交换空间大小,无需重启系统。 #chps –d 2 paging01
6.2.4 删除一个交换空间(非hd6)
基本思路:设置重启时不激活(同时要检查是否是主dump设备)->重启机器->删除该交换空间。
如果是5L版,则无需重启,使用swapoff和rmps两个命令即可(当然也要检查dump设备)
5/1/2013
未经许可不得扩散
第32页, 共70页
文档名称:AIX命令参考手册
文档密级
#swapoff /dev/paging00 #rmps paging00
6.2.5 管理缺省的交换空间(hd6)
因为hd6在系统启动时是由启动脚本/sbin/rc.boot激活的,所有要记得改动该脚本,同时要记得重新生成一个引导映象,也要注意检查改变dump主设备。
1、减小hd6的大小 删除重建的概念。 2、在5L中减小hd6大小
可以动态减少,系统自动生成一个临时的引导映象和临时的/sbin/rc.boot使得系统总是可以安全的被重启。 3、移动hd6到另一个vg上
不建议这么做,因为the name(hd6) is hard-coded in several palces。 只有在rootvg上的交换空间才可以在启动的第二阶段(也就是平常/sbin/rc.boot激活hd6的时候)被激活。
4、在同一个vg上(就是rootvg啦)的不同硬盘上移动hd6 使用migratepv命令
#migratepv –l hd6 hdisk0 hdisk1
第7章 系统备份、恢复和可用性
几个命令及其用法(p214)
7.1 mksysb命令
用户定义的paging sapces和裸设备不会被备份(那么恢复时用户定义的交换空间就没掉啦?)
7.1.1 mksysb磁带的数据展示
三个512字节大小的image:BOS boot image、mkinsttape image、dummy.toc 其中BOS boot image包含一个系统内核的拷贝和引导设备的驱动,它是由bosboot命令来创建的。
5/1/2013
未经许可不得扩散
第33页, 共70页
文档名称:AIX命令参考手册
文档密级
Mkinsttape image里包含三个文件:./tapeblksz、./image.data、./bosints.data。 ./tapeblksz文件指定磁带设备的block大小
./bosinsts.data包含定制的BOS安装过程并指定了BOS的安装程序的表现。你可以在使用mksysb命令前就定制这个文件或者在备份完后再定制这一文件。
./image.data文件包含安装过程中该image的描述信息,如rootvg中逻辑卷和文件系统的大小、名字、对应信息(map)和安装点等。可以在使用mksysb命令前就定制这个文件,或者使用mksysb –i(实际上也是调用mkszfize命令)来创建一个新的./image.data文件。
(实验:备份系统中原有的image.data文件,再用mkszfile命令创建一个新的,比较。
如果没有选择生成新的image.data文件,是不是磁带上就用操作系统上原有的image.data)
该文件格式及相关参数,注意由以下参数:
SHRINK: 如果设置为YES,则恢复时创建尽量小的文件系统。 BOSINST_FILE:提供BOS安装完毕后要运行的文件或命令的全路径名。 EXACT_FIE: 如果设置YES,则恢复时严格按照有mksysb带-m参数(也就是在smit mksysb菜单中的选项:Create map file)创建的map文件中定义的pp位置来放置逻辑卷。
在其后的备份数据是有backup命令生成的,所有可以用restore命令来恢复单个文件或文件夹。
7.1.2 备份中不包括的文件系统
使用/etc/exclude.rootvg文件,同时使用-e参数 #mksysb –e /dev/rmt0
7.1.3 创建一个可引导的系统备份
使用smit mksysb菜单
7.1.4 使用mksysb备份一个用户定义的vg
不支持,可以选用savevg、tar、cpio或backup命令
7.2 备份用户数据(非rootvg)
7.2.1 8.2.1备份一个用户定义的vg
5/1/2013
未经许可不得扩散
第34页, 共70页
文档名称:AIX命令参考手册
文档密级
可以使用savevg来备份一个用户定义的vg上的数据,但该vg必须是varyon的,并且只有mount的文件系统才被备份。 Savevg命令调用mkvgdata命令来 #savevg –if /dev/rmt0 datavg
7.2.2 备份当前目录
1、使用tar命令 #cd /etc
#tar –cvf /dev/rmt0 * 2、使用backup命令
注意使用相对路径或绝对路径 #cd /etc
#find . –depth | backup –i –f /dev/rmt0 3、使用cpio命令 #cd /
#find /etc –print | cpio –o –c –v –B > /dev/rmt0 上述命令采用了绝对路径。
7.2.3 增量备份
可以使用backup命令来进行经常被改动的数据的增量备份。backup命令使用-u参数,指定增量备份级别,更改/etc/dumpdates中最近一次增量备份的时间、日期和级别。(P216)
backup的增量备份级别支持从0到9的级别,每次增量备份的关于日期时间等都会写到/etc/dumpdates文件里。如: /dev/lv01 0 Mon Jun 04 02:00:00 2003 /dev/lv01 1 Wed Dec05 02:00:00 2003
7.3 从备份介质中恢复数据
7.3.1 tctl磁带操作命令
使用tctl命令来操控磁带,如果没有使用-f参数来指定磁带设备,则也可以使用TAPE环境变量。 其子命令包括:
5/1/2013
未经许可不得扩散
第35页, 共70页
文档名称:AIX命令参考手册
文档密级
rewind: 重绕磁带即倒带 rewoofl or offline: 倒带并离线 status:显示指定磁带设备的状态
fst Count: 先前移动指定参数(number of file marks)磁带。 bst Count: 向后移动磁带
7.3.2 如何恢复一个文件
从备份带中恢复一个文件,比如要恢复/etc/hosts单个文件,取决于你使用何种方式备份数据。 1、mksysb
#tclt –f /dev/rmt0 rewind 列出备份带的信息
#restorre –T –d –v –q –s4 –f /dev/rmt0.1 恢复/etc/hosts文件 #tclt –f /dev/rmt0 rewind
#restore –x –d –v –q –s4 –f /dev/rmt0.1 ./etc/hosts
注意/etc/hosts文件名前的“.”号,这是restore命令所必须的。 2、tar
使用tar来备份的数据可以使用以下方式恢复 #tar –xvf /dev/rmt0 /etc/hosts 3、cpio
#cpio –icduvmB < /dev/rmt0 “/etc/hosts” 4、restore
有两种方式,如果备份是使用-i参数来指定文件名的,则使用以下命令行: #restore –x –d –v –q –f /dev/rmt0 /etc/hosts 注意根使用mksysb备份带时恢复时区别。 如果时备份整个文件系统的: #restore –x –v –q –f /dev/rmt0 /etc/hosts
7.3.3 如何恢复一个目录
也是取决了备份时采用什么方式命令。
5/1/2013
未经许可不得扩散
第36页, 共70页
文档名称:AIX命令参考手册
文档密级
1、mksysb
例如要使用系统备份带恢复/var目录 #tctl –f /dev/rmt0 rewind
#restore –x –d –v –s4 –f /dev/rmt0.1 ./var 2、tar
#tar –xvf /dev/rmt0 /var 3、cpio
#cpio –icduvmB < /dev/rmt0 “/var/*” 4、restore 也是两种模式
#restore –x –d –v –q –f /dev/rmt0 /var #restore –x –v –q –f /dev/rmt0 /var
7.3.4 不正确的block size
如果block size设置不正确时,可能会碰到如下错误: This is an input or output error. 可以有两种办法确定磁带的block size 1、使用tcopy命令 #tcopy /dev/rmt0 2、使用dd命令
#dd if=/dev/rmt0 bs=128k count=1 | wc –c
可以通过chdev命令来改变磁带设备的block size。 #chdev –l rmt0 –a block_size=1024
7.4 克隆系统
可以使用mksysb来克隆你的系统到各种其它系统上,可能其它系统有不同的硬件设备或不同的平台架构。
使用目标系统随机带的安装介质(product media)引导系统,进行维护模式,选择“Instal from a System Backup”选项。从备份带安装完毕后,继续按屏幕中提示完成安装过程。
注意:可以使用bootinfo –p或lscfg –vp | grep Arch来查看该系统时候
5/1/2013
未经许可不得扩散
第37页, 共70页
文档名称:AIX命令参考手册
文档密级
支持从磁带引导,有些rspc架构的系统不支持。
但系统备份带安装完毕后,安装程序会继续提示你使用随机带的安装介质(product media)来安装该系统需要的设备驱动或内核。安装信息会保存在/var/adm/ras目录下的devinst.log文件里。
7.5 8.5创建软盘的拷贝
使用dd命令
#dd if=/dev/fd0 of=/tmp/ddcopy 换上新的软盘
#dd if=/tmp/ddcopy of=/dev/fd0
7.6 复制一个磁带
使用tcopy命令
如:#tcopy /dev/rmt0 /dev/rmt1 但如果磁带机规格不一样,可以吗?
7.7 special file notes for rmt
磁带机设备特殊的文件属性(special file characteristics)
根据是否自动倒带(rewind),retension-on-open,还有密度(bytes per inch)分为rmt*, rmt*.1一直到rmt*.7共八种。
Density setting #1和#2是设置磁带设备的数据存储密度,#1是最高密度,#2是最低密度。密度只对写时有效,读取磁带时按写的密度来读。 降低block size可能会浪费磁带空间。
7.8 HACMP (high availability cluster multi-processing)
可以支持多种模式:concurrent access mode, mutual takeove mode, Idle standby mode.
通过添加冗余的磁盘驱动器、适配卡和网络连接来增强系统的可用性。
5/1/2013
未经许可不得扩散
第38页, 共70页
文档名称:AIX命令参考手册
文档密级
第8章 系统资源控制器管理
SRC(system resource controller)提供了一组命令和子例程使得系统管理人员生成和控制子系统(subsystem)更容易。一个子系统是能够独立操作或有一个控制系统的一个或一组程序或进程,而一个子服务是属于一个子系统的程序或进程。注意subsystem和subserver的区别。 控制机制:
1、统一一致的开始、停止、或刷新子系统的用户接口 2、异常中断子系统的日志功能
3、跟踪一个、一组子系统或一个子服务。 4、支持远程系统的控制操作。
8.1 启动SRC
在系统启动过程中,使用/etc/inittab脚本中的/usr/sbin/srcmstr语句来启动。一般情况下在系统正常运行时是无需再启动该服务的。因为有以下原因需要在系统初始化时启动它。
1、使用inittab脚本可以在SRC异常中断时由init自动再去重启它 2、可以减少操作
3、在/etc/inittab中,要使用startsrc命令来启动包括打印等其它守护进程。 查看man srcmstr帮助来确定支持远程src请求所需的配置。
如果在/etc/inittab中没有启动srcmstr的记录行,可以使用mkitab命令来生成一个,然后用telinit(或init) q来刷新它。 #mkitab –i fbcheck srcmstr:2:respawn:/usr/sbin/srcmstr
8.1.1 telinit命令
telinit命令通过指定一个字符参数(一般是一个运行级别号)使init进程(进程号为1)来执行特别的操作。Telinit支持以下参数: 0-9: 运行级别
S,s,M,m: 告诉init进入维护模式
a,b,c: 告诉init检查/etc/inittab中带有a,b,c运行级别的记录行 Q,q: 高手init重新检查/etc/inittab的记录行 N: 发送信息停止正在进行respawned的进程
5/1/2013
未经许可不得扩散
第39页, 共70页
文档名称:AIX命令参考手册
文档密级
8.2 重启SRC
一般情况下不想重启SRC,因为在/etc/inittab中启动SRC的该记录是指定respwan,也就是如果SRC异常中断,它可以自动重启srcmstr服务进程,同时自动重新建立子系统的通讯连接。注意当中断并重启srcmstr进程后,该进程号会更改。
可以编辑/etc/inittab中的该/usr/sbin/scrmstr记录,添加-r(如果是4.3.1以前版本)则添加-B参数,并且使用telinit –q(或init –q)来生效,使得sccmstr拒绝接收远程的请求。
8.3 startsrc命令
startsrc命令通过对SRC发送一个请求来启动一个或一组子系统或传送一个数据包来让子系统来系统一个子服务。 命令参数:
-a argument: 在子系统执行时指定一个参数串 #startsrc –s syslogd –a “-D DEBUG”
-e Environment: 指定一个环境字符串到该子系统的运行环境 #startsrc –s inetd –e “TERM=dumb HOME=tmp” -g Group: #startsrc –g nfs -s Subsystem: #startsrc –s inetd
-h host: 指定要启动动作的该远程机器,本地用户必须是root用户,远程系统也必须配置成能接受SRC的请求。 #starsrc –g nfs –h nfssvr
以下是启动一个子服务的选项: -t Type:指定要启动的子服务名 #starsrc –t tester
-o Object:指定该子服务object要传递给子系统的字符串,子系统由义务决定该object string的有效性 #startsrc –o tester –p 1234
5/1/2013
未经许可不得扩散
第40页, 共70页
正在阅读:
AIX命令参考手册06-11
共青团入团申请书优质例文04-26
生活饮用水水质检测的方法和重要性10-04
以路为题的作文500字07-04
Java模拟试题(第8套)01-02
亿看erp计算BOM格式的灵活运用(ECOUNT)03-18
梦幻诛仙2新手快速练级全攻略05-13
上港小学教师队伍管理制度01-25
层次分析法例题09-01
2022年中山大学哲学考研复试分数线04-21
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 命令
- 参考
- 手册
- AIX
- 西南交大历年考试真题及答案,完整集合版
- 南通大学“筑梦江海”爱心志愿服务团活动报告书 - 图文
- 江苏省无锡江阴市要塞片2017届九年级语文第一次模拟试题
- 幼儿园中班第二学期家长会方案
- 【武大】混合溶液中磷酸二氢钠与磷酸氢二钠浓度的测定
- 换能器项目可行性研究报告
- (挖孔桩防护)接长涵施工方案
- 广东省广州市白云区2017-2018学年八年级第二学期期末区统考数学
- 应收账款大学优秀毕业论文
- 北师大版语文六年级语文上五单元教案
- 教师培训工作计划
- 四年级上册多音字组词
- 2015年考研英语二真题及答案(完整版)
- 介质上电润湿原理及其应用
- 小学 体育教材内容
- 糖尿病的早期症状
- 3月份参加计算机二级考试的同学一定要下载哦
- 四川路桥广邻路黄麻渡大桥维修加固工程施工组织
- 第二课 明朝的对外经济文化交流
- 上海省市崇明区2018届高三4月模拟考试(二模)化学试题Word版含解