December 19, 2009

Advance command for System Administrator

To get the list of username with its user ID in formatted way:

Quote
# awk -F":" '{ print "username: " $1 "\t\tuid:" $3 }' /etc/passwd

Find the particular string from the list of files in current directory:

Quote
# cd /etc
# for i in $(find -type f); do grep -iH nfsnobody $i; done

Or

Quote
# grep -iH nfsnobody *

Get the no of occurrences of particular word in file:

Quote
# awk '/ServerName/ {i=i+1} END {print i}' /etc/httpd/conf/httpd.conf
# grep ServerName /etc/httpd/conf/httpd.conf

To delete resources of semaphore arrays from memory:

Quote
# ipcs -s | grep apache | perl -e 'while () { @a=split(/\s+/); print`ipcrm sem $a[1]`}'

To check whether perl module is installed correctly or not:

If all is correct then output of this command nothing

Quote
# perl -e 'require Mail::SPF::Query'


To install CPAN module:
Quote
#cpan
cpan> install Mail::SPF::Query
CPAN: Storable loaded ok
Going to read /root/.cpan/Metadata
Database was generated on Thu, 24 Nov 2005 14:54:20 GMT
Mail::SPF::Query is up to date.


To get the list of IP addresses in the server:

Quote
#ifconfig | grep -vw inet6 | grep -w inet | cut -d : -f 2 | cut -d \ -f 1

Find list of IP address along with eth device and network mask:

Quote
# ifconfig | cut -d " " -f1,12,16 | grep -A 1 eth | tr -d - | tr -s "\n" |sed -e :a -e N -e 's/\n/ /'

Know the performance of your HardDisk:

change the device address as per your servers configuration

Quote
# hdparm -Tt /dev/sda


Get the customized output of raw accesslog of httpd:
Navigate the folder where your http access log reside

Quote
# tail -f access_log | awk '{if ($11 ~"\"-\"") print $1, $7, $12; else print $1, $10, $11, $12}'

The details of the present http connections can be found by using:

Quote
# netstat -plan | grep ":80 " | awk {'print $5'} |awk -F: {'print $1'}|sort
# cat /proc/net/ip_conntrack | grep "port=80" | wc -l

Number of connection from perticular IP addfess:

Quote
# netstat -ntu | awk '{print $5}'| cut -d: -f1 | sort | uniq -c | sort -nr | more

No of conections:

Quote
# netstat -alntp

#/sbin/ldconfig /usr/local/lib - Update the system linker cache

Port scanning using nmap:
You can customized it to get more informative output

Quote
# nmap -sS localhost -
instead host localhost, it could be IP address of another server which is in question

You can execute bash command a certain number of times by using something similar to the following:


Quote
n=0;while test -$n -gt -10; do echo n=$n; n=$[$n+1]; done

That code will print "n=0", "n=1", and so on 10 times.

Only get the listing of directories:

Quote
ls -F $1 | grep \/ | sed -e 's/\/$/4/g'

Real Time Network Activity Examples:
Quote
root# watch -d "netstat -nalp |grep -v DGRAM |grep -v STREAM |grep -v LISTEN"
root# watch "netstat -nalp"|grep ":TCP PORT Number"
root# watch "netstat -nalp"|grep ":22"


I think below command will be use to know the highest process used by IP address for particular services

Quote
netstat -tnp | awk -F':|/|\t*| *' '{if( $7 == "25" ) {print; $cmd=sprintf("ps -uwwwp %d",$9);system($cmd);}}'

Return which ports are currently being listened :

Quote
netstat -ant | grep LISTEN | sed -n 's/^[^:]*:\([0-9]\+\) .*$/\1/p'

No comments:

Post a Comment