linux/unix commands for the new dba





you will find below basic commands that are required for a new dba in a unix environment. linux is similar to unix so these commands will help you even on linux. in case there are small syntactical differences in linux then use the man function..

man function means ..once you log in into a unix or linux server..if you want to find more information about a command ..just type

man commandname

replace the commandname above with your command like cp or rm etc.

how to change the shell environment

when typing on the command prompt  do $bash and you will go to the bash shell
in the bash shell you can type a word and press tab and it will show all the directories with that name.In korn shell you can press esc and then backspace ..but bash seems to be more good than korn shell

This article contains a brief list of commands that most UNIX DBAs will need on a regular basis.
·    Basic File Navigation
·    File Permissions
·    OS User Management
·    Process Management
·    uname and hostname
·    Error Lines in Files
·    File Exists Check
·    Remove Old Files
·    Remove DOS CR/LFs (^M)
·    Run Commands As Oracle User From Root
·    Compress Files
·    General Performance
o    vmstat
·    CPU Usage
o    sar
o    mpstat
o    ps
·    Automatic Startup Scripts on Linux
·    CRON
·    Cluster Wide CRON Jobs On Tru64
·    NFS Mount (Sun)
·    NFS Mount (Tru64)
·    PC XStation Configuration
·    Useful Profile Settings
·    Useful Files

Basic File Navigation
The "pwd" command displays the current directory:
root> pwd
/u01/app/oracle/product/9.2.0.1.0

The "ls" command lists all files and directories in the specified directory.
If no location is defined it acts on the current directory:
root> ls
root> ls /u01
root> ls -al

The "-a" flag lists hidden "." files. The "-l" flag lists file details.

The "cd" command is used to change directories:
root> cd /u01/app/oracle

The "touch" command is used to create a new empty file with the default permissions:
root> touch my.log

The "rm" command is used to delete files and directories:
root> rm my.log
root> rm -R /archive
The "-R" flag tells the command to recurse through subdirectories.

The "mv" command is used to move or rename files and directories:
root> mv [from] [to]
root> mv my.log my1.log
root> mv * /archive
root> mv /archive/* .
The "." represents the current directory

The "cp" command is used to copy files and directories:
root> cp [from] [to]
root> cp my.log my1.log
root> cp * /archive
root> cp /archive/* .

The "mkdir" command is used to create new directories:
root> mkdir archive

The "rmdir" command is used to delete directories:
root> rmdir archive
The "find" command can be used to find the location of specific files:

root> find / -name dbmspool.sql
root> find / -print | grep -i dbmspool.sql
The "/" flag represents the staring directory for the search. Wildcards such as "dbms*" can be used for the filename.

The "which" command can be used to find the location of an executable you are using:
oracle> which sqlplus
The "which" command searches your PATH setting for occurences of the specified executable.

File Permissions
The "umask" command can be used to read or set default file permissions for the current user:
root> umask 022
The umask value is subtracted from the default permissions (666) to give the final permission:
666 : Default permission
022 : – umask value
644 : final permission

he "chmod" command is used to alter file permissions after the file has been created:
root> chmod 777 *.log

Owner      Group      World      Permission
=========  =========  =========  ======================
(u+rwx)  7 (g+rwx)  7 (o+rwx)  read + write + execute
6 (u+wx)   6 (g+wx)   6 (o+wx)   write + execute
5 (u+Rx)   5 (g+Rx)   5 (o+Rx)   read + execute
4 (u+r)    4 (g+r)    4 (o+r)    read only
2 (u+w)    2 (g+w)    2 (o+w)    write only
1 (u+x)    1 (g+x)    1 (o+x)    execute only

+

Character eqivalents can be used in the chmod command:
root> chmod o+rwx *.log
root> chmod g+r   *.log
root> chmod -Rx   *.log

The "chown" command is used to reset the ownership of files after creation:
root> chown -R oinstall.dba *
The "-R" flag causes the command ro recurse through any subdirectories.

OS Users Management

The "useradd" command is used to add OS users:
root> useradd -G oinstall -g dba -d /usr/users/my_user -m -s /bin/ksh my_user
·    The "-G" flag specifies the primary group.
·    The "-g" flag specifies the secondary group.
·    The "-d" flag specifies the default directory.
·    The "-m" flag creates the default directory.
·    The "-s" flag specifies the default shell.
The "usermod" command is used to modify the user settings after a user has been created:
root> usermod -s /bin/csh my_user
The "userdel" command is used to delete existing users:
root> userdel -r my_user
The "-r" flag removes the default directory.

The "passwd" command is used to set, or reset, the users login password:
root> passwd my_user
The "who" command can be used to list all users who have OS connections:

root> who
root> who | head -5
root> who | tail -5
root> who | grep -i ora
root> who | wc -l
·    The "head -5" command restricts the output to the first 5 lines of the who command.
·    The "tail -5" command restricts the output to the last 5 lines of the who command.
·    The "grep -i ora" command restricts the output to lines containing "ora".
·    The "wc -l" command returns the number of lines from "who", and hence the number of connected users.

Process Management
The "ps" command lists current process information:
root> ps
root> ps -ef | grep -i ora
Specific processes can be killed by specifying the process id in the kill command:
root> kill -9 12345

uname and hostname
The "uname" and "hostname" commands can be used to get information about the host:
root> uname -a
OSF1 oradb01.lynx.co.uk V5.1 2650 alpha

root> uname -a | awk ‘{ print $2 }’
oradb01.lynx.co.uk

root> hostname
oradb01.lynx.co.uk

Error Lines in Files
You can return the error lines in a file using:
root> cat alert_LIN1.log | grep -i ORA-
The "grep -i ORA-" command limits the output to lines containing "ORA-". The "-i" flag makes the comparison case insensitive. A count of the error lines can be returned using the "wc" command. This normally give a word count, but the "-l" flag alteres it to give a line count:
root> cat alert_LIN1.log | grep -i ORA- | wc -l
File Exists Check
The Korn shell allows you to check for the presence of a file using the "test -s" command. In the following script a backup log is renamed and moved if it is present:
#!/bin/ksh
if test -s /backup/daily_backup.log
then
DATE_SUFFIX=`date +"%y""%m""%d""%H""%M"`
mv /backup/daily_backup.log /backup/archive/daily_backup$DATE_SUFFIX.log
fi

Remove Old Files
The find command can be used to supply a list of files to the rm command:
find /backup/logs/ -name daily_backup* -mtime +21 -exec rm -f {} ;

Remove DOS CR/LFs (^M)
Remove DOS style CR/LF characters (^M) from UNIX files using:
sed -e ‘s/^M$//’ filename > tempfile
The newly created tempfile should have the ^M character removed.

Run Commands As Oracle User From Root
The following scripts shows how a number of commands can be run as the "oracle" user the "root" user:
#!/bin/ksh
su – oracle <<EOF
ORACLE_SID=LIN1; export ORACLE_SID
rman catalog=rman/rman@w2k1 target=/ cmdfile=my_cmdfile log=my_logfile append
EOF
This is often necessary where CRON jobs are run from the root user rather than the oracle user.

Compress Files
In order to save space on the filesystem you may wish to compress files such as archived redo logs. This can be using either the gzip or the compress commands. The gzip command results in a compressed copy of the original file with a ".gz" extension. The gunzip command reverses this process:
gzip myfile
gunzip myfile.gz
The compress command results in a compressed copy of the original file with a ".Z" extension. The uncompress command reverses this process:
compress myfile
uncompress myfile

to delete/cut lines from a file

Assuming you want to delete the first 1000 lines, do

sed 1,1000d file > /tmp/$$ && mv /tmp/$$ file
**file is your filename
# delete the first 10 lines of a file
sed ‘1,10d’

# delete the last line of a file
sed ‘$d’

# delete the last 2 lines of a file
sed ‘N;$!P;$!D;$d’

To remove ^M characters

when you copy a file from windows into a unix/linux system the file will have unwanted ^M characters. you can remove them usingthe below command.

I am not sure if HP-UX has
this command, but with Solaris you
can just do:
dos2unix <dos file> <unix file>

where <dos file>  is your original file name and <unix file> is some new filename.

you can also do viceversa using unix2dos



Author: admin