########################## # LAST CHANGE : 22.10.2012 ########################## OS LEVEL AIX: 4.3.3 + 5.1 + 5.2 + 5.3 + 6.1 ############## # AIX oneliner ############## ################################################# # Output Link status saemtlicher Ethernet Adapter ################################################# for i in `lsdev -Cc adapter|grep ^ent|awk '{print $1}'` do echo "Beginn Adapter $i" lsdev -Cc adapter|grep ther|grep -w $i entstat -d $i|egrep "ink|Media" done ################################# # check location/speed of adapter # wwn nummer finden ################################# ADAPTER=ent ADAPTER=fcs ADAPTER=rmt ADAPTER=smc for i in `lsdev -Cc adapter|grep "^${ADAPTER}" |awk '{print $1}'` do echo "############" echo "# Adapter $i" echo "############" echo "$i `lscfg -vl $i|egrep \"Network|Hardware\"`" case ${ADAPTER} in "ent") entstat -d ${i} |egrep "Operational State|Port Link State|Hardware Address|^Bytes:|Errors:|Device Type:|ETHERNET STATISTICS" ;; "fcs") fcstat ${i} |egrep "Input Bytes:|Output Bytes:|^Port Speed|^FIBRE CHANNE" ;; "*") echo "no stat command for $ADAPTER Type" ;; esac done ##################################### # check welche aliases sind definiert ##################################### for i in `ifconfig -a|grep -w inet | grep -v 127.0.0.1|awk '{print $2}'` do host $i done ################################### # route von einer maschine kopieren ################################### lsattr -El inet0 | grep route | awk '{ print $2 }' > /tmp/routes move /tmp/routes to the target system and run this command : for RR in $(cat /tmp/routes) do chdev -l inet0 -a route=$RR done ##################### # Mac Adressen finden ##################### lscfg|awk '{print $2}'|grep ^ent|while read MAC;do printf $MAC;printf " --> ";lscfg -vpl $MAC | awk -F. ' /Network Address/ {print $14}';printf " ";done # wwn tape devices finden for i in `lsdev -Cc tape |grep "^rmt" |awk '{print $1}'` do echo "$i = `lsattr -El $i |egrep ww_name|awk '{print $2}'|cut -c 3-20`" done ######################## # check vpath attributes ######################## TO_GREP="policy|qdepth_enable" for i in `lsvpcfg |awk '{print $1}'`; do echo "$TO_GREP setting for $i:"; lsattr -El $i |egrep "$TO_GREP"; done ####################### # check user attributes ####################### GRUPPE=entw for i in `lsgroup $GRUPPE|awk '{print $4}'|cut -f2 -d"="|sed '1,$s/,/ /g'` do lsuser -a rlogin $i done #################################### # defragmentiere alle gemounteten fs #################################### for i in `df|grep -v Mounted |awk '{print $7}'` do defragfs $i done #################### # find growing files #################### find . -type f -xdev -ls 2>/dev/null | awk '{print $7" "$8" " $9" "$10" "$11}' | sort -rn |m ore oder find . -xdev -ls 2>/dev/null| sort +6 -nr | head -20 ##################################################### # ssa platte zum blinken bringen und wieder abstellen ##################################################### VG=xyz for i in `lsvg -p $VG|grep hdisk|awk '{print $1}'` do PDISK=`ssaxlate -l $i` ssaidentify -l $PDISK -y done VG=xyz for i in `lsvg -p $VG|grep hdisk|awk '{print $1}'` do PDISK=`ssaxlate -l $i` ssaidentify -l $PDISK -n done ######################### # platte auf welchem loop ######################### ZAEHLER=1 PLATTEBIS=99 while true do HDISK=`ssaxlate -l pdisk${ZAEHLER}` SIZE=`bootinfo -s $HDISK` CONN=`ssaconn -l pdisk${ZAEHLER} -a ssa0` echo "$CONN $HDISK $SIZE" if [ $ZAEHLER = $PLATTEBIS ] then break else let ZAEHLER=$ZAEHLER+1 fi done ############################################# # ssaxlate zeige hdisk zu pdisk und umgekehrt ############################################# for i in `lsdev -Cc disk|grep SSA|awk '{print $1}'`; do echo "$i ist" `ssaxlate -l $i`; done for i in $(lsdev -CS1 -t hdisk -sssar -F name) do echo "$i: "$(ssaxlate -l $i) done ################################# # summe aller VG's auf dem System ################################# lsvg -o|lsvg -i|grep 'TOTAL PPs' ################################## # summe der kapazitaet der platten ################################## VAR1=0 VAR2=0 for i in `lspv|grep None|awk '{print $1}'` do VAR1=`bootinfo -s $i` let VAR2="$VAR1+$VAR2" done echo $VAR2 ####################################### # groesse leerer platten auf dem System ####################################### for i in `lspv|grep one|awk '{print $1}'` do echo "$i = `bootinfo -s $i`" done ########################## # MAC-Adresse herausfinden ########################## netstat -v|grep ardware;netstat -v|grep ETHER for i in `lsdev -Cc adapter|grep -w 10 |grep -w 100|awk '{print $1}'` do echo "Beginn $i ..." MAC=`entstat -d $i |grep ardw` LINK=`entstat -d $i |grep ink` ADAPTER=`entstat -d $i |grep dapter|grep -i PCI` echo "$i ist ein $ADAPTER" echo "$i MAC=$MAC" echo "$i $LINK" done ########################################### # dependencies von software packages in AIX ########################################### for i in `lslpp -l|grep -v Path|grep -v Fileset|awk '{print $1}'` do lslpp -d $i done ############################## # TSM Exclude Dir herausfinden ############################## for i in `mount|grep oradata|awk '{print $2}'` do echo "exclude.dir $i" done for i in `mount|grep oralog|awk '{print $2}'` do echo "exclude.dir $i" done find /opt/oracle/admin -name "*.dbf" >>/tmp/inclexcl find /opt/oracle/admin -name "*.ctl" >>/tmp/inclexcl vi $DSM_DIR/inclexcl ###################### # fping auf host liste ###################### export ZAEHLER=1;while true do fping -a 10.50.10.${ZAEHLER} if [ $ZAEHLER = 254 ] then break fi let ZAEHLER=$ZAEHLER+1 done ################################ # asyncadapter tty konfigurieren ################################ ZAEHLER=0 while true do mkdev -c tty -t 'tty' -s 'rs232' -p 'sa3' -w ${ZAEHLER} -a login='enable' let ZAEHLER=$ZAEHLER+1 if [ $ZAEHLER = 16 ] then break fi done ##################### # oracle session size ##################### for i in `ps -ef|grep pmon|grep -v grep|awk '{print $9}'|cut -f 3 -d"_"` do /usr/local/bin/oracle_session_size.ksh $i done ################################# # removing death datapath devices ################################# for i in `datapath query device|grep DEV|awk '{print $2}'` do echo "begin device $i ..." datapath query device $i |grep DEAD >/dev/null 2>&1 if [ $? = 0 ] then HDISK_TO_DELETE=`datapath query device $i |grep DEAD |awk '{prin t $2}'|cut -f 2 -d"/"|head -1` PATH_TO_DELETE=`datapath query device $i |grep DEAD |awk '{print $1}'|head -1` if [ -z ${HDISK_TO_DELETE} ] && [ -z ${PATH_TO_DELETE} ] then datapath remove device $i path ${PATH_TO_DELETE} echo "Deleting hdisk ${HDISK_TO_DELETE} ..." rmdev -dl ${HDISK_TO_DELETE} fi else echo "no more DEAD pathes found for device $i" fi done ################### # vpath load policy ################### for i in `lsvpcfg|awk '{print $1}'` do echo "$i policy = `lsattr -El $i |grep policy|awk '{print $2}'`" done #################### # vpath list from vg #################### for i in `lsvg -p vg_dwh |awk '{print $1}'|grep "^vpath"` do DEVICE=`sudo datapath query device |grep -w ${i}|awk '{print $2}'` sudo datapath query device ${DEVICE} done ####################### # wer spricht mit wem ? ####################### # sortiert nach outgoing moni 'clear;netstat -atn|head -2;netstat -atn|grep ESTA|sort +2 -rn|head -10' # sortiert nach incoming moni 'clear;netstat -atn|head -2;netstat -atn|grep ESTA|sort +1 -rn|head -10' ################# # network traffic ################# moni 'netstat -atn|head -2;netstat -atn|egrep "^tcp4"|grep "ESTABLISHED"|egrep -v "^tcp4 0 0" |head -20' ######## # iostat ######## Kb_wrtn iostat -A |head -7;sleep 2;iostat -A |egrep -v "0.0 0.0 0.0 0 0|Disks:|^$"|sort +5 -rn|head -10 Kb_read iostat -A |head -7;sleep 2;iostat -A |egrep -v "0.0 0.0 0.0 0 0|Disks:|^$"|sort +4 -rn|head -10 ########################################## # vioserver shared ethernet adapter status ########################################## lsdev |grep ent|grep Shared|awk '{print $1}'|while read i do echo "##############################################################" echo "# $i" echo "##############################################################" entstat -d ${i}|egrep "ETHERNET STATISTICS|Speed|Link|Aggr|Device Type|^Hardware|Backup|Primary|Error|State" done ###################### # fiber adapter tuning ###################### # clariion ds4k NUM_CMD_ELEMS=400 # DS8k NUM_CMD_ELEMS=1024 FC_ERR_RECOV=fast_fail LG_TERM_DMA=0x800000 MAX_XFER_SIZE=0x400000 for i in 0 1 2 3 do echo "Beginn Adapter fcs$i" chdev -l fcs$i -P -a num_cmd_elems=${NUM_CMD_ELEMS} chdev -l fcs$i -P -a lg_term_dma=${LG_TERM_DMA} chdev -l fcs$i -P -a max_xfer_size=${MAX_XFER_SIZE} chdev -l fscsi$i -P -a fc_err_recov=${FC_ERR_RECOV} done ############################### # disable qdepth on SDD devices (dynamically) ############################### COMMAND=pcmpath COMMAND=datapath for i in `sudo $COMMAND query device|grep "^DEV"|awk '{print $2}'` do echo "Change $COMMAND device $i" sudo $COMMAND set device $i qdepth disable done # enable qdepth on devices for i in `sudo $COMMAND query device|grep "^DEV"|awk '{print $2}'` do echo "Change $COMMAND device $i" sudo $COMMAND set device $i qdepth enable done ############################################## # changing queue_depth for vpath hdisks in ODM ############################################## QUEUE_DEPTH=20 # default QUEUE_DEPTH=40 # tuned sudo $COMMAND query device |grep fscsi |grep OPEN| awk -F"/" '{print $2}'|awk '{print $1}'|while read i do BEFORE=`lsattr -El $i |grep queue_depth|awk '{print $2}'` echo "changing queue_depth for $i from $BEFORE to $QUEUE_DEPTH" sudo chdev -P -l $i -a queue_depth=$QUEUE_DEPTH done ######################################### # find out which tape is on which adapter ######################################### lsdev -Cc tape|awk '{print $1,$3}'|while read i j do echo "$i `lsattr -El $i|grep ww_name|awk '{print $2}'` `lscfg -vl $i| grep Serial|awk '{print $2}'`" echo "Location Code `lscfg -vl $i |egrep \"rmt|smc\"|awk '{print $2}'`" ADAPTER=`echo $j|cut -c1-4` echo "Angeschlossen an `lsdev -Cc adapter|grep fcs|grep $ADAPTER|awk '{print $1}'`" done ######################################## # hole hitachi device ids aus der config ######################################## lsdev -Cc disk|grep "Hitachi MPIO"|awk '{print $1}'|while read DISK do echo "${DISK} `lscfg -vl ${DISK} |grep Z1|awk '{print $2}'|cut -c22-26`" done