# Сбор данных с серверов и рабочих станций, работающих под управлением Solaris

Нурлан Мухамедьевич Тлеушев

После долго перерыва снова нашел время для опубликования небольшого скриптика, похожего по действию на SUN Explorer, правда когда я его написал, Explorer'a еще не было. Да и написал его больше для тех машин, на которые Explorer не встанет (ОС версии от 2.5.1 до 5.7). Впрочем использовать его можно на любой версии Solaris.

Как и положено - функционалитет у моего скрипта гораздо меньший, чем у его SUNовского брата, зато его любой админ "под себя" рихтовать может.

Братья и сестры, прошу вас после "рихтовки" высылать мне на e-mail (TNM_2004@maiL.ru) ваш (теперь уже) скрипт.


Данная версия скрипта предназначена для сбора статистической и дагностической информации с серверов и рабочих станций под ОС Solaris + СУБД Informix.


начало скрипта - следующая строка

###############################################################################


#!/bin/sh

#

# Designed by Nurlan M. Tleushev, Almaty, Kazakhstan

# tnm_2004@mail.ru (здесь оставьте мой ящик - типа копирайт)

# господа, кто чего допишет - исправленный скрипт присылайте, опубликую

#

# 01.01.2002

#

# 01.06.2004

#

# 11.08.2005

#

# 20.09.2005

#

# 21.09.2005

#

# 02.01.2007

#

# 02.05.2007

#

# ...

#

# 05.03.2011

#

###################################################################################################

#

PATH=$PATH:/usr/bin:usr/sbin:/usr/platform/`uname -i`/sbin

OUTPUTFILE=`uname -n`_`uname -i`_`date '+%Y%m%d'`

DIRNAME=/tmp/$OUTPUTFILE

export OUTPUTFILE DIRNAME PATH

rm -rf $DIRNAME /tmp/$OUTPUTFILE.tar

###################################################################################################

#

mkdir -p $DIRNAME/etc

mkdir -p $DIRNAME/diag

mkdir -p $DIRNAME/informix


###################################################################################################

#

# etc

cp /etc/passwd $DIRNAME/etc/passwd.txt

cp /etc/group $DIRNAME/etc/group.txt

cp /etc/netmasks $DIRNAME/etc/netmasks.txt

cp /etc/hostname.* $DIRNAME/etc/

cp /etc/notrouter $DIRNAME/etc/

cp /etc/system $DIRNAME/etc/system.txt

cp /etc/vfstab $DIRNAME/etc/vfstab.txt

cp /etc/hosts $DIRNAME/etc/hosts.txt

cp /etc/inet/ipnodes $DIRNAME/etc/inet_ipnodes.txt

cp /etc/TIMEZONE $DIRNAME/etc/TIMEZONE.txt

cp /etc/dumpadm.conf $DIRNAME/etc/dumpadm.txt

cp /etc/release $DIRNAME/etc/release.txt

cp /etc/defaultrouter $DIRNAME/etc/defaultrouter.txt

cat /var/sadm/system/admin/CLUSTER > $DIRNAME/etc/CLUSTER.txt

cat /var/sadm/system/admin/INST_RELEASE > $DIRNAME/etc/INST_RELEASE.txt

#

ifconfig -a > $DIRNAME/etc/ifconfig-a.txt

netstat -rn > $DIRNAME/etc/netstat-rn.txt

uname -a > $DIRNAME/etc/uname-a.txt

uptime > $DIRNAME/etc/uptime.txt

last | tail > $DIRNAME/etc/last_tail.txt

ps -ef | sort > $DIRNAME/etc/ps-ef.txt

ls -l /etc/rc?.d/S* > $DIRNAME/etc/scripts_start.txt

ls -l /etc/rc?.d/K* > $DIRNAME/etc/scripts_kill.txt

###################################################################################################

#

#

# diag

swap -l > $DIRNAME/diag/swap-l.txt

swap -s > $DIRNAME/diag/swap-s.txt

/usr/sbin/prtconf -V > $DIRNAME/diag/prom_revision.txt

/usr/sbin/prtconf -v | grep -v not > $DIRNAME/diag/prtconf.txt

/usr/sbin/psrinfo -v > $DIRNAME/diag/psrinfo-v.txt

/usr/platform/`uname -i`/sbin/prtdiag -v > $DIRNAME/diag/prtdiag-v.txt


metadb > $DIRNAME/diag/metadb.txt

metastat > $DIRNAME/diag/metastat.txt

metastat -p > $DIRNAME/diag/metastat-p.txt

#

mt stat > $DIRNAME/diag/mt-stat.txt

ls -la / | sort > $DIRNAME/diag/ls-l_root.txt

ls -l /var/crash/`uname -n` > $DIRNAME/diag/ls-l_var_crash_`uname -n`.txt

ls -l /dev/rmt > $DIRNAME/diag/ls-l_dev_rmt.txt

ls -l /dev/rdsk > $DIRNAME/diag/ls-l_dev_rdsk.txt

ls -l /dev/dsk > $DIRNAME/diag/ls-l_dev_dsk.txt

dmesg > $DIRNAME/diag/dmesg.txt

#

eeprom > $DIRNAME/diag/eeprom.txt

cfgadm -al > $DIRNAME/diag/cfgadm-al.txt

luxadm probe > $DIRNAME/diag/luxadm_probe.txt

luxadm probe -p > $DIRNAME/diag/luxadm_probe-p.txt

luxadm -e port > $DIRNAME/diag/luxadm-e_port.txt

luxadm fcode download -p > $DIRNAME/diag/luxadm_fcode_download-p.txt

format < /dev/null > $DIRNAME/diag/format.txt

diskinfo > $DIRNAME/diag/diskinfo.txt

prtpicl -v > $DIRNAME/diag/prtpicl-v.txt

iostat -E > $DIRNAME/diag/iostat-E.txt

iostat -En > $DIRNAME/diag/iostat-En.txt

raidctl > $DIRNAME/diag/raidctl.txt

df -k > $DIRNAME/diag/df.txt

cp /var/adm/messages $DIRNAME/diag/tail_var_adm_messages.txt

cp /etc/path_to_inst $DIRNAME/diag/path_to_inst.txt

cp /usr/lib/powerchute/powerchute.log $DIRNAME/diag/powerchute_log.txt

###################################################################################################

#

#

# informix

cp /export/home/informix/etc/onconfig $DIRNAME/informix/onconfig.txt

ls -la /export/home/informix/chunks > $DIRNAME/informix/chunks_la.txt

ls -lL /export/home/informix/chunks > $DIRNAME/informix/chunks_lL.txt

su - informix -c 'onstat -d > $DIRNAME/informix/onstat-d.txt'

###################################################################################################

#

#

# output

cd /tmp

tar cvf /tmp/$OUTPUTFILE.tar $OUTPUTFILE

compress $OUTPUTFILE.tar

clear

banner Gotovo

echo .

echo Zaberi archiv /tmp/$OUTPUTFILE.tar.Z

echo "Please send it to admin@PostDomain.kz (ну, здесь пишите свой ящик) "

echo .

#

###################################################################################################

конец скрипта - предыдущая строка

для зауска скрипта необходимо выполнить несколько действий (приведу один вариант):

1. забрать содержимое скрипта в буфер обмена

2. создать на ПК текстовый документ с именем tnm.sh и вставить в его тело данные из буфера обмена

3. сохранить файл

4. скопировать созданный файл по протоколу FTP в ASCII режиме на рабочую станцию или сервер Unix

5. установить телнет (или ssh) соединение с машиной, с той, куда произвели копирование скрипта

6. перейти в каталог со скриптом и выполнить chmod +x tnm.sh

7. выполнить "./tnm.sh"

8. по протоколу FTP "забрать" файл на ПК для проведения анализа