Vous êtes sur la page 1sur 7

System status check

Listed here are a few system monitoring commands which should give you a rough idea of how the server is running.
# server information uname -a # server config information prtconf sysdef -i # server up time uptime # disk free, listed in KB df -kt # mounted devices mount # network status netstat -rn # network configuration info ifconfig -a # processes currently running ps -elf # user processes w whodo who am i finger ps # virtual memory statistics vmstat 5 5 # system activity reporter (Solaris/AIX) sar 5 5 # report per processor statistics (Solaris) mpstat 5 5 psrinfo # swap disk status (Solaris) swap -l # shared memory ipcs -b

Solaris note: SAR numbers can be misleading: as memory use by processes is freed, but not considered 'available' by the reporting tool. Solaris support has recommended using the SR (swap rate) column of vmstats to monitor the

availability of memory. When this number reaches 150+, a kernel panic may ensue.

System startup
The kernel is loaded by the boot command, which is executed during startup in a machine-specific way. The kernel may exist on a local disk, CD-ROM, or network. After the kernel loads, the necessary file systems are mounted (located in /etc/vfstab), and /sbin/init is run, which brings the system up to the "initdefault" state set in /etc/inittab. Subsystems are started by scripts in the /etc/rc1.d,/etc/rc2.d, and /etc/rc3.d directories.

System shutdown
# shutdown the server in 60 seconds, restart system in administrative state # (Solaris) /usr/sbin/shutdown -y -g60 -i1 "System is begin restarted" # shutdown the server immediately, cold state # (Solaris) /usr/sbin/shutdown -y -g0 -i0 # shutdown AIX server, reboot .. also Ctrl-Ctrl/Alt shutdown -Fr

# restart the server /usr/sbin/reboot

User accounts
Adding a unix account involves creating the login and home directory, assigning a group, adding a description, and setting the password. The .profile script should then be placed in the home directory.
# add jsmith account .. the -m parm forces the home dir creation useradd -c "Jim Smith" -d /home/jsmith -m -s "/usr/bin/ksh" jsmith # change group for jsmith chgrp staff jsmith # change jsmith password passwd jsmith # change jsmith description usermod -c "J.Smith" jsmith # remove ksmith account userdel ksmith

# display user accounts cat /etc/passwd /* here is a sample .profile script, for sh or ksh */ stty istrip stty erase ^H PATH=/usr/bin:/usr/ucb:/etc:/usr/lib/scripts:/usr/sbin:. export PATH PS1='BOXNAME:$PWD>' export PS1

Displaying files
# display file contents cat myfile # determine file type file myfile # display file, a screen at a time (Solaris) pg myfile # display first 100 lines of a file head -100 myfile # display last 50 lines of a file tail -50 myfile # display file that is changing, dynamically tail errlog.out -f

File permissions
Permission flags: r = read, w = write, x = execute Permissions are displayed for owner, group, and others.
# display files, with permissions ls -l # make file readable, writeable, and executable for group/others chmod 777 myfile # make file readable and executable for group/others chmod 755 myfile # make file inaccessible for all but the owner chmod 700 myfile # make file readable and executable for group/others, # user assumes owner's group during execution chmod 4755 myfile # change permission flags for directory contents

chmod -R mydir # change group to staff for this file chgrp staff myfile # change owner to jsmith for this file chown jsmith myfile

Listing files
See scripting examples for more elaborate file listings.
# list all files, with directory indicator, long format ls -lpa # list all files, sorted by date, ascending ls -lpatr # list all text files ls *.txt

Moving/copying files
See scripting examples for moving and renaming collections of files.
# rename file to backup copy mv myfile myfile.bak # copy file to backup copy cp myfile myfile.bak # move file to tmp directory mv myfile /tmp # copy file from tmp dir to current directory cp /tmp/myfile .

Deleting files
See scripting examples for group dissection routines.
# delete the file rm myfile # delete directory rd mydir # delete directory, and all files in it rm -r mydir

Disk usage
# display disk free, in KB df -kt # display disk usage, in KB for directory du -k mydir # display directory disk usage, sort by largest first du -ak / | sort -nr | pg

Using tar
# display contents of a file tar tvf myfile.tar # display contents of a diskette (Solaris) volcheck tar tvf /vol/dev/rdiskette0/unnamed_floppy # copy files to a tar file tar cvf myfile.tar *.sql # format floppy, and copy files to it (Solaris) fdformat -U -b floppy99 tar cvf /vol/dev/rdiskette0/floppy99 *.sql # append files to a tar file tar rvfn myfile.tar *.txt # extract files from a tar filem to current dir tar xvf myfile.tar

Starting a process
This section briefly describes how to start a process from the command line.
Glossary: & - run in background nohup (No Hang Up) - lets process continue, even if session is disconnected # run a script, in the background runbackup & # run a script, allow it to continue after logging off nohup runbackup & # Here nohup.out will still be created, but any output will # show up in test70.log. Errors will appear in nohup.out.

nohup /export/spare/hmc/scripts/test70 > test70.log &

# Here nohup.out will not be created; any output will # show up in test70.log. Errors will appear test70.log also ! nohup /export/spare/hmc/scripts/test70 > test70.log 2>&1 &

Killing a process
1) In your own session; out: ps kill -9 < process id> e.g. jobs were submitted, but you never logged # list jobs # kill it

2) In a separate session # process ID appears as column 4 ps -elf | grep -i kill -9 < process id> # kill it


For device (or file)

# find out who is logged in from where w # select device, and add /dev ... then use the fuser command fuser -k /dev/pts/3

Redirecting output
Output can be directed to another program or to a file.
# send output to a file runbackup > /tmp/backup.log

# also redirect error output runbackup > /tmp/backup.log 2> /tmp/errors.log # send output to grep program runbackup | grep "serious"

Date stamping, and other errata

Other errata is included in this section
# Date stamping files # format is : # touch -t yyyymmddhhmi.ss filename touch -t 199810311530.00 hallowfile # lowercase functions (ksh) typeset -u newfile=$filename # date formatting, yields 112098 for example date '+%m%d%y' # display a calendar (Solaris / AIX) cal # route output to both test.txt and std output ./runbackup | tee test.txt # sleep for 5 seconds sleep 5 # send a message to all users wall "lunch is ready" # edit file, which displays at login time (message of the day) vi /etc/motd # edit file, which displays before login time (Solaris) vi /etc/issue