AIX dump 设置检查方法及脚本
dump主要需要检查以下几点:
1.always allow dump是否已经设成TRUE,具体检查方法如下:
[ecdump /dump/guoshh]$ sysdumpdev -l
primary /dev/dumplv
secondary /dev/sysdumpnull
copy directory /var/adm/ras
forced copy flag TRUE
always allow dump TRUE
dump compression ON
type of dump traditional
2.fullcore是否设置为true.
[ecdump /dump/guoshh]$ lsattr -El sys0|grep fullcore
fullcore true Enable full CORE dump True
3.dump大小是否够大
需要多大检查方法如下:
[ecdump /dump/guoshh]$ sysdumpdev -e
0453-041 Estimated dump size in bytes: 623063859
目前是多大检查方法如下:
[ecdump /dump/guoshh]$ lsvg -l rootvg|head -2;lsvg -l rootvg|grep sysdump
rootvg:
LV NAME TYPE LPs PPs PVs LV STATE MOUNT POINT
dumplv sysdump 5 5 1 open/syncd N/A
[ecdump /dump/guoshh]$ lsvg rootvg|grep -i size
VG STATE: active PP SIZE: 256 megabyte(s)
LTG size (Dynamic): 256 kilobyte(s) AUTO SYNC: no
目前的大小等于dumplv的lps数乘以rootvg的ppsize再乘以1024再乘以1024
如上例中该机器的目前的dump设置的大小是:
dumpsize=52561024*1024=1342177280 > 623063859
因此此机器dump设置是正确的。
以下是dump检查脚本:
!/usr/bin/ksh
echo "xxxxxxxxxxxxxxxxxx"
echo "Dump Setting Check"
echo "xxxxxxxxxxxxxxxxxx"
echo "---------------------------"
echo "1.Always allow dump setting"
echo "---------------------------"
aldump=sysdumpdev -l|grep always|awk '{print $4}'
if [[ $aldump = TRUE ]]
then
echo "------------------------------------------------------"
echo "[MESSAGE]:Now Always allow dump is setting to $aldump."
echo "[MESSAGE]:Always allow dump setting is correct."
echo "------------------------------------------------------"
else
echo "------------------------------------------------------"
echo "[ERROR]:Now Always allow dump is setting to $aldump."
echo "[ERROR]:Always allow dump setting is incorrect."
echo " Pls change it to TRUE."
echo "------------------------------------------------------"
fi
echo "------------------"
echo "2.fullcore setting"
echo "------------------"
fullcore=lsattr -El sys0|grep fullcore|awk '{print $2}'
if [[ $fullcore = true ]]
then
echo "-----------------------------------------------"
echo "[MESSAGE]:Now fullcore is setting to $fullcore."
echo "[MESSAGE]:fullcore setting is correct."
echo "-----------------------------------------------"
else
echo "---------------------------------------------"
echo "[ERROR]:Now fullcore is setting to $fullcore."
echo "[ERROR]:fullcore setting is incorrect."
echo " Pls change it to true."
echo "---------------------------------------------"
fi
echo "xxxxxxxxxxxxxxx"
echo "Dump Size Check"
echo "xxxxxxxxxxxxxxx"
PPSIZE=lsvg rootvg|grep "PP SIZE"|awk '{print $7}'|awk -F "(" '{print $1}'
PPNUM=lsvg rootvg|grep "PP SIZE"|awk '{print $6}'
DUMPPP=lsvg -l rootvg|grep sysdump|awk '{print $3}'
DUMPS=sysdumpdev -e|awk -F : '{print $2}'
if [[ $PPSIZE = megabyte ]]
then
dumpdev=expr $PPNUM * $DUMPPP * 1024 * 1024
else
dumpdev=expr $PPNUM * $DUMPPP * 1024 * 1024 * 1024
fi
if [[ $DUMPS -le $dumpdev ]]
then
echo "--------------------------"
echo "[MESSAGE]:Dump Size is OK!"
echo "--------------------------"
else
dumpsize=expr $DUMPS / 1024 / 1024
echo "-----------------------------------------------------------"
echo "[ERROR]:Dump Size for this OS need largh then $dumpsize MB."
echo "[ERROR]:Dump size is too small, pls extend it."
echo "-----------------------------------------------------------"
fi
相关阅读:
AIX 系统hang住,停止服务,dump报KERNEL_ABEND报错的解决方法