Help with ksh scripting in AIX


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Help with ksh scripting in AIX
# 1  
Old 08-13-2010
Help with ksh scripting in AIX

I am looking for a script which does the following

Script will run daily.

1.It will get snapshot off all filesystems including nfs mounts, automounts and clearcase mounts.
2.Then it will compare new snapshot with the snapshot created in the previous run.
3.If filesystem exists in previous day snapshot and in new snapshot save file system in snapshot and continue.
4.If filesystem exists in new snapshot and does not exist in the previous day snapshot send an e-mail .
5.If filesystem exists in the previous day snapshot and does not exist in new snapshot send e-mail with high priority indicating the potential problems.
thx a lot !
sai
# 2  
Old 08-13-2010
Anything you have tried so far on your own? Anything where got stuck in particular?
# 3  
Old 08-13-2010
Help with ksh in AIX

I tried this but looking for a better logic

Code:
HOSTNM=`hostname`
DATE=$(date +"%d-%b-%y %H:%M")
SHORTNAME="FileSystem Mount"
LONGNAME="Filesystem check"
#checking filesystem if its mounted or not
df -k |grep '/dev/hd4|/dev/hd2|/dev/hd9var|/dev/hd3|/dev/hd1|/proc|/dev/hd10opt|/dev/exportlv|/dev/optwarelv|/dev/orabinlv|/dev/ndmbinlv|/dev/oraclntlv|/dev/optswlv|/dev/cbnadlv|/dev/cbnabkplv|/dev/lvabinit1|/dev/lvappl|/dev/lveme|/dev/lvadmd1|/dev/lvserial|/dev/lvdata01|/dev/lvdata02|/dev/lvdata03|/dev/lvdata04|/dev/lvmeta1|/dev/lvabini1|/dev/lvstage1|/dev/lvfeed1|/dev/lvstage2|/dev/lvcmmigr|/dev/lvbkdata1|/dev/lvbkdata2|/dev/lvbkdata3|/dev/lvbkdata4|/dev/lveers1| /dev/expoptibmlv|/dev/expoptzloclv|/dev/performlv|/dev/sshcntllv|nasswd10v1prd.nam.nsroot.net:/vol/ClearCase/cbnabi|cchome01.core.afcc.com:/export/home' >d.txt
if [ d.txt == "1" ]
then
mail -s "Filesystem check pls inestigate "$DATE" "$HOSTNM" " xx@domain.com
else
mail -s "Filesystem check success  $DATE HOSTNM " xx@domain.com
fi
exit

I am looking for some good logic..Ofcourse this script was not working

---------- Post updated at 03:46 PM ---------- Previous update was at 11:10 AM ----------

Any help ..Most appreciated !

Last edited by DukeNuke2; 08-13-2010 at 01:15 PM..
# 4  
Old 08-13-2010
Code:
# I think the hostname is available as the preset var HOSTNAME.
# HOSTNM=`hostname`
DATE=$(date +"%d-%b-%y %H:%M")
SHORTNAME="FileSystem Mount"
LONGNAME="Filesystem check"
#I don't think grep supports |, just egrep.
# You can also break apart really, really long lines with backslashes
# so that it doesn't stretch your editor 3 miles wide.
#checking filesystem if its mounted or not
#df -k |grep '/dev/hd4|/dev/hd2|/dev/hd9var|/dev/hd3|/dev/hd1|/proc|...  >d.txt
# You can't just stick a file into []'s and expect it to work!
# You're probably trying to check the return code of grep instead, right?
# unfortunately, grep isn't going to work here since it'll return OK even if it
# finds only ONE of these filesystems.
#if [ d.txt == "1" ]
#then
#mail -s "Filesystem check pls inestigate "$DATE" "$HOSTNM" xx@domain.com
#else
#mail -s "Filesystem check success  $DATE HOSTNM " xx@domain.com
#fi
#exit

SUCCESS=0
# Create a temp file with a secure random name.
TMP=`mktemp`
df -h >$TMP
# Loop through each of these filesystems/paths individually.
# if I knew AIX well enough I might try reading from /etc/fstab instead
for DEV in /dev/hd4 /dev/hd2 /dev/hd9var /dev/hd3 /dev/hd1 \
        /proc /dev/hd10opt /dev/exportlv /dev/optwarelv \
        /dev/orabinlv/dev/ndmbinlv /dev/oraclntlv /dev/optswlv \
        /dev/cbnadlv /dev/cbnabkplv /dev/lvabinit1 /dev/lvappl \
        /dev/lveme /dev/lvadmd1 /dev/lvserial /dev/lvdata01 \
        /dev/lvdata02 /dev/lvdata03 /dev/lvdata04 /dev/lvmeta1 \
        /dev/lvabini1 /dev/lvstage1 /dev/lvfeed1 /dev/lvstage2 \
        /dev/lvcmmigr /dev/lvbkdata1 /dev/lvbkdata2 /dev/lvbkdata3 \
        /dev/lvbkdata4 /dev/lveers1 /dev/expoptibmlv \
        /dev/expoptzloclv /dev/performlv|/dev/sshcntllv
        nasswd10v1prd\.nam\.nsroot\.net:/vol/ClearCase/cbnabi \
        cchome01\.core\.afcc\.com:/export/home
do
        # Check if grep can find the device in the file.  If not, set SUCCESS=1.
        # The -q flag tells grep to not print anything, all we need is the return code.
        grep -q "${DEV}" "${TMP}" || SUCCESS=1
done
# Delete the temp file.
rm -f "$TMP"

if [ "${SUCCESS}" -eq 0 ]
then
       mail -s "Filesystem check success $DATE $HOSTNAME" xx@domain.com 
else
       mail -s "Filesystem check pls inestigate $DATE $HOSTNAME" xx@domain.com
fi

# 5  
Old 08-14-2010
Is this script written by you is in aix?

Somehow error is coming while i execute .Pls advice me some other logic as the clearcase mount doesnot start with /dev

Many thx and appreciate your help

thx again !

sai
# 6  
Old 08-14-2010
My crystal ball is still in for maintenance. What error is coming up?

The script doesn't care if the clearcase mount starts with /dev/, you can put anything you want in that list.
This User Gave Thanks to Corona688 For This Post:
# 7  
Old 08-14-2010
I have prepared another script with your logic

Pls advice me if this logic works good as i find /etc/filesystems as aix dont have fstab

I hope this script logic is simple and less .Thanks for your advice .Pls advice anything wrong here

I am comparing the original etc/filesystem and todays .after comparing i will redirect it to a tmp file

pls advice again..U are gr8 would like your email address and phone number so that i can get good advice as i am looking for help for writting another script also

Code:
DATE=$(date +"%d-%b-%y %H:%M")
SHORTNAME="FileSystem Mount"
LONGNAME="Filesystem check"
TMP ="/home/cchome01/km17590/temp"
#I am storing the snapshot of the original filestem in /etc/filesystems as original.txt in my home directory
cat /etc/filesystems > today.txt
cmp original.txt today.txt >$TMP
grep -q "${TMP}" || SUCCESS= 

if [ "${SUCCESS}" -eq 0 ]
then
       mail -s "Filesystem check success $DATE $HOSTNAME" xx@domain.com 
else
       mail -s "Filesystem check pls inestigate $DATE $HOSTNAME" xx@domain.com
#Delete the temp file.
rm -f "$TMP"
fi

Thx a lot
Sai

Last edited by Scott; 08-14-2010 at 02:00 PM.. Reason: Please use code tags
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

KSH scripting

Hi Guys, I am trying to learn to script. first I have 2 server, A and B. A with IP 192.168.82.22. B with IP 192.168.82.44. Both with login user admin and password admin. server A will generate a file every day with name gg.log under /app/gg/20171002.log. I wish to write a script to copy the... (7 Replies)
Discussion started by: leecopper
7 Replies

2. Shell Programming and Scripting

ksh scripting

Hi All, Can you please let me know what I missed in the below function? Whenever I try to execute the script i am getting syntax error at line 101 : `fi' unexpected Function is function DELNWE5O { export ORACLE_HOME=/ora00/app/oracle/product/11.2.0/grid_1 export... (9 Replies)
Discussion started by: pvmanikandan
9 Replies

3. Shell Programming and Scripting

AIX 5.3 ksh Scripting

Hi, I posted a request for sever OS types earlier, but got no response. In an attempt to at least have a starting point, I think scaling it to one OS is preferred. Once I see the gist of it I can modify to account for different cases. I need a script that will go and check to see if an LDAP... (2 Replies)
Discussion started by: tekster2
2 Replies

4. Shell Programming and Scripting

help with ksh shell scripting

I want to run a script that checks the env to see if I'm in a test or prod environment. From the command line I enter echo $host and it returns host name and I can tell by the name if I'm in test or prod. When I run the command from a script I get "not found" What's wrong with the script? if ... (2 Replies)
Discussion started by: Bperl1967
2 Replies

5. Shell Programming and Scripting

help in ksh scripting in aix

Hello gurus I am looking for a script : We need to generate a file list created by user id on a AIX box. Criteria 1: other than userid : dwimpid & aiadmin Criteria 2: Files older than 2 months ( it can be any user id ). File Path to Look: /project and /project1 Thx silu (7 Replies)
Discussion started by: silu
7 Replies

6. Shell Programming and Scripting

Need help in writing AIX ksh scripting

I need to write the script for the below constraints. Need your help urgently The PATH environment variable must conform to the following: • World-writeable directories (/tmp, /var/tmp etc) must not be placed in the PATH variable. • System directories must always be placed before local... (1 Reply)
Discussion started by: kmvinay
1 Replies

7. Shell Programming and Scripting

ksh scripting help

I have the file as below server1 no dr aix 5300-05-03 9119-595 20-18888 yes ftp-eagle server2 no dr aix 5300-05-03 9119-595 20-18888 yes ftp-eagle server3 yes dr aix 5300-05-03 9119-595 20-18888 yes ftp-eagle server4 ... (1 Reply)
Discussion started by: praveenbvarrier
1 Replies

8. Shell Programming and Scripting

Need help with KSH scripting

Hi I need to insert a page break into a file based on matching a phrase in the file. :confused: I am doing this with a ksh script on a Unix box. Any help would be greatly appreciated. Thanks (5 Replies)
Discussion started by: scrappycc
5 Replies

9. Shell Programming and Scripting

scripting guru's pls help me with scripting on AIX

can someone pls help me with the script for a files coming from one system to a particular directory and i want to write a script to move those files to another directory on different system by renaming the files... pls someone help me on this... thanking in anticipation.... (1 Reply)
Discussion started by: thatiprashant
1 Replies

10. Shell Programming and Scripting

KSH Scripting

Will a shell script written in shell for HP/UX run on Solaris? (1 Reply)
Discussion started by: dstaller
1 Replies
Login or Register to Ask a Question