Monday, January 8, 2018

Bash shell script to list Ethernet interfaces names and IPaddress on linux server.

If there are multiple IP addresses public, private, backup, etc are in use on linux server it takes a bit more of time to scroll down through the output of 'ifconfig' command and find the IP address assigned to it.

I have created a shell script which list all the Ethernet interfaces and IP address assigned to them on Linux server.


nic=$(ifconfig | cut -d" " -f1 | sed '/^$/d' | awk -vORS=',' '{ print $1}' | sed -e s/,$//g)

read -ra i <<< "$nic"
for i in "${i[@]}"; do
echo "$i ---> $(ifconfig | grep -A 1 -i $i | sed -n '2p' | awk -F" " '{ print $2 }' | cut -d":" -f2)"

eth0 --->
lo --->

Saturday, January 6, 2018

How to set a default tray for a printer in Linux?

When there are multiple trays available in the printer and we want the printer to pick papers from a specific tray we can use the below command.

# lpoptions -p <printer name> -o InputSlot=<TrayN>

# lpoptions -p billing -o InputSlot=Tray2

Here the printer billing will use Tray2 as the default tray.

You can check it to make sure if the printer billing is using the Tray2.
# lpoptions -p billing -l | grep  InputSlot
  InputSlot/Media Source: Auto Tray1 *Tray2 Tray3 Tray4

Note that the asterisk (*) in front of the Tray2.

Tuesday, July 5, 2011

How to check server configuration details in Linux

Here i am showing some basic commands using them you can gather the system/server information.

To check what version of Operating System is installed on the server you can use the following commands:-
 ================================================================= /etc/issue
[root@localhost ~]# cat /etc/issue
Red Hat Enterprise Linux Server release 5.5 (Tikanga)
Kernel \r on an \m /etc/redhat-release
[root@localhost ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 5.5 (Tikanga)

3.lsb_release -a
[root@localhost ~]# lsb_release -a
LSB Version:    :core-3.1-ia32:core-3.1-noarch:graphics-3.1-ia32:graphics-3.1-noarch
Distributor ID: RedHatEnterpriseServer
Description:    Red Hat Enterprise Linux Server release 5.5 (Tikanga)
Release:        5.5
Codename:       Tikanga

To check whether the operating system is 32 or 64bit:-
# uname -i
[root@localhost ~]# uname -i
(i386 represents that server is having 32bit operating system)

[root@localhost ~]# uname -i
(x86_64 represents that server is having 64bit operating system)

To see the processor/CPU information:-
# cat /proc/cpuinfo
[root@localhost ~] cat /proc/cpuinfo
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 15
model name      : Intel(R) Xeon(R) CPU            5130  @ 2.00GHz
stepping        : 6
cpu MHz         : 1995.087
cache size      : 4096 KB
physical id     : 0
siblings        : 2
core id         : 0
cpu cores       : 2
apicid          : 0
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 10
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc pni monitor ds_cpl vmx tm2 ssse3 cx16 xtpr lahf_lm
bogomips        : 3990.17
(Here processor number 0 indicates that the system is having one process(processor number starts with zero))

To check memory information:-
# free -m
[root@localhost ~]# free -m
             total       used       free     shared    buffers     cached
Mem:          5066       3513       1552          0        612       2319
-/+ buffers/cache:        582       4484
Swap:         1983          0       1983

# cat /proc/meminfo
[root@localhost ~]# cat /proc/meminfo
MemTotal:      5187752 kB
MemFree:       1639300 kB
Buffers:        627024 kB
Cached:        2374944 kB
SwapCached:          0 kB
Active:        2458788 kB
Inactive:       920964 kB
HighTotal:     4325164 kB
HighFree:      1561936 kB
LowTotal:       862588 kB
LowFree:         77364 kB
SwapTotal:     2031608 kB
SwapFree:      2031608 kB
Dirty:             704 kB
Writeback:           0 kB
AnonPages:      377892 kB
Mapped:          35328 kB
Slab:           153036 kB
PageTables:       6316 kB
NFS_Unstable:        0 kB
Bounce:              0 kB
CommitLimit:   4625484 kB
Committed_AS:   977132 kB
VmallocTotal:   116728 kB
VmallocUsed:      4492 kB
VmallocChunk:   112124 kB
HugePages_Total:     0
HugePages_Free:      0
HugePages_Rsvd:      0
Hugepagesize:     2048 kB

To check the model and serial name of the server:-
[root@localhost ~]#  dmidecode | egrep -i "product name|Serial number"
Product Name: PowerEdge R710
Serial Number: AB8CDE1

To check the host name:-
[root@localhost ~]# uname -n

[root@localhost ~]# hostname

To check the kernel version:-
[root@localhost ~]# uname -r

Monday, May 23, 2011

Commands to check errors in configuration files

In Linux, Once the service configuration has been done we can check the configuration files for errors.

Check Samba configuration file for errors with "testparm" command.
# testparm

Check HTTP(apache) configuration file for errors with the following commands
# apchectl configtest
# httpd -t
# service httpd configtest
(You can use any of the above commands to check the errors for apache)

Check SSH configuration file for errors
# sshd -t

Check  DNS configuration file for errors
# named-checkconf  /var/named/chroot/etc/named.conf
The above command will check the configuration file for errors

If you want to check the DNS zone file for errors , use the following command
Syntax: named-checkzone <domain name>  <path to zone file>
Ex: # named-checkzone  /var/named/chroot/var/named/

If the commands display the result as "OK" then the service is properly configured and you can restart the services or if you get any errors fix them.

Wednesday, May 18, 2011

Backup and Restore the Subversion Repository

It is a good practice backup Subversion repository to avoid any loss of data and sometimes you may need to move the svn repository from one server to another server.You can move your repository to another server with the following method.

1. Backup your repository( Create dump)
# svnadmin dump /path to /repository   >  repositoryname.dump

2. Copy the dump file to the new server
# scp -r repositoryname.dump   username@ipaddress:/destination path
Here destination path is location on the target server where the dump file has to be copied.

3. Create a new Repository on the target server
# svnadmin create <repositoryname>
Ex: #svnadmin create /var/www/testrepo

4.Import the dump file to the new repository.
# svnadmin load  /path to repository  <  repositoryname.dump

Wednesday, April 27, 2011

How to rename multple files at once in Linux

Suppose you have many html files which needs be backed up. In this case you can use the "rename" command.

# rename .html .html.bak  *.html

The above command will rename all the files which have extension .html to .html.bak in the current directory.

Friday, January 28, 2011

Creating an empty file having a specific size using dd command

Using the most popular dd command in Linux/Unix you can create a file having a
specific size. It can be Created for Testing purpose. Example when you are configuring disk quota.

dd if=/dev/zero of=example.txt  bs=1M count=1024
It will create an empty file of size 1GB

Here  if = input file , of = output file (it could be any name which you want), bs= block size, here I have mentioned M, it specifies MB(mega byte), if you want to create a file in KB(kilo byte) you need to specify bs with k( bs=10k).