aix的系统备份命令是mksysb, make system backup ,有点类似 ghost.
aix5.3支持微分区技术,所谓微分区就是1台机器上装多个OS(操作系统),把这台机器上的cpu资源进行划分,然后分配给每一个os使用,最小粒度是0.1个cpu.有点类似vmware软件.让一个机器跑多个操作系统.这项技术早在ibm的大机上就已经实现了.只不过最近才在小机和pc机器上发布.
TIVOLI是系统管理软件.
关闭aix的命令:shutdown ->正常关机,关闭所有服务. halt -> 相当于直接关闭电源.
重启aix:shutdown -Fr
查看出错信息:errpt errpt -a | more -> 分页显示 errpt -a > /tmp/err01 输出到文件.
清除错误信息:errclear 0
smit 用鼠标操作 smitty 用键盘来操作,一般用smitty为好.
ping -f 全速ping ,利用所有的服务器资源来ping,如果是多个服务器ping一个ip,可以把机器ping死.
几个关于磁盘的名词:
lv: logical volume 逻辑卷
pv: physical volume 物理卷
vg: volume group 卷组
pp: physical partition 物理分区
lp: logical partition 逻辑分区
pv对应的是物理硬盘或者是磁盘阵列上划分的lun,一个vg最多可以有1016个pp.
pv的上面是vg,一个vg可以包含多个pv.
vg的上面是lv,lv如果不作任何处理就是裸设备,也可以作成文件系统.
lv被分为多个lp,默认情况下,lp与pp是一一对应的,也可以做成一对多的.这样就相当于用多个pp来作raid0备份.
lsdev -C | grep disk 可以查看物理磁盘的硬件信息
lspv 查看pv的信息 -p hdisk0 查看具体数据存放的位置:例如,数据在第m到n个pp上面.
lsvg 查看vg的信息 -l vg的列表 -c 被使用的vg -l rootvg 查看rootvg的详情.
lslv -m lv1 查看lv1 的lp与pp的映射.
getlvcv -AT lv1 看到lv1的控制信息.
fsck -y /dev/newlv 检查lv.
smit vg 可以管理vg
smit lv 管理lv
varryonvg rootvg 激活rootvg卷组,varryoffvg newvg 使newvg卷组脱机.
nbpi:number of bytes per inode 每个i节点拥有的字节数,这个参数越小,文件系统的可用的inode越多.如果inode用完,即使有剩余空间,系统也会报空间不够.此时要调小nbpi的值.一般是4k
df -k 中iused 指的是i节点的使用情况.
设置从cd启动,bootlist -m normal cd0
启动时按ESC+1或者F1,可以进入启动菜单.选择启动方式.
用smitty crfs 创建完文件系统以后还要mount.
/etc/filesystems 文件记录文件系统的信息.如想把某个lv映射到不同的文件系统路径上面,可以直接修改这个文件.
用logform /dev/testloglv 将lv格式化成jfs的log的格式.
file 文件名 可以看某个文件的信息,包括文件类型,可执行文件,文本文件,等等.
uname -a 可以看到os的信息.
fsck 检查文件系统的信息,在umount的时候是准确的, 相当于windows的磁盘扫描.
碎片整理 smitty jfs
lsfs /root 显示文件系统的属性
各个组件的关系:
lsps -a 查看page space的使用情况
vgda:vg description area 每个vg的头部存放vg的描述信息,
如果包含2个pv,那么第一个pv会在头部和另一个位置存放2个vgda,第2个pv也会存放一个.
如果包含3个pv,那么每个pv上都有1个vgda.
vg的信息在odm中也会存储,但必须和vgda中的信息一致,否则无法varryonvg,有下面4个命令来管理odm中的vg信息.
importvg:从vgda中读取信息到odm中
exportvg:从odm中删除vg信息
varryonvg:激活(online)vg
varryoffvg:卸载(offline)vg
修改vg的factor,这样可以将vg的max pp 从默认的1016 增大1倍,到2032,但由于vgda的总大小不变,这些信息都是记录到里面的.所以vg的最大文件数要减小1倍,实际上是个等式:max pp * max file = 固定的一个值,factor增大,实际上是max pp * factor,max file / factor.具体做法:chvg -t 2 rootvg 修改factor为2.vgda
用cfgmgr,来刷新,来认出新assign的hdisk.
cfgmgr -v 检查新设备,新硬件.
-i /dev/cd0 从光盘自动安装新硬件驱动.
当作双机时,2个服务器server1 和 server2 来连接同一个盘阵,server1对磁盘分配一个pvid,当第一次切换到server2时,要用ckdev命令来读出server1配置的pvid.系统是通过pvid来识别pv的.
ckdev -l hdisk1 -a pv = clear 清除pvid
ckdev -l hdisk1 -a pv = yes 新置pvid
lsdev 查看物理设备
lsdev -C 显示所有设备状态
rmdev -l cd0 逻辑删除 cd0
mkdev -l cd0 安装cd0
rmdev -d -l cd0 删除cd0设备驱动
查看cpu的信息
lsattr -El proc0
lsdev -C | grep proc
查看内存的信息
lsattr -El mem0
查看光驱的信息
lsattr -El cd0
查看硬盘的信息
lsattr -El hdisk0
lscfg -vp | more 分页看全部硬件信息
prtconf | more 列出硬件信息
查看谁在使用cdrom fuser /cdrom -k 直接杀掉用户进程
telnet的登陆信息存放在/etc/motd文件中.
想查看最近有谁登陆,用last命令.
查看登录失败的信息: /etc/security/failedlogin
存放用户密码的文件:/etc/security/passwd
用户登录需要运行的脚本:
1 /etc/profile
2 /etc/environment 在这个文件中设置中文环境,LANG=zh_CN
3 用户profile ,分2种情况:
如果是命令行登录,则运行/home/user/.profile
如果是图形登录,则运行 /home/user/.dtprofile 需要将次文件中,#DTSOURCEPROFILE=TRUE 的# 去掉,否则还是使用.profile.
在/dev下面有2种设备,一种是block设备,一种是char(字符)设备.这取决于不同的应用.
vmstat的某些行的解释:
vmstat->faults->cs: user calls 用户调用的次数
cpu->wa: >40 说明io繁忙
kthr: kernel thread
kthr->r 在运行队列中等待执行的进程
b 正在等待io的进程
memory->avm:active vitual memory 物理内存+使用的虚拟内存,以4k为单位.
page->re:是pin 和 pout 的总和.
sr:search的内存块数.
fr:释放的内存块数.
每次作page out时,系统要搜索物理内存以找到可以释放的块,sr和fr分别代表搜索的和通过搜索找到的可以释放的块 数.如果2者很接近,说明内存中有很多用于file cache,内存的数量是够用的.如果fr/sr的值很小,说明内存不够.
tty:代表终端
iostat:
%tm_act 实际transaction的百分比
tps 每秒发生的次数
kbps 每秒的速率
名词:thrasing: 应用程序频繁交换,导致paging过多.
/usr/samples/kernel/vmtune -f 120 -F 128
-f 120 代表minfree mem < 120 时要进行page out
-F 128 代表maxfree mem > 128 时要进行page in
-p -P 也跟page out 有关,具体不清楚,还需明确.
sar->avque:平均的请求数
对文件系统作监视:filemon
filemon -o /tmp/a.txt -O all -v
运行之后系统会一直监视文件系统的使用情况并记录日志,-T 64000 是使用的buffer cache,在大型系统上,这个值可以调大.
运行一段时间后,要停掉filemon,使用trcstop 或者 kill -9 进程.
从a.txt中可以看到使用最频繁的文件等信息,有些类似statspack的报告.
对于后缀是Z的文件用uncompress来解压缩. uncompress a.tar.Z
用strings 命令来看2进制文件
如何调大page space,直接设置对应lv的大小.如果对应lv的vg空间不够的话,可以向vg中加硬盘.
dd的用法:dd if=/dev/rnewfs of=/dev/rcopyfs bs=1024 count=10240
bs: block size 块大小,1024字节
count: block count 块的数量
if是input file ,of 是output file
将任务切换到后台执行: ctrl+z ,然后 bg+回车
查看后台执行的程序:jobs
把后台执行的程序切换到前台执行:fg %n n是后台的job 编号
ip抓包工具:iptrace 和 tcpdump
iptrace -a a.out
停止iptrace:kill -9
tcpdump -i en1 -w a.out a.out 是输出文件
把进程与cpu绑定:bindprocessor -U 进程号 cpuid
bindprocessor -U 12345 0
odm库:
env | grep obj
ODMDIR=/etc/objrepos 这是odm库的存储路径
在disk0上生成引导区
bosboot -a -d /dev/hdisk0
用kdb 查看os 的 dump
ethernet channel 把2个网卡绑定到1个ip,可以作网络负载均衡.
crontab 设置定时任务
crontab -l list the crontab
crontab -e edit the crontab
crontab的格式:分钟 小时 月中的天数 月份 星期 命令
minute:
0 到 59
hour:
0 到 23
day_of_month:
1 到 31
month:
1 到 12
weekday:
星期日到星期六的 0 到 6 时
要在每星期日上午 2 时运行 fwlogmgmt 命令,请将下列各行添加至 crontab 文件底部:
0 2 * * 0 /usr/bin/fwlogmgmt -1
发送邮件,aix和redhad linux 都默认安装了smtp邮件服务,可以直接给internet发邮件.
mail -s "test mail"
haochunpeng@ninetowns.com
< $ORACLE_BASE/admin/$ORACLE_SID/bdump/alert$ORACLE_SID.log
mail -s "test mail"
haochunpeng@ninetowns.com
<<EOF
******** MAIL CONTENT *******
FJLADSFJLAKHFGAL
FJALDSKFJA
FASLJFLASF
*****************************
EOF
有了crontab和mail,就可以定时监控数据库,然后把报告发送邮件到管理员的信箱.
kill -9 9 是kill命令传送的一个信号,一共15个信号可以发送.
/etc/ftpusers 限制登录ftp的用户,谁在这个文件里面,谁就登不进去.
网络服务 /etc/inetd.conf 刷新 refresh src -d
lslpp -l | grep http 查看安装的软件
检查瓶颈:
利用vmstat iostat 查看总体情况,ps aux 可以看到具体进程占用资源的情况.
如果是io瓶颈,可以利用filemon -o /tmp/a.txt -O all; sleep 10;trcstop 来查看io资源的使用情况.
辨别僵尸进程:ps -ef pid 那列是 defunc的为僵尸进程.
几个不错的aix网站:
http://www.douzhe.com
http://www.xfocus.net/articles/200208/433.html