免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3700 | 回复: 6
打印 上一主题 下一主题

[系统管理] AIX日常维护 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-11-09 09:21 |显示全部楼层 |倒序浏览
AIX日常维护
(转贴)感谢原资料的作者

1. 文件系统是否满
方法: df –k 可以以K为单位检查文件系统的使用率。(90%以上,需要调整)
2. 检查系统出错日志 使用errpt |more来检查
清除现有的log: Errclear 0
3. 检查系统合法/非法登陆情况
使用Last命令来检查来自登陆的地方。
4. 检查系统是否有巨大的Core文件生成
使用 find / -name core –print来检查。对Core文件,一般直接删除就可以了。
5. 系统性能检查:
a) CPU性能:使用Vmstat, topas来检查
b) 内存使用情况:也是使用topas, vmstat来检查
c) 检查IO平衡使用情况:使用iostat来检查
d) 交换空间使用情况:使用lsps –a来检查
6. Mail检查
7. Diag 一个月一次

补充两点:
1。硬件检查,检查各指示灯状态和各物理设备的可用情况。
2。进程检查,检查是或有死进程。
用who -d 查出一些死进程!

论坛徽章:
0
2 [报告]
发表于 2006-11-09 09:21 |显示全部楼层
AIX日常指令和常用操作

一:开机登录
在开机之前,先检查电源是否插好;然后,按下前面板上白色电源开关后,主机会进入硬件自检和引导阶段;此时,前面板上的液晶会有代码跳动,每一个代码表示自检或引导的不同阶段,最后在引导结束时,前面板液晶上的代码消失,彩显或终端上有显示,进入系统初始化和登录提示。如果主机停在某一代码上,引导不下去(大于半小时),说明系统可能有故障,请与IPACS 联系,并把代码一起报给我们。
二:关机
1)关闭应用程序
2)HACMP软件,先用smit clstop关闭HACMP。
3)命令行打“shutdown -F”进关机,显示器上出现“Halt Completed”可按下前面板
上白色电源开关,关电源。
如果需要关机后重新引导,打“shutdown -Fr”命令。
三:基本定义
1)        Physical Volume(PV)
Physical Volume就是指硬盘,在AIX中用hdiskx表示。
7133磁盘阵列中的某个硬盘用pdiskx表示,pdiskx对应的AIX操作系统中Physical Volume用hdiskx表示。
用lspv命令来看一下PV与VG对应关系
用lsdev -Cc disk命令看一下硬盘状态,Available 表示硬盘可用,Defined 表示物理硬盘
找不到,只有逻辑定义。

2)Volume Group(VG)
Volume Group 是由多个Physical Volume组成的集合。
Physical Partition是VG分配空间的最小单位。
AIX操作系统所在的卷组就是rootvg
可用lsvg 查看VG信息,
用lsvg -o 查看打开的卷组。

3)Logical Volume(LV)和FileSystem(FS)
Logical Volume和Filesystem是在卷组上划分的空间,不能跨多个卷组而且只能扩大不
能缩小。
Filesystem是在LV上建的,使用时,需mount在AIX某一目录上。
可用lsvg -l VG_Name来看VG 上所有的LV和FS
用 df 命令来看Filesystem 使用情况
用mount命令来看已mount的Filesystem

四: 日常系统管理
AIX通过smit 工具 (smitty是字符界面)来进行系统管理。
1)增加修改删除用户
smit user
2)增加修改删除卷组
smit vg
3)增加修改删除逻辑卷
smit lv
4)增加修改删除文件系统
smit fs
5)网络设置和查询
smit tcpip
Minimal Configuration
填入IP地址,子网掩码,网关等参数;
Start Now改为Yes
netstat -i / netstat -in 查看网卡interface状态和参数
6)日常维护
平时需用 df 和 errpt 检查一下文件系统使用率和有无新的错误日志。
如果文件系统使用率大于90%,需扩大该文件系统。
命令行打errpt后,可以显示类似下列错误日志;

ERROR_IDENTIFIER TIMESTAMP T CL RESOURCE_NAME ERROR_DESCRIPTION
192AC071  0101000070  I 0 errdemon Error logging turned off
0E017ED1 0405131090  P H  mem2  Memory failure
9DBCFDEE   0101000070   I 0   errdemon  Error logging turned on
038F2580   0405131090   U H   scdisk0  UNDETERMINED ERROR
AA8AB241  0405130990  I O   OPERATOR  OPERATOR NOTIFICATION

其中,TIMESTAMP代表日期,以MMDDhhmmYY格式;如0405131090表示1990年
4月5日13时10分
T(Type)一栏中,P表示永久性错误,T 表示零时性错误,U 表示不能决定是什么错误
,I 表示信息而非错误。
CL(CLass)一栏中,H表示硬件错误,S 表示硬件错误,O 表示通知操作员。
如果 T(Type)一栏中是P且 CL(CLass)一栏中是H,表示较严重错误,需跟IBM联系。

五:系统备份(仅rootvg备份)
备份是用户的责任,可用下列步骤备份rootvg,其它数据需另外备份。系统备份要定
时做,一般1--2月做一次,凡rootvg数据有变化(如系统参数修改)要马上备份。最好用几合带子轮流备份。备份带上要标明备份时间和内容。

1)用root用户登录
2)mount rootvg下需备份的文件系统
3)smit mksysb
选择备份介质
  Expand /tmp filesystem if needed 改为 Yes
六:诊断
diag
->System Verification
选择需诊断的硬件设备

七:常用命令
set -o vi 类似PC DOS 中doskey命令,先按ESC键再按几下k键,可重现以前打过的
命令。
export TERM=vt100/ibm3153/lft 设置终端类型
lsdev -C和lscfg -v 显示硬件配置
1、df -k文件系统空间使用情况
2、lsvg 列出系统中所有vg的名字
lsvg -o 列出激活vg名字
lsvg vgname列出指定vg的详细信息
lsvg -l vgname列出指定vg上的lv情况
3、lsdev -P -H列出AIX支持的设备(即预定义odm数据库中的设备对象)
lsdev -C 列出AIX支持的设备已定义的odm数据库中的设备对象
lsdev -Cc xxx列出定制odm数据库中某个设备对象的信息
例如:
lsdev -Cc disk
lsdev -Cc tape
lscfg列出系统上已安装的资源的配置信息
lscfg -vl列出某个设备的VPD信息
例如:
lscfg -vl ent1
lscfg -vl hdisk1
lscfg -l xxx\*列出设备的不带VPD的相关信息
lscfg -l proc\*
lscfg -l hdisk\*
4、修改文件及目录的属性
4.1 chmod
例如:
chmod 765 xxx 修改文件xxx属性为765
chmod -R 765 XXX 修改目录xxx及其下子目录及文件属性为765
4.2 chown
例如:chown user:usergroup xxx修改文件xxx的属主为user:usergroup
chmod -R user:usergroup xxx 修改目录xxx及其下子目录及文件属主为user:usergroup
5、系统性能检测工具
vmstat内存、pagespace、CPU等监测(vmstat 2 10每隔2秒钟执行一次,共执行10次)
iostat 硬盘I/O监测
netstat网卡监测
topas综合检测工具
6、ps进程察看
ps -ef|grep 进程名
例如:
ps -ef|grep sap
ps -ef|grep oracle
ps -ef|grep tsm
ps -ef|grep cluster
其他的指令可参照smitty工具来操作

Basis学习

showmount -e ip
lsdev -Cc adapter|grep ent 查看网卡
lsdv -Cc if  查看网卡接口
ifconfig -a
netstat -in  看网卡IP信息
netstat -rn   路由
lssrc -t telnet
lssrc -t ftp
vi /etc/inetd.conf
禁止远程通过 root 登陆,修改 /etc/security/user 文件,在root选项将 false 作为 rlogin 的值

论坛徽章:
0
3 [报告]
发表于 2006-11-09 09:26 |显示全部楼层
进行AIX 的日常维护,需要关注哪些日志文件? 


文件                        描述                                                  建议
core 和 snapcore         由应用产生的 dump 文件, 可用于诊断错误                 可删除
nohup.out         nohup 命令的输出结果                            可删除
.xerrors                         X11的输出结果                                       可截短
mbox                          用户邮箱中的邮件                                                     可截短
smit.log 和 smit.script 用户使用smit 命令后的日志                       可适当保留最后1000行,或删除
/var/adm/wtmp           记录用户的登录信息,是二进制文件, 用who 命令来阅读其内容         根据需要保留60天中有用的内容,其余删除
/etc/security/failedlogin         记录用户失败的登录信息,是二进制文件,用who 命令来阅读其内容         可根据需要保留60天中有用的内容,其余删除
/var/adm/sulog         用户使用su 命令的日志         可根据需要保留60天中有用的内容,其余删除
/var/adm/cron/log         cron的日志                    可截短
/var/tmp/snmpd.log         snmp 监控进程日志         可截短
/var/tmp/dpid.log
/var/tmp/dpid2.log
/var/tmp/hostmidb.log
/var/tmp/muxatmd        snmp 子系统日志        可截短
dead.letter         未成功的邮件         可删除
trcfile trace         实用程序的输出         可删除
/var/adm/messages         用于记录syslog进程的日志         可适当保留最后1000行,或删除
/etc/shutdown.log         系统关机过程日志,用shutdown -l 命令产生         可适当保留最后1000行,或删除

论坛徽章:
0
4 [报告]
发表于 2006-11-09 09:27 |显示全部楼层
请各位有经验的高手给予改正和补充!

论坛徽章:
0
5 [报告]
发表于 2006-11-15 08:14 |显示全部楼层
如何自动杀死UNIX僵死的进程
作者:曹苏华
人保系统的计算机应用,已从单机运行方式过渡到以公司为中心的集中处理方式,各县级支公司通过广域网、远程telnet登录到市公司主机。由于网络的原因,有些进程会突然僵死。这些僵死的进程,会消耗系统大量的资源,直接影响机器的正常运行。为了实时地、自动地杀死这些僵死的进程,本人编写了 Shell程序Autokill。

  Autokill程序脚本
  #

  # autokill

  #

  ps -ef | awk ‘{ print $1,$2,$7,$8 }‘ |

   awk ‘/[0-9][0-9]:[0-9][0-9]:[1-9][0-9]/ { print $1,$2,$3,$4 }‘ |

   awk ‘!/root/ { print "kill -9 " $2}‘ > /tmp/k_kill

  chmod 777 /tmp/k_kill

  /tmp/k_kill

  Autokill程序解释
  首先,用UNIX 命令 ps -ef 查看进程状态,通过管道传送给 awk 进行处理。

  在第一个 awk 中,获取进程的用户标识(UID)、进程号(PID)、进程占用CPU时间(Time)、进程执行命令(CMD)四个字段的值。

  在第二个awk 中,通过模式匹配,选取所有匹配模式的行。在awk 中,[0-9]匹配0~9中任一个数字,[1-9]匹配1~9中任何一个数字,连用两个[0-9][0-9]则匹配一个任意两位数,因此[0-9][0-9]:[0-9][0-9]:[1-9][0-9]则匹配 Time时间字段值,查找占用 CPU 时间超过 10 秒的进程;如果要查找占用 CPU 时间超过半小时的进程,则把模式改成 [0-9][0-9]:[3-9][0-9]:[0-9][0-9]。

  在第三个 awk 中,用 “!/root/ ”过滤掉由 Root用户生成的进程,并进行Shell语言拼装,并将最终结果定向到文件 /tmp/k_kill。在 /tmp/k_kill 文件中,都是形如 kill -9 123 的Shell命令。

  在Autokill程序的最后,执行 /tmp/k_kill 杀死进程。

  查看中间结果
  Autokill程序采用了管道处理方式,如要查看中间结果,则可以依次断开管道。

  第一步执行:ps -ef

  第二步执行:ps -ef | awk ‘{ print $1,$2,$7,$8 }‘

  第三步执行:ps -ef | awk ‘{ print $1,$2,$7,$8 }‘ |

   awk ‘/[0-9][0-9]:[0-9][0-9]:[1-9][0-9]/ { print $1,$2,$3,$4 }‘

  第四步执行:ps -ef | awk ‘{ print $1,$2,$7,$8 }‘ |

   awk ‘/[0-9][0-9]:[0-9][0-9]:[1-9][0-9]/ { print $1,$2,$3,$4 }‘ |

   awk ‘!/root/ { print "kill -9 " $2}‘ > /tmp/k_kill


  最终查看 /tmp/k_kill 文件。

  再有,如只想自动杀死由某一用户执行的进程(如jdc3206),只要将模式“!/root/”改成 “/jdc3206/”即可;如只想杀死执行某一命令的进程(如 xinmu ),只要将模式“!/root/” 改成“/xinmu/”即可。

  最后用 crontab -e 增加一个 cron 作业。

  0,30 * * * * /tmp/autokill

  Kill命令失灵怎么办
  经过以上步骤,系统每隔半小时执行一次/tmp/autokill。但在UNIX系统中,有些僵死的进程会莫名其妙地不能用 Kill 命令杀死,这就需要重新引导机器,一方面清除系统垃圾,另一方面需要对资源重新分配。采用中心运行模式,机器不能随意开关机,总要等到夜晚没有用户使用机器时,才能重新开关机。为此编写一个Shell程序,让机器自动开关机。以下是Autoreboot 程序脚本。

  #

  # autoreboot

  #

  PATH=/bin:/etc:/usr/bin:/tcb/bin:/usr/informix/bin

  INFORMIXDIR=/usr/informix

  INFORMIXSERVER=da3206a

  ONCONFIG=onconfig.yca

  export PATH INFORMIXDIR INFORMIXSERVER ONCONFIG

  onmode -ky

  sync

  sync

  reboot

  Autoreboot程序前 5 行,是设置 Informix系统环境,命令 onmode -ky 是关闭 Informix Online数据库,命令 sync 是UNIX 文件系统超级块回写,命令 reboot 是UNIX 系统中的系统重新启动命令。

  用 crontab -e 命令,增加一行 cron 作业30 6 * * * /tmp/auto_boot。

  该命令使系统每天6:30 重新开关机。如果使用的是双机系统,则要在两台机器上,都要进行重新开关机,时间定成一致。

论坛徽章:
0
6 [报告]
发表于 2006-11-15 08:38 |显示全部楼层
SCO Unix+Informix系统环境下死进程的清理优化
来自《 广西科学院学报》2002年 18卷 3期
作者:黄肇明
广西医科大学第一附属医院计算机管理中心 南宁530021
文 摘:分析SCO Unix+Informix系统环境下产生死进程的原因,设计出1个程序在服务器开机启动时在后台自动(可定时)运行清理死进程,从而达到对SCO Unix+Informix系统的优化。
关键词:SCOUnix +Informix系统 死进程 优化

论坛徽章:
0
7 [报告]
发表于 2006-11-15 08:40 |显示全部楼层
用crontab命令完成SCO UNIX系统中大批量数据的自动备份
                  作者:佚名 来源:InterNet
在UNIX系统中,为了使数据备份变得轻松、容易、安全,最好的办法就是自动安排系统例行工作(系统调度),在系统空闲时间里自动执行任务。如定期删除一些流水文件、日志文件,定期完成数据的本地备份和异地备份等。这样既发挥了UNIX系统的卓越功能,又减轻了系统管理员的工作量,使数据备份做到及时安全。
一、建立数据备份用户
  首先建立一个用户,如:userbk,将该用户的属主、属组设定为Informix,权限为755。在该用户下存放备份的各种数据,以便统一备份到磁带上或异地机器上。
二、用系统例行工作安排作业
  UNIX系统有一个始终运行的守护进程,该进程可以在正常调度的间隙运行作业,用户可以在一个文件中指定crontab命令运行任务,cron守护程序在初始化或该文件修改后自动读取其内容。crontab文件中指定的各个域为:
  分钟 小时 月 日 星期几 命令
如文件/usr/spool/cron/crontabs/root存放超级用户调度的命令,内容为:
  17 5 ?? 0 /etc/cleanup>/dev/null
  0 2 ?? 0,4 /usr/lib/cron/logchecker
  3 3 ???/usr/lib/cleantmp>/dev/null
  1 3 ???/etc/setclk-rd1800>/dev/null 2>&1
  #5 18 ??1-5/usr/lib/sa/sa2 -s 8:00 -e 18:01-i 1200-A
  0 4 ??0 /etc/custom -V symlinks;#CUSTOM -SYMLINK -REPORT
  0 0 ??1-5 scosh cronsched-r
  0 0??1 scosh cronsched-wr
第一行的作用是在每周星期日5:17执行/etc/cleanup来清除系统上的某些日志文件。第二行的作用是每周星期日和星期四2:00执行/usr/lib/cron/logchecker来检查守护进程cron的日志文件。第三行为每天3:03运行/usr/lib/cheantmp命令清除指定目录中的临时文件等。
  用户可以用命令crontab -u root -e来编辑此文件,在文件最后加入一行内容:
  0 3 ??? kill-user
此行内容为每天3:00运行kill-user,此命令文件的任务是终止某些用户的进程。
  同样,用命令crontab-u userbk -e来编辑userbk文件,安排userbk用户的作业任务,内容如下:
  10 3??? bdbf
  30 5 ?? 0 ftp -inv<ydbf>ydbf.log
  0 2 ? 1 ?rm ?.log
第一行内容为每天3:10运行bdbf程序,使数据备份至/usr/userbk目录下, 并拷贝到磁带上。第二行内容为每周星期日5:30运行ydbf程序,将备份至/usr/userbk目录下的数据通过网络传送到异地机器上存贮,并将备份信息写入 ydbf.log日志文件中。第三行内容为每月1日2:00删除/usr/userbk下的日志文件。
三、本地数据备份
  笔者使用的操作平台为SCO Openserver5.04系统,数据库为Informix4.0和Informix-Online7.3两种版本。在Informix4.0上使用的业务有“人身保险”(用户名rsbx)、“子女备用金保险”(用户名zbbx)等。数据以字符串形式保存在各自的目录下,备份时可用tar命令或cpio命令将整个用户目录备份即可。而在Informix-Online7.3上应用的有“综合处理系统”(用户名c4g1,库名picc2.dbs),“会计记帐系统”(用户名为claf,库名account.dbs)等,数据存放在Online指定的设备上,平时采用ontape -s命令备份,但由于此命令实现自动备份较困难,并且不能和其它数据备份到一盘磁带上,会造成备份介质的浪费。所以最好采用 dbexport命令备份数据。运行dbexport命令的前提是调用数据库的相关用户必须
退出,一旦有一个应用点没有退出,备份就会失败。为了确保数据的安全备份,需编制一个终止进程的命令文件,即前述中由超级用户调度的kill-user程序。
  程序1:/usr/bin/kill-user
  ps -u rsbx >tmp-a
  ps -u zbbx >>tmp-a
  ps -u c4gl >>tmp-a
  ps -u claf >>tmp-a
  cut -cl-6 tmp-a >tmp-b
  while read a
  do
    kill-9 $a
    echo “kill alread$a”|cat>>/tmp/kill-user.log
  done <tmp-b
  rm tmp-a tmp-b
  程序前5行为列用户进程,并将所要终止的进程存放至/tmp/K-user2文件中,后面的循环语句是杀死进程,并将运行信息存放至/tmp/kill-user.log日志文件中,以备查阅。此程序放在“/”下或“/usr/bin”下。
  程序2:/usr/user/bdbf 本地数据备份程序
  INFORMIXDIR=/user/informix
  PATH=$PATH:$HOME/bin:.:$INFORMIXDIR
/bin
  INFORMIXSERVER=cbps-shm
  ONCONFIG=onconfig.cbps
  export PATH MAIL INFORMIXDIR INFORMIXSERVER ONCONFIG
  rm -r ?.Z
  find /usr/rsbx |cpio-oacvB>RSBX;compress RSBX
  find /usr/zbbx |cpio-oacvB>ZBBX;compress ZBBX
  …
  rm-r?.exp
  dbexport -c picc2 -ss
  find ./picc2.exp | cpio-oacvB>PICC2;compress PICC2
  dbexport -c account -ss
  find ./account.exp | cpio-oacvB>ACCOUNT;compress ACCOUNT
  …
  sleep 10
  tar c8v ?.Z
  date | cat>>userbk.log
  echo“PICC2 ACCOUNT RSBX ZBBX...backup over”|cat>>userbk.log
  程序中所设置的环境变量同Informix用户的环境变量设置一样,所有需要备份的数据用归档命令cpio拷贝至/usr/userbk目录下,用户可根据自已的实际情况自行添加,然后用tar命令统一将所有文件拷贝至磁带上,最后将备份信息写到日志文件userbk.log中,这样系统管理员只需每天早晨上班后检查一下是否备份好,然后更换一般磁带即可。
  四、异地数据备份
  熟悉网络的人都知道FTP的功能十分强大,它主要用于网络之间的文件传输。一般情况下,用户传输多个文件时,需登录服务器逐一传输,只有等待一个文件传送完毕之后才能传输下一个,这样用户需花很长时间守候在终端前等待一个文件传输结束。为了简化工作,在UNIX平台上FTP支持非在线传输,即用户只需把要输入的命令逐条写进shell脚本,FTP传输文件时调用脚本即可,例:对上述/usr/userbk目录下的数据文件的异地备份,可用如下脚本来完成。
  程序3:/usr/userbk/ydbf
  open hostgs
  user mybackup mypasswd
  mpt ?.Z
  bye
程序中的hostgs为异地的主机名。该主机名需在本地主机/etc/hosts文件中定义。mybackup、mypasswd是异地主机中为备份数据而建立的用户名和口令字,当系统例行程序调用此程序时,可将数据全部备份至异地的hostgs主机中mybackup用户下。
五、数据恢复
  本地备份到磁带上的数据可用tar x8v命令将数据文件拷贝到/usr/userbk目录下。异地备份的数据可用FTP命令传输至该目录下,或者直接用/usr/userbk目录下的数据,用uncompress?.Z解压。
  对于Informix4.0版以字符串形式存放的数据,可直接用cpio命令来恢复。如:rsbx用户数据可用如下命令来恢复:
  cpio -icduvB < RSBX
  对于Informix-Online的数据恢复,需采用如下方法。如对picc2数据库的恢复可用如下命令来恢复:
  cpio -icduvB < PICC2
  dbimport picc2 -d workdbs
  其中,workdbs为Online建立的数据空间,须注意的是恢复数据库时,原数据库必须删除。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP