Linux/hp unix/AIX日常巡检脚本(转)

以下为Linux/hp unix/AIX日常巡检脚本,大家可以参考着进行改写,用于自己的服务器。

#!/usr/bin/ksh

syserrdate=`date +"%m/%d"`
errcount=0
STATUS=
HOSTS=`hostname`
SCRIPT=`basename $0`
REPORT="/tmp/report.txt"

#FS percent
FILESYSTEM_CHECK() {
FS=`df -k|sed ‘1d‘|awk ‘sub("%","",$4) {if ($4 > 80) print $7}‘|xargs`
for i in $FS
do
echo "The $i filesystem percent more than %80 n"
done
}

#Active VG
VG_CHECK() {
echo "****************************ACTIVE VG****************************n"
ACVG=`lsvg -o|xargs`
echo "Active VG is: $ACVGn"
#LV_CHECK 
echo "***************************PROBLEM LV****************************n"
BLV=`lsvg -l rootvg|grep -E "jfs|jfs2|raw"|grep -v ‘N/A‘|awk ‘{if ($6~/closed/ || $6~/stale/) print $1}‘|xargs`
for i in $BLV
do
echo "The $i filesystem has a problem!!!n"
done
}

#Problem disk
DISK_CHECK() {
echo "***************************Problem disk***************************n"
disk=`lsvg -o|lsvg -ip|awk ‘$1~/hdisk/ && $2!~/active/ {print $1}‘|xargs`
if [ "$disk" != "" ]
then
for i in $disk
do
echo "The $disk in $i has a problem!!!n"
done
fi
}

#error report
ERROR_CHECK() { 
echo "***************************error report***************************n"
errdate=`errpt |grep -v IDENTIFIER |awk ‘{print $2}‘ |cut -c 1-4 |xargs`
for syserrFor1 in $errdate
do
if [ "$syserrFor1" = "$syserrdate" ]
then
newerrcount=`expr $errcount + 1`
errcount=$newerrcount
fi
done
if [ "$errcount" -eq 0 ]
then
echo "Today error is add $errcount yesterdayn"
else
echo "Today errors is add $errcount than yesterdayn"
fi

#error detail
errors=`errpt -dH -TPERM`
if [ -z "$errors" ]
then
echo "The Hardware is ${STATUS:-NORMAL}.n"
else
echo "The permanent error of Hardware as fllow:n`errpt -dH -TPERM`"
fi
}

#Check Database
DB_CHECK() {
su - oracle -c "lsnrctl status"|grep -i "no listener"
if [ $? = 1 ]
then
echo "The listener status is ${STATUS:-NORMAL}n"
else
echo "The listener has a problem!!!n"
fi
#echo "The listener status is :`su - oracle -c "lsnrctl status"`n"
#echo "Database status is:"
#su - oracle -c "sqlplus -s /nolog"<<EOF|sed ‘/^$/d‘
#conn /as sysdba
#select log_mode,name,open_mode from v$database;
#quit
#EOF
su - oracle -c "sqlplus -s /nolog"<<EOF|sed ‘/^$/d‘ 2>/dev/null|grep -i "ORACLE not avail
able"
conn /as sysdba
select log_mode,name,open_mode from v$database;
quit
EOF
if [ $? = 0 ]
then
echo "The database not available!!!n"
else
echo "The database is NORMALn"
fi
}

#HBA card link
HARDWARE_CHECK() { 
fget_config -Av|grep -i dacnone>>/dev/null
if [ $? -eq 0 ]
then
echo "The storage link has problem!!!"
else
echo "The storage link NORMAL!"
fi
}

#HACMP CHECK
HA_CHECK() {
echo "The HACMP status is: `lssrc -g cluster|sed ‘1d‘`"
}

#CHECK SNA
SNA_CHECK() {
echo "The SNA LINK STATUS is:`sna -d l`"
echo "The SNA SESSION has problem as fllows:n"
sna -d sl|tail +4|awk ‘BEGIN { OFS="t"; print "name","tactsess","actconw"}{if ($7 == 0 && $8 == 0) print $1, $7,$8}‘
}

#CHECK CICS
CICS_CHECK() {
echo "The not active CICS is as fllows:n"
lssrc -a|grep cics|awk ‘$3!~/active/ {print $1}‘
}

echo $SCRIPT >$REPORT
echo $HOSTS >> $REPORT
echo "IP ADDRESS:`ifconfig -a|grep -w inet|grep -v 127.0.0.1|awk ‘{print $2}‘`" >> $REPORT
netstat -v|grep -E "STAT|Link" >>$REPORT
oslevel >> $REPORT

FILESYSTEM_CHECK >>$REPORT 2>&1
VG_CHECK >>$REPORT 2>&1
DISK_CHECK >>$REPORT 2>&1
ERROR_CHECK >>$REPORT 2>&1
DB_CHECK >>$REPORT 2>&1
HARDWARE_CHECK >>$REPORT 2>&1

lslpp -L|grep cluster >/dev/null
if [ $? -eq 0 ]
then
HA_CHECK >>$REPORT 2>&1
else
echo "This machine not install HACMP" >> $REPORT
fi

lslpp -L|grep "sna.rte" >/dev/null
if [ $? -eq 0 ]
then
SNA_CHECK >>$REPORT 2>&1
else
echo "This machine not install sna" >> $REPORT
fi

lslpp -L|grep -i cics >/dev/null
if [ $? -eq 0 ]
then
CICS_CHECK >>$REPORT 2>&1
else
echo "This machine not install cics" >> $REPORT
fi

========================================================

#! /bin/sh
cd /home/check
logname=check.`hostname`.`date +"%y%m%d%H%M"`.txt

echo "system log starting......" >$logname

echo "Filesystem disk use checking started" >>$logname
echo "#df -h" >>$logname
df -h >>$logname 2>&1 
echo "filesystem disk ustage checking completed" >>$logname

echo "VG checking started." >>$logname
echo "check vg status" >>$logname
echo "# vgdisplay -v" >>$logname
vgdisplay -v >>$logname
echo "VG checking completed." >>$logname

echo "System log checking started.....">>$logname
echo "# tail -n 50 /var/log/messages" >>$logname
tail -n 50 /var/log/messages >>$logname

echo " showing root‘s mail" >>$logname
cat /var/spool/mail/root >mail.now
diff -e mail.ref mail.now |awk ‘NR>1 {print $0}‘>>$logname
mv mail.now mail.ref

echo "showing user login history since last day" >>$logname
last >last.now
diff -e last.ref last.now |awk ‘NR>1 {print $0}‘>>$logname
mv last.now last.ref >>$logname

echo "Crontab using and error log starting..">>$logname
crontab -l >>$logname
tail -n 30 /var/log/cron >>$logname

echo "#########################">>$logname
echo " System process checking started " >>$logname
echo "#dmesg">>$logname
dmesg >>$logname
echo "#ps -ef |grep defunc">>$logname
ps -ef |grep defunc >>$logname

echo "#service named status">>$logname
service named status >>$logname

echo " #uptime" >>$logname
uptime >>$logname
echo " System process checking completed ">>$logname

echo "#########################">>$logname
echo " networking checking Start.">>$logname
echo "#service network status " >>$logname
service network status >>$logname
echo "#netstat -in " >>$logname
netstat -in >>$logname
echo "#netstat -rn " >>$logname
netstat -rn >>$logname
echo "#netstat -ntapl " >>$logname
netstat -ntapl >>$logname

echo " networking checking completed " >>$logname

#echo "#########################">>$logname
#echo "performance and paging space checking start..." >>$logname
#top >top.now
#cat top.now>>$logname

echo "performance and paging space checking started" >>$logname
echo "#vmstat 1 10 " >>$logname
vmstat 1 10 >>$logname

echo "#free -l ">>$logname
free -l >>$logname
echo "performance and paging space checking completed" >>$logname

echo " showing command used history since last day " >>$logname
cat /.sh_history >sh_history.now
diff -e sh_history.ref sh_history.now |awk ‘NR>1 {print $0}‘ >>$logname
mv sh_history.now sh_history.ref

echo " system logging completed " >>$logname

# now ftp to the log server
ftp -i -n <<EOF
open 10.0.99.5
user root vmware
lcd /home/check
put $logname
bye
EOF

cd /home/check
mv $logname /home/check/syslog/

时间: 2024-08-05 03:01:45

Linux/hp unix/AIX日常巡检脚本(转)的相关文章

HP Unix Tcpdump 抓包脚本

1.抓包脚本 # cat capturepackages.sh#!/usr/bin/sh# while [ 1 ]doSTIME=`date +%F"@"%H%M%S`    DATE_DIR=`date +%F`           if [ ! -d /tnm/capture/$DATE_DIR ];thenmkdir -p /tnm/capture/$DATE_DIR     fi/usr/local/sbin/tcpdump -w /tnm/capture/$DATE_DIR/

AIX小机巡检脚本,保存小机信息

#!/usr/bin/sh FILE_DATE=`/usr/bin/date +%Y%m%d` HOSTNAME=`hostname` # Get Serial number SERIAL=`lscfg -vpl sysplanar0 |grep -p "System:" |grep "Machine/Cabinet"` if [[ $? -eq 0 ]]; then SERIAL=${SERIAL##*.} else SERIAL=`lscfg -vpl sysp

日常巡检(脚本)

转自 https://www.cnblogs.com/lslyw/p/11603781.html #!/bin/bash function system(){ echo "#########################系统信息#########################" OS_TYPE=`uname` OS_VER=`cat /etc/redhat-release` OS_KER=`uname -a|awk '{print $3}'` OS_TIME=`date +%F_%

Unix Study之--Linux共享访问AIX 6之NFS

Unix Study之--Linux共享访问AIX 6之NFS 1.配置aix 6为nfs server 2.查看nfs server共享 [[email protected] /]# cat /etc/hosts127.0.0.1   localhost192.168.8.245  rh64.cuug.cn   rh64192.168.8.219  aix219 [[email protected] /]#cat /etc/exports/export/nim/scripts/aix194.s

双机倒换(NewStartHA,SKYbility,hacmp,hp unix双机)

1.Suse linux  (NewStartHA): # cli cli:~>service-migrate Select service to migrate: Current service: 0) bill 1) gdb 2) cancel Select a service [0, 2]: 按照命令行的提示输入进行倒换 2.AIX(HACMP): # smit hacmp 后进入: enter进入: 查看双机状态: 将资源由suibao01切换至suibao02 : smitty hac

Oracle 数据库日常巡检

Oracle 数据库日常巡检 阅读目录 1. 检查数据库基本状况 2. 检查Oracle相关资源的使用情况 3. 检查Oracle数据库备份结果 4. 检查Oracle数据库性能 5. 检查数据库cpu.I/O.内存性能 6. 检查数据库安全性 7. 其他检查 回到顶部 1. 检查数据库基本状况 包含:检查Oracle实例状态,检查Oracle服务进程,检查Oracle监听进程,共三个部分. 1.1. 检查Oracle实例状态 select instance_name,host_name,sta

Linux和UNIX

简单介绍一下Linux的由来以及Linux和UNIX的关系 Linux简介: Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户.多任务.支持多线程和多CPU的操作系统.它能运行主要的UNIX工具软件.应用程序和网络协议.它支持32位和64位硬件.Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统. Linux操作系统诞生于1991 年的10 月5 日(这是第一次正式向外公布的时间).Linux存在着许多不同的Linux

9种企业常用的Linux和Unix服务器

?? 9种企业常用的Linux和Unix服务器 介绍下9种企业常用的Linux和Unix服务器 1.CentOS:https://www.centos.org/CentOS-5,CentOS-6,CentOS-7:http://wiki.centos.org/Download 2.Debian:https://www.debian.org/Debian 8.0:https://www.debian.org/releases/stable/debian-installer/Old Debian A

Linux 与 Unix 到底有什么不同?区别在哪?

Linux 与 Unix 到底有什么不同?区别在哪? 如果你是一名20多岁或30多岁的软件开发人员,那么你已成长在一个由Linux主导的世界中.数十年来,它一直是数据中心的重要参与者,尽管很难找到明确的操作系统市场份额的报告,但Linux在数据中心操作系统上的份额可能高达70%,而Windows变体几乎涵盖了所有剩余的比例.使用任何主流公共云的开发人员可以假定目标系统将运行Linux.近些年来,随着Android和基于Linux的嵌入式系统在智能手机.电视.汽车和其他设备中的应用,Linux随处