概述
最近开始在搞AIX系统,这里顺便总结一下AIX系统涉及的一些命令,主要是作为备忘!
BOOTLIST
#bootlist -m normal -o (查看bootlist)
#bootlist -m normal (设置bootlist为空,谁要在我机器上执行我就要哭了)
#bootlist -m normal hdisk0 cd0 (设置bootlist)
清除系统警告灯 (常用)
1,开机时用diag
Select Task Selection--select Identify and Attention Indicators--When the list of LEDs displays, use the cursor to highlight Set SystemAttention Indicator to Normal--Press Enter-- press F7 to commit
2,未开机,上电OK状态下用串口和超级终端登上service processor
Select the System Information Menu--Select LED Control Menu--Select Clear System Attention Indicator
增加设备
#smit devices
#mkdev -c(设备分类) tape -t(类型) 150mb -s(子类型) scsi -w5,0 -a(缺省属性) ret=no
-p(父适配器) -w(连接位置)
列出设备的属性:
#lsattr -E -l lp0
更改设备属性:
#chdev -l rmt0 -a ret=yes
更改核心设备的属性:
#chdev -l sys0 -a maxuproc=100
删除设备:
#rmdev -l Name(设备的逻辑名,可以用lsdev -C查看,输出的第一项),这个命令会把设备信息保存在用户的数据库中,而把设备的状态变成defined。
#rmdev -d -l Name 彻底删除
#lsdev -P 查看预订义设备对象
#cfgmgr 查找新增加设备,加入odm库
查看交换区信息
lsps -a 显示交换区的分布信息
lsps -s 显示交换区的使用信息
slibclean 清除处理程序遗留的旧分页信息
smit mkps 建立交换区空间信息
swapon -a 启动所有的分页空间
/etc/swapspaces 存放分页空间表格信息
卷组操作
lsvg 显示卷的名称
lsvg -l rootvg 显示rootvg卷的详细信息
mkvg datavg 创建datavg (激活卷组varyonvg [-s]datavg)
rmvg datavg 删除datavg (删除前必须要停止卷组varyoffvg [-s] datavg)
reducevg datavg hdisk10 从datavg里删除物理卷hdisk10
importvg 导入卷组
exportvg 导出卷组
镜像rootvg
1). 添加新硬盘到rootvg
#extendvg rootvg hdisk1
2). 镜像rootvg
#mirrorvg -c 2 rootvg hdisk1
3). 重新生成 boot image
#bosboot -ad /dev/hdisk0
4). 更新bootlist
#bootlist -m normal hdisk0 hdisk1 cd0 (设置启动盘hdisk0,hdisk1)
5). 重起系统(注意AIX系统不能用reboot来重启服务器)
#shutdown -Fr
物理卷[磁盘]操作
lspv (列出所有物理卷)
lspv -l (逻辑卷映射)
lspv -m (物理卷映射)
逻辑卷操作
lsvg -o |lsvg -i -l(查看所有卷组)
lslv lv03 (具体信息)
lslv -l lv00 (物理卷映射)
lslv -m lv00 (逻辑分区映射)
mount卷组的方法
varyonvg datavg 加载datavg卷
mount /dev/data1 加载datavg下的一个data1卷
裸设备类型:raw,jfs jfs可以转变成文件系统,而raw则不行
在裸设备上安装oracle系统
修改裸设备的权限,如裸设备名为system01,安装数据库用户为oracle
chown oracle:dba /dev/system01 chown oracle:dba /dev/rsystem01在使用文件时必须用rsystem01
smit快速路径名称:(smit:图形方式,smitty:字符方式)
dev 设备管理
diag 诊断
jfs 定期档案管理系统
lvm 逻辑卷册系统管理员管理
nfs NFS管理
sinstallp 软件安装及维护
spooler 列印队列管理
system 系统管理
tcpip TCP/IP管理
USER 使用者管理
clstart,clstop:启动和停止cluster
lssrc -g cluser:查看cluser的状态
查看已安装的软件信息
ls -aF /usr/lpp (lpp
icensed Program Products)
查看安装媒体内容:
installp -q -d /dev/cdrom -l
启动时自动加载文件系统信息
需要加载的信息存放在/etc/filesystems
mount -t nf 加载所有在/ect/filesystems中定义type=nfs的文件系统
显示已加载的文件系统及状态: df -v,mount
查看错误日志信息
errpt -a
TOPAS命令详解
Topas命令可以监控系统活动――memory,I/O,paging space,cpu,process。此命令包含在文件集里面。
命令使用方法:
topas [ -d number_of_monitored_hot_disks ] [ -h ] [ -i monitoring_interval_in_seconds ] [ -n number_of_monitored_hot_network_interfaces] [ -p number_of_monitored_hot_processes ] [ -w number_of_monitored_hot_WLMclasses ] [ -c number_of_monitored_hot_CPUs ] [ -P | -W ]参数:
- -d:指定要监控的磁盘数。如果屏幕显示的区域足够大的话,这也是磁盘可显示的最大数。当这个数值超出实际安装的磁盘数,仅仅监控并显示安装磁盘的信息。这个参数缺省值为2,如果这个值设为0,将没有磁盘被监控。
- -h:显示帮助信息。
- -i:设置监控时间的间隔(秒),默认为2秒。
- -n:设置被监控的网络接口数。这也是在屏幕上显示的最大网络接口数,当这个值超出了实际安装的网络接口数,仅仅监控并显示安装的网络接口信息。参数缺省值为2,如果这个值设为0,将没有网络信息被监控。
- -p:指定被监控的进程数。这也是在屏幕上显示的最大进程数。缺省值为20,如果这个值为0,没见进程信息被监控。得到的这些进程信息是topas的主要开销。如果进程信息不需要,通常使用这个参数指定那些不想要的进程信息。
- -w:指明被监控的WLM类的值。这也是在屏幕上显示的最大WLM值,当这个值超出了实际安装的WLM数,仅仅显示那些安装的WLM类的信息,缺省值为2,如果这个值为0,将没有信息显示。
- -c:指明被监控的CPU数。这也是在屏幕上显示的最大CPU值,当这个值超出了实际安装的CPU数,仅仅显示那些安装的CPU的信息,缺省值为2,如果这个值为0,将没有信息显示。
- -P:显示整个全屏进程显示。显示一系列最繁忙的进程,类似于默认显示的一部分,每个进程仅仅显示几列,可以通过任何列排序。
- -W:显示全屏WLM(负载管理器)类。顶部显示一系列WLM类,类似于WLM类的一部分显示。
一些子命令:
- a 这个键显示所有被监控的(CPU,network,disk,WLM,process)不同部分。
- c 这个键在累积报告和最忙的CPU之间进行切换。
- d 这个键在最忙的磁盘和系统总的磁盘活动之间进行切换。
- h 显示帮助信息。
- n 这个键在最忙的接口和系统总的网络活动之间进行切换。
- w 这个键在WLM类的开关之间切换。
- p 这个键进程的开关之间切换。
- P 这个键用全屏进程显示替换默认的显示。
- W 这个键用全屏WLM类显示替换默认显示。
- f 移动光标到一个WLM类上,这个键可以在WLM屏幕底端显示一系列进程情况。
- q 退出程序。
- r 更新显示。
以下是各个部分表示的含义:
Cswitch:在监控期间每秒钟内容转换的次数; Syscall:在监控期间每秒钟运行系统呼叫的总次数; Reads:在监控期间每秒钟运行读系统呼叫的次数; Writes:在监控期间每秒钟运行写系统呼叫的次数; Forks:在监控期间每秒钟运行派生系统呼叫的次数; Execs:在监控期间每秒钟运行执行系统呼叫的次数; Runqueue:等待处理器空闲以便运行的线程平均数; Waitqueue:等待分页完成的线程平均数; Readch:在监控期间通过读系统呼叫每秒钟读出的字节数; Writech:在监控期间通过写系统呼叫每秒钟写入的字节数; Rawin:在监控期间通过TTYs每秒钟读入的裸字节数; Ttyout:在监控期间每秒钟写入TTYs的字节数; Igets:在监控期间每秒钟到节点查找例行程序的呼叫数; Namei:在监控期间每秒钟路径查找例行程序的呼叫数; Dirblk:在监控期间通过目录搜索例行程序每秒钟扫描到的目录块数; PAGING部分显示的是分页每秒钟次数的统计: Faults:在监控期间每秒钟发生的分页错误总数; Steals:在监控期间被虚拟内存管理器每秒钟偷走的物理内存4k的帧; PgspIn:在监控期间每秒钟从分页空间中读取的4k分页数; PgspOut:在监控期间每秒钟写入分页空间的4k分页数; PageIn:在监控期间每秒钟读取的4k分页数,这包括从文件系统读操作相关的分页活动,从这个值减去PgspIn的值就是每秒钟从文件系统读操作相关的分页活动数; PageOut:在监控期间每秒钟写入的4k分页数,这包括向文件系统写操作相关的分页活动,从这个值减去PgspOut的值就是每秒钟向文件系统写操作相关的分页活动数; Sios:在监控期间通过虚拟内存管理器得到的I/O请求数; Momory部分显示的是实际内存和在使用中的内存: Real,MB:以M为单位的实际内存; %Comp:当前分配给计算分页片断的内存占实际内存的百分比。计算分页片断由分页空间产生。 %Nocomp:当前分配非计算分页片断的内存占实际内存的百分比。非计算分页片断包括那些文件空间,数据文件、可执行文件、或者共享库文件。 %Client:当前分配给用来缓冲远程挂载文件的内存占实际内存的百分比。 PAING SPACE显示分页空间的大小和使用率: Size,MB:系统里所有分页空间的大小,以M为单位; %Used:当前使用的分页空间占总空间的百分比; %Free:当前空闲的分页空间占总空间的百分比。 CPU工具: User%:显示运行的用户程序所占用的CPU百分比; Kern%:显示运行的内核程序所占用的CPU百分比; Wait%:显示等待IO操作所占用的CPU百分比; Idel%:显示CPU空闲的百分比。 网络接口: Interf:网络接口的名称; KBPS:在监控期间每秒钟通过的以M为单位的总流量,这部分包括每秒钟接收和发送的总和。 I-Pack:在监控期间每秒钟接收到的数据包数; O-Pack:在监控期间每秒钟发送的数据包数; KB-In:在监控期间每秒钟接收到的字节数(以K为单位); KB-Out:在监控期间每秒钟发送的字节数(以K为单位)。 物理磁盘: Disk:物理磁盘的名称; Busy%:指明物理磁盘在活动状态的时间百分比; KBPS:在监控期间每秒钟读写的字节数(以K为单位); TPS:每秒钟物理磁盘的数据传输量。一次传输指的是一次I/O请求; KB-Read:每秒钟从物理磁盘读出的K字节数; KB-Write:每秒钟向物理磁盘写入的K字节数。 WLM(负载管理)类: %CPU Utilization:CPU的平均利用率; %Mem Utilization:内存的平均利用率; %Blk I/O:块I/O的平均利用率; 进程: NAME:可执行程序的名称; Process ID:进程的ID号; %CPU Utilization:进程的CPU平均使用率,这个值指的是进程在生命周期中的平均使用率; Paging Space Used:分配给进程的分页空间大小; Process Owner:拥有这个进程的用户名; Workload Management(WLM)Class:进程属于哪个WLM class。内核
如何知道自己在运行 32 位内核还是 64 位内核?
要显示内核启用的是 32 位还是 64 位,可输入以下命令:
bootinfo -K
如何知道自己在运行单处理器还是多处理器内核?
/unix 是指向已启动内核的符号链接。要了解正在运行什么内核模式,可输入 ls -l /unix 并查看 /unix 链接到什么文件。下面是 ls -l /unix 命令的三种可能输出及其对应的内核:
/unix -> /usr/lib/boot/unix_up # 32 bit uniprocessor kernel
/unix -> /usr/lib/boot/unix_mp # 32 bit multiprocessor kernel
/unix -> /usr/lib/boot/unix_64 # 64 bit multiprocessor kernel
如何从一种内核模式更改为另一种内核模式?
在安装过程期间,会缺省启用一种适合该 AIX 版本和操作中的硬件的内核。让我们使用前一个问题中的方法并假设启用了 32 位内核。我们还假设您希望在 64 位内核模式下启动。这可以通过按顺序执行以下命令来实现:
ln -sf /usr/lib/boot/unix_64 /unix
ln -sf /usr/lib/boot/unix_64 /usr/lib/boot/unix
bosboot -ad /dev/hdiskxx
shutdown -r
/dev/hdiskxx 目录是启动逻辑卷 /dev/hd5 所在的位置。要弄清 hdiskxx 中有哪些 xx,可运行以下命令:
lslv -m hd5
硬件
如何知道我的计算机是否能够运行 AIX 5L Version 5.3?
AIX 5L Version 5.3 可在当前受支持的所有基于共用硬件参考平台(Common Hardware Reference Platform,CHRP)的 POWER 硬件上运行。
如何知道我的计算机是否基于 CHRP?
运行 prtconf 命令。如果是 CHRP 计算机,则字符串 chrp 会出现在 Model Architecture 行上。
如何知道我的 System p 计算机(硬件)是 32 位还是 64 位?
要显示硬件 32 位还是 64 位,可输入以下命令:
bootinfo -y
我的计算机有多少实际内存?
要显示以 KB 为单位的实际内存,可输入以下命令之一:
bootinfo -r
lsattr -El sys0 -a realmem
我的计算机是否可以运行 64 位内核?
需要 64 位硬件才能运行 64 位内核。
我系统中的设备属性值是什么?
要列出磁带设备 rmt0 的当前属性值,可输入以下命令:
lsattr -l rmt0 -E
要列出磁带设备 rmt0 的缺省属性值,可输入以下命令:
lsattr -l rmt0 -D
要列出 TTY 设备 tty0 的可能登录属性值,可输入以下命令:
lsattr -l tty0 -a login -R
要显示系统级别的属性,可输入以下命令:
lsattr -E -l sys0
我的系统有多少个处理器?
要显示您系统上的处理器数量,可输入以下命令:
lscfg | grep proc
我的系统上有多少个硬盘,当前正在使用哪些硬盘?
要显示系统上的硬盘数量,可输入以下命令:
lspv
如何列出有关特定物理卷的信息?
举例来说,若要了解有关 hdisk1 的详细信息,可运行如下命令:
lspv hdisk1
如何获得系统的详细配置?
输入以下命令:
lscfg
下列选项可以提供特定的信息:
-p:显示特定于平台的设备信息。该标志适用于 AIX 4.2.1 或更高版本。
-v:显示在自定义 VPD 对象类中找到的重要产品数据库(Vital Product Database,VPD)。例如,要显示有关磁带驱动器 rmt0 的详细信息,可输入以下命令:
lscfg -vl rmt0
通过运行 prtconf 命令也可以获得非常类似的信息。
如何确定芯片类型、系统名称、节点名称、型号,等等?
uname 命令可以提供关于系统的详细信息。
uname -p
显示系统的芯片类型。例如,PowerPC。
uname -r
显示操作系统的版本号。
uname -s
显示系统名称。例如,AIX。
uname -n
显示节点名称。
uname -a
显示系统名称、节点名称、版本、计算机 ID。
uname -M
显示系统型号名称。例如,IBM, 9114-275。
uname -v
显示操作系统版本。
uname -m
显示运行系统的硬件的计算机 ID 编号。
uname -u
显示系统 ID 编号。
AIX
我的系统上在运行什么 AIX 主要版本、次要版本和维护级?
输入以下命令之一:
oslevel -r
lslpp -h bos.rte
如何确定某个特定的 AIX 级别缺少哪些文件集更新?
举例来说,若要确定 5300-04 缺少哪些文件集更新,可运行以下命令:
oslevel -rl 5300-04
我的系统上安装了什么 SP (Service Pack)?
要了解系统上当前安装了哪个 SP,可运行 oslevel -s 命令。对于安装了 TL4 和 SP2 的 AIX 5L Version 5.3 系统,示例输出如下:
oslevel –s
5300-04-02
如何创建文件系统?
以下命令将在卷组 testvg 中创建一个大小为 10MB、安装点为 /fs1 的 jfs 文件系统:
crfs -v jfs -g testvg -a size=10M -m /fs1
以下命令将在卷组 testvg 中创建一个大小为 10MB、安装点为 /fs2 并具有只读权限的 jfs2 文件系统:
crfs -v jfs2 -g testvg -a size=10M -p ro -m /fs2
如何更改文件系统的大小?
若要将 /usr 文件系统的大小增加 1000000 个 512 字节的块,可输入以下命令:
chfs -a size=+1000000 /usr
注意:在 AIX 5.3 中,JFS2 文件系统的大小还可以收缩。
如何安装所有缺省文件系统(/etc/filesystems 文件中标记有 mount=true 属性的所有标准文件系统)?
以下命令将安装所有此类文件系统:
mount {-a|all}
如何卸载文件系统?
输入以下命令可以卸载 /test 文件系统:
umount /test
如何显示已安装的文件系统?
输入以下命令可以显示有关所有当前已安装的文件系统的信息:
mount
如何删除文件系统?
输入以下命令可以删除 /test 文件系统:
rmfs /test
如何对文件系统进行碎片整理?
可以使用 defragfs 命令来改善或报告文件系统中的连续空间状态。例如,若要对文件系统 /home 进行碎片整理,可以使用以下命令:
defragfs /home
如何显示有关系统上已安装文件集的信息?
输入以下命令:
lslpp -l
卷组和逻辑卷
如何知道我的卷组是常规、大容量还是可扩展的?
对该卷组运行 lsvg 命令并查看 MAX PVs 的值。该值为 32 表示常规、128 表示大容量、1024 表示可扩展的卷组。
如何创建卷组?
可以使用以下命令,其中 s partition_size 设置每个物理分区中的兆字节 (MB) 数,并且 partition_size 是以 MB 为单位、从 1 到 1024 的值(对于 AIX 5.3 是从 1 到 131072)。partition_size 变量必须等于 2 的幂(例如:1、2、4、8)。标准和大容量卷组的缺省值是保持在“每个物理卷最多只能有 1016 个物理分区”限制内的最低值。可扩展卷组的缺省值为每个物理卷容纳 2040 个物理分区的最低值。
mkvg -y name_of_volume_group -s partition_size list_of_hard_disks
如何更改卷组的特征?
可以使用以下命令来更改卷组的特征:
chvg
如何创建逻辑卷?
输入以下命令:
mklv -y name_of_logical_volume name_of_volume_group number_of_partition
如何增加逻辑卷的大小?
举例来说,若要将 lv05 目录所表示的逻辑卷增加三个逻辑分区,可输入以下命令:
extendlv lv05 3
如何显示属于某个卷组(例如,rootvg)的所有逻辑卷?
可以通过输入以下命令来显示属于 rootvg 的所有逻辑卷:
lsvg -l rootvg
如何列出有关逻辑卷的信息?
可运行以下命令来显示有关逻辑卷 lv1 的信息:
lslv lv1
如何删除逻辑卷?
可以运行以下命令来删除逻辑卷 lv7:
rmlv lv7
rmlv 命令仅删除逻辑卷,但不删除其他实体,例如使用该逻辑卷的文件系统或分页空间。
如何镜像逻辑卷?
mklvcopy LogicalVolumeName Numberofcopies
syncvg VolumeGroupName
如何删除逻辑卷的副本?
可以使用 rmlvcopy 命令来删除逻辑卷的逻辑分区副本。若要减少属于逻辑卷 testlv 的每个逻辑分区的副本数量,可输入以下命令:
rmlvcopy testlv 2
现在该逻辑卷中每个逻辑分区最多只有两个物理分区。
有关卷组的问题
要显示系统中的卷组,可输入以下命令:
lsvg
要显示 rootvg 的所有特征,可输入以下命令:
lsvg rootvg
要显示 rootvg 所使用的磁盘,可输入以下命令:
lsvg -p rootvg
如何将磁盘添加到卷组?
输入以下命令:
extendvg VolumeGroupName hdisk0 hdisk1 ... hdiskn
如何确定我的硬盘所支持的最大逻辑磁道组 (LTG) 大小?
可以带 -M 标志使用 lquerypv 命令。此命令的输出给出以 KB 为单位的 LTG 大小。例如,在下面的示例中,hdisk0 的 LTG 大小为 256 KB。
/usr/sbin/lquerypv -M hdisk0
256
还可以在硬盘上运行 lspv 并查看 MAX REQUEST 的值。
网络
如何显示或设置网络参数值?
no 命令设置或显示网络优化参数的当前或下一次启动时的值。
如何获得我计算机的 IP 地址?
输入以下命令之一:
ifconfig -a
host Fully_Qualified_Host_Name
例如,输入主机 cyclop.au。
如何确定服务器上的网络接口?
以下两个命令中的任何一个都将显示网络接口:
lsdev -Cc if
ifconfig -a
若要获得有关某个特定网络接口(例如,tr0)的信息,可以运行以下命令:
ifconfig tr0
如何激活网络接口?
若要激活网络接口 tr0,可以运行以下命令:
ifconfig tr0 up
如何禁用网络接口?
举例来说,若要禁用网络接口 tr0,可以运行以下命令:
ifconfig tr0 down
后面会分享更多devops和DBA方面的内容,感兴趣的朋友可以关注一下~