Chinaunix首页 | 论坛 | 博客
  • 博客访问: 100829
  • 博文数量: 26
  • 博客积分: 290
  • 博客等级: 二等列兵
  • 技术积分: 274
  • 用 户 组: 普通用户
  • 注册时间: 2011-12-08 00:49
文章分类

全部博文(26)

文章存档

2013年(2)

2012年(19)

2011年(5)

我的朋友

分类: LINUX

2012-06-14 09:23:57

Problem determination

  1 日志工具

  用于跟踪过程及可能在此期间发生问题的所在,可以使用alog命令监视这些问题,rc. 脚本使用alog命令重定向信息到文件/var/adm/ras/log如果系统出现问题,可以单用户模式启动系统,使用alog –o –t 命令查看该文件,确定是哪里出现了问题。

  -f:指定一Logfile名字,如文件不存在建立一个,如果alog不能写到该文件,则写到/dev/null

  -L:列出当前alog配置定义的日志类型,如和-t一起使用,列出该类型的详细信息

  -o:写Logfile文件内容到标准输出

  -q:拷贝标准输入到Logfile文件,但不写到标准输出

  -t Type:指定类型,alogalog配置获得log名字和大小

  例子: alog –f Logfile –o

  alog –f Logfile |-q –s size

  alog –t Type –v (verbosity value)

  alog –C –t Type –f Logfile –s Size –v Verbosity

  alog –L –t Type

  alog –L(,bosinst,nim,dumpsymp) + alog –o –t Type (smitty alog_show)

  循环日志,当多个CPU同时写同一个日志文件时,文件的内容是不可预知的。

  2 错误日志工具

  错误日志记录硬件及软件故障,为错误诊断及更正提供服务,错误日志子系统有三个组件构成:

  Error log programming:开发人员使用建立错误模板和信息

  Error processing:错误出现是处理

  Error log file processing:管理员用于诊断问题

  详细视图见下页!

  配置错误日志文件(/var/adm/ras/errlog)

  /usr/bin/errdemon –l列出错误日志配置中的错误文件信息

  /usr/bin/errdemon –i /var/adm/ras/errlog.test 改变错误日志文件的名字

  /usr/bin/errdemon –s Size(byte)改变错误日志文件的大小(不能小于4K),如果指定的大小小于当前的文

  件,则当前文件更改为.old,并创建新的指定大小的文件,它也是循环日志。

  /usr/bin/errdemon –B Size(16384)改变错误日志设备的内部缓存

  启动、停止错误日志守护进程

  /usr/bin/errdemon(如果errpt没有输出,该守护进程可能终止)

  /usr/bin/errstop

  清除错误日志(smitty errclear)

  通常在日处理的cron命令执行,也可手动执行

  errclear 0清除所有记录

  errclear –d S 0 清除所有的软件错误记录

  产生错误报告(errpt)

  errpt –a –c –d ErrClass –e EndDate –g –i File –j|-k ErrID –J|-K ErrLabel –l SequenceNum –m Machine

  -n Node –s StartDate –F Flag –N ResourceName –R ResourceType –S ResourceClass –T ErrType

  -y File –z File

  -a:显示详细信息

  -c:同步显示,错误出现时,显示错误信息

  -d ErrClass:显示指定类的错误

  -T ErrType:显示指定类型的错误

  -e EndDate:显示截止到某时的错误信息

  -s StartDate:显示自某时开始的错误信息

  -J ErrLabel:显示指定Label的错误

  -j ErrID:显示指定ID的错误

  -K ErrLabel:显示除指定Label的错误

  -k ErrID:显示除指定ID的错误

  -N ResourceName:显示指定资源名产生的错误

  ErrType

  PEND:设备、组件不可用,紧急。

  PERF:设备、组件的性能低于可接受的级别

  PERM:永久性错误,不能恢复

  TEMP:临时错误,已经恢复

  UNKN:未知错误

  INFO:消息

  ErrClass

  H:硬件错误;S:软件错误;O:消息;U:不能确定

  ls /var/adm/ras/errlog|backup -ivp(f /dev/fd0)备份错误日志到软盘

  ls /var/adm/ras/errlog|backup –ivpf /dev/rmt0备份错误日志到磁带机

  日志维护

  员可以使用errlogger在错误日志中记录消息

  errlogger “This is a test about errlogger command”

  3、系统dump工具(smit dump)

  当系统意外终止,系统dump拷贝选择的内核结构到dump设备。系统dump设备能被动态配置为磁带

  机或逻辑卷来存储系统dump。主要的dump设备是专门的dump设备,次要的dump设备是共享

  的。在安装OS时,dump设备自动配置。缺省的,5L版本配置/dev/hd6为主要的dump设备,而

  /dev/sysdumpnull为次要的dump设备。(如果系统从3升级而来,3缺省的dump设备/dev/hd7

  依然为5L的默认dump设备。系统和用户都可以初始化dump,当dump完成,系统终止或重启,依据

  sys0自动重启属性的设置(smitty?;System Environments?;Change/Show characteristics of OS

  管理dump设备

  sysdumpdev –l列出当前的dump设备

  sysdumpdev –P –p /dev/newdump改变缺省的主要dump设备

  sysdumpdev –e估计当前dump设备的大小

  sysdumpdev -L显示先前dump的统计信息

  系统开始dump

  系统内核panic开始的系统dump写到主dump设备。闪动的“888”指示消息正在解码,按reset键查

  看,RS6000系统使用增强的按钮实现该功能。

  888-102表示系统异常终止,mmm表示终止原因,ddd表示dump状态和dump

  用户开始dump

  用户有三种方法实现系统dump

  检查估计的dump大小

  sysdumpdev –e

  检查主dump设备大小

  sysdumpdev -l

  lsps -a

  开始dump

  sysdumpstart –p(primary)-s(secondary)从命令行开始

  Ctrl+Alt+NumPad1(primary);Ctrl+Alt+NumPad2(secondary);reset(primary)特殊键开始

  注意:只有keymode开关位于维护模式时按键开始dump才有效,或是执行命令:

  sysdumpdev –K

  验证系统dump

  crash命令是用于检验系统dump文件的交互工具

  crash SystemImageFile KernelFile在此两个文件上执行crash命令

  SystemImageFile是文件名或dump设备名

  KernelFile是缺省内核/usr/lib//Unix

  Sysdumpdev –L列出系统dump文件名

  Device name: /dev/hd6

  Major device number: 10

  Minor device number: 2

  Size: 24202752 bytes

  Date/Time: Tue Nov 10 16:50:45 CST 1998

  Dump status: 0

  dump completed successfully

  Dump copy filename: /var/adm/ras/vmcore.1

  crash /var/adm/ras/vmcore.1验证dump的有效性

  Using /unix as the default namelist file.

  >

  >stat

  sysname:

  nodename: 4xdev

  release: 3

  version: 4

  machine: 000044091C00

  time of crash: Tue Nov 10 16:50:45 CST 1998

  age of system: 1 day, 5 hr., 28 min.

  xmalloc debug: disabled

  abend code: 0

  csa: 0x0

  >

  >quit

  如果crash命令输出>stat子命令输出dump细节

  拷贝系统dump

  在5L版本,pax命令允许拷贝、建立、修改大于2G的文件(象系统dump),用于迁移dump(先前版本

  使用tar,cpio命令---但不能操作大于2G的文件),pax命令也以tar,cpio的格式查看修改文件。

  Pax –r|-w|-rw –c –d –i –k –l –n –t –u –v –X –H|-L –p String –o Options –s ReplacementString

  -x Format File Directory

  -a:添加文件到归档的末尾

  -c:匹配所有归档成员或文件(pattern参数指定的除外)

  -d:只考虑路径不考虑路径的内容

  -f Archive:指定要使用的归档文件的路径

  -i:重命名文件或归档

  -k:防止该命令覆盖存在的文件

  -r:从标准输入读一归档文件

  -v:写进程的信息

  -w:以指定的归档格式写文件到标准输出

  -x Format:指定输出的归档格式(pax----可以大于2G,cpio,ustar

  注意:不指定-x参数,缺省为tar格式,指定-x不指定Format,缺省为pax格式

  pax –vf /etc/temp.tar查看tar文件

  pax –x pax –wvf temp.tar /home/user/soft.tar /home/user/temp.tar建立一个pax格式文件

  temp.tar,包含文件/home/user/soft.tar/home/user/temp.tar,大于2G

  pax –wvf /dev/rmt0 dump.out拷贝dump.out文件到磁带机

  pax –rvf /var/adm/link.tar解压缩tar文件/var/adm/link.tar到当前目录

  pax –rw run.pax /tmp拷贝run.pax文件到/tmp目录

  编译拷贝系统dump到媒质

  命令snap用于收集系统的配置信息,提供方便的方法发送lslpp,errpt输出到服务支持中心,它收集

  信息并压缩信息成pax文件,并可下载到磁带、软盘等媒质。

  Snap –a –A –b –c –D –f –g –G –i –k –l –L –n –N –p –r –s –S –t –T –w –o OutputDev

  -d Dir –v Component

  -a:收集所有的系统信息,大约需要8M/tmp空间

  -c:建立/tmp/ibmsupt目录树或其他命名的目录下的所有文件的压缩pax镜像(snap.pax.Z文件)

  -d Dir:指定可选的snap输出路径(缺省/tmp/ibmsupt

  -D:收集dump/unix信息,使用主dump设备

  -f:收集文件系统信息

  -g:收集lslpp –hBc命令的输出,需要这些信息重建正确的OS环境,写输出到/tmp/ibmsupt/general/

  /lslpp.hBc文件,收集通用的系统信息输出到/tmp/ibmsupt/general/general.snap文件

  -k:收集内核信息

  -L:收集LVM信息

  -o Outputdev:拷贝压缩的镜像到磁带或软盘

  -r:从/tmp/ibmsupt目录删除snap命令的输出

  -v Component:显示输出,看指定名字或组的文件

  /usr/sbin/snap –gfkD –o /dev/rmt0拷贝系统信息(包括文件系统和内核参数)到磁带

  在执行snap –osnap –c命令前,任何服务支持中心需要的附加信息都应该加到/tmp/ibmsupt目录

  例如,服务支持中心(IBM)需要你提供一个说明问题的测试例子,则应拷贝它到/tmp/ibmsupt目录,

  snap –osnap –c命令执行时,该测试例子也被包括在里面。

阅读(1564) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~