Sunday 29 September 2013

Tips & Tricks to be comfortable on KSH

IBM AIX has ksh as the default shell. I found tremendous few unknown features in ksh.

Set the following on the command line or in your .profile file.

"set -o emacs"

    -- Allows for commands filenames & command completion with "[ESC] [ESC]" ( Hit [ESC] twice).
    -- History of commands can be accessed with "[CTRL]+p" and "[CTRL]+n" key combinations.

"set -o vi"

    -- Allows for commands filenames & command completion with "[ESC] \"(backslash).
    -- History of commands can be accessed with [ESC] once then "k" any number of times for previous command.
    -- History of commands can be accessed with [ESC] once then "j" any number of times for next command.
    -- Press "v" for editing the whole command in a VI editor.
    -- [ESC]-/string - where string is the text string you’re searching for. You can also use the “N” and “n”    to move forward and backward in your searches, respectively.
    -- All other vi keys will work like "^" for starting of the command, "$" for end of command line.

"fc" Operator

    -- IBM AIX has the "r" alias pointing to "fc -e -". Repeat the last command by simply typing the "r" and      the starting part of the previous command.

    -- Example you have used a command "find /var -name '*log*'" And want to execute it again. Simply      type "rf", you will get that command being executed.

"stty erase ^H"

    -- Can be used to set the backspace as the standard CLI deleting key stroke.(To get the ^H, simply type backspace)


AIX OS errpt error output explained

errpt - The errpt command generates an error report from entries in an error log
# errpt
982C78BF   0930152713 T S mir0           DISPLAY ADAPTER CONFIGURATION ERROR
0BA49C99   0930153113 T H scsi0          SCSI BUS ERROR
0BA49C99   0930153013 T H scsi0          SCSI BUS ERROR
49A83216   0930152913 T H hdisk0         DISK OPERATION ERROR
0BA49C99   0930152913 T H scsi0          SCSI BUS ERROR
0BA49C99   0930152813 T H scsi0          SCSI BUS ERROR
0BA49C99   0930152913 T H scsi0          SCSI BUS ERROR
7F88E76D   0929104913 P S console        SOFTWARE PROGRAM ERROR
9DBCFDEE   0929104613 T O errdemon       ERROR LOGGING TURNED ON
192AC071   0926092513 T O errdemon       ERROR LOGGING TURNED OFF
A6DF45AA   0925162713 I O RMCdaemon      The daemon is started.
1BA7DF4E   0925162713 P S SRC            SOFTWARE PROGRAM ERROR
BA431EB7   0925162713 P S SRC            SOFTWARE PROGRAM ERROR

Column-1 : ErrorID

Error Identifier can be used to get the full report from either errorlog using -j flag or from the error-template repository in combination with -t flag.

Column-2 : TIMESTAMP

    The timestamp can be interpreted like the following.
    0930152913 : (09 = Month, 30 = Day, 15 = Hour, 29 = Minutes, 13 = Year)

Column-3 : TYPE OF ERROR

    P - Permanent
    T - Temporary

Column-4 : ERRCLASS

    H - Hardware
    S - Software
    O - Operator Notice(Intiated with errlogger command)
    U - Undetermined

Column-5 : RESOURCE NAME

    The name of the resource that detected the error. It may not be the component having the problem.

Column-6: DESCRIPTION

    A short description of the error message extracted from the Template repository

A detailed format for a single identifier - Sample Output

# errpt  -a -j 49A83216
LABEL:          DISK_ERR4
IDENTIFIER:     49A83216

Date/Time:       Thu Sep 30 15:29:45 CST 2013
Sequence Number: 25
Machine Id:      000788574C00
Node Id:         localhost
Class:           H
Type:            TEMP
Resource Name:   hdisk0          
Resource Class:  disk
Resource Type:   scsd
Location:        P1/Z1-A0
VPD:             
        Manufacturer................IBM     
        Machine Type and Model......ST318305LW      
        FRU Number..................09P4429     
        ROS Level and ID............43353042
        Serial Number...............000A2D99
        EC Level....................H11936    
        Part Number.................09P4428     
        Device Specific.(Z0)........000003129F00013E
        Device Specific.(Z1)........0501C50B
        Device Specific.(Z2)........1000
        Device Specific.(Z3)........02121
        Device Specific.(Z4)........0001
        Device Specific.(Z5)........22
        Device Specific.(Z6)........162870 C  

Description
DISK OPERATION ERROR

Probable Causes
MEDIA
DASD DEVICE

User Causes
MEDIA DEFECTIVE

        Recommended Actions
        FOR REMOVABLE MEDIA, CHANGE MEDIA AND RETRY
        PERFORM PROBLEM DETERMINATION PROCEDURES

Failure Causes
MEDIA
DISK DRIVE

        Recommended Actions
        FOR REMOVABLE MEDIA, CHANGE MEDIA AND RETRY
        PERFORM PROBLEM DETERMINATION PROCEDURES

Detail Data
PATH ID
           0
SENSE DATA
0A00 0000 2800 00DB 67B0 0000 1800 0000 0200 0400 0000 0000 0000 0000 0000 0000 
0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 
0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 
0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 
0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 001A 0000 

ksh CLI Auto Complete on AIX

Here are some notes if you want to enjoy the same type of auto complete in ksh as bash users enjoy.

Set this first:

set -o vi
in your .profile or .login scripts ( this will make  permanent change)

To envoke the editor, simply hit the ESC key. Just like going from input mode to command mode inside of vi.

Some of the more useful key strokes:

ESC+\ = autocomplete, will complete upto the non-unique character.
ESC+* = space delimited list of all files that match the pattern you started with.
ESC+/str = search the commandline history for str.
ESC+n = search for the next occurance of str.
ESC+k = go back one in the commandline history.
ESC+j = go forward one in the commandline history.
ESC+$ = go to the end of the current line
ESC+0 = go to the beginning of the current line
ESC+i = return to insert mode
ESC+A = append to the end of the current line
ESC+I = insert from the beginning of the current line
ESC+fx = move cursor to the right until the next occurance of x
ESC+Fx = move cursor to the left until the next occurance of x
ESC+x = delete character under cursor and place it in the buffer
ESC+p = place the contents of the buffer after the cursor
(combining the last two keystrokes)
ESC+xp = transpose two characters (I use this alot)

AIX - Listing CPU, Memory(RAM), Hard disks, IP address

Understanding resource utilization and the spare capacity is becoming more important than ever. Processors,Memory are one of the most significant resources among all the available resources in a system, making processor/ memory utilization a critical metric for measuring the performance of a system running a workload.

As AIX Admin In your day to day admin job we  frequently asked to get cpu and memory values.They will play key roles in administration jobs.

To list presently staged/installed cpu,memory and hard-disk capacity  in the server , use below simple commands on the aix server.

Show CPU

# prtconf -s
# pmcycles -m
# lsdev -Cc processor
# bindprocessor -q

Show RAM/Capacity

# prtconf -m
# bootinfo -r
# lsattr -El sys0 -a realmem
# lsattr -El mem0
Below two commands, show what is available for processing. Means if the rmss is in place. They will report the simulated memory only.
# vmstat
# getconf REAL_MEMORY

Show Hard disks/Capacity

# lsdev -Cc disk
# lspv
# bootinfo -s hdisk0

Show IP Addresses

# ifconfig -a | grep inet
# lsattr -El en0 -a netaddr

Determining microprocessor speed

This section describes a process for determining microprocessor speed.

When using AIX and subsequent releases, the following code returns the processor speed in hertz (Hz):
lsattr -E -l proc0 | grep "Processor Speed"

When using earlier releases than AIX 5.1, use the uname command. Running the uname -m command produces output of the following form:
xxyyyyyymmss
where:

xx
00
yyyyyy
Unique CPU ID
mm
Model ID (the numbers to use to determine microprocessor speed)
ss
00 (Submodel)

AIX Technology Level(TL) update methods


As an AIX system administrator, you know the importance of keeping the systems up to date. Unfortunately, this is always a little tricky and, sometimes, due to the size of the environments, very hard to accomplish. This article shows the many ways available to update an AIX server.

Introduction

Staying current with the latest AIX Technology Level (TL) is always the best option to better availability, reliability and security. TL is a set of fixes, and new features added to an AIX version or new hardware support.

You should considered moving to a new TL version for the following reasons:

  • A new function provided in a new TL is needed.
  • If the existing TL is out or is about to go out of new fixes and service packs.
  • The system currently has a need for a fix, which is present on the new TL.
This article goes through the multiple ways of doing a TL update and the fallback options, as well. It shows the approved and supported TL upgrades methods provided by IBM.

Before you begin

TLs must be applied as a group. Installing a TL is an "all or nothing" operation. Installing a partial TL is not recognized from a support standpoint.

Before applying a TL, always create a backup of you current installation, and plan on a worst case scenario—on restoring that backup if needed to rollback the system to the previous level.

Also, TL updates should always be committed because they cannot be rejected. If a TL has been applied and needs to go back to the previous version, then a fallback plan is needed.

The general rule of thumb is to always create a backup before beginning. It can be any kind of image backup (mksysb image, a sysback image, etc).

After a valid backup image is available, the upgrade process can be started.

Also, it is a good practice to create a health checklist, that is, save as much as information from the system (netstat, ifconfig, lsvg, lsdev, lscfg, prtconf, etc.) and keep it somewhere other than the server that is being upgraded. Keep in mind that this information is only going to be used as support material in case of problems.

If the TL version to be installed is previous to AIX 5.3 TL10 and AIX 6.1 TL3, make sure all interim fixes (ifix) have been removed from the system. Listing 1 shows how to check for installed ifixes, and listing 2 shows how to uninstall an ifix:
Listing 1. Checking for installed ifixes
# emgr –l
Listing 2. Removing an ifix
# emgr –r –L <ifix Label>
For further information on how to use the emgr command, check IBM documentation or the man pages.

If you are updating to AIX 5.3 TL10 or AIX 6.1 TL3, these steps do not need to be executed since installp and emgr have been enhanced to automatically remove the ifix when present in the TL. Otherwise, the ifixes will have to be manually removed.

Check if all filesets are applied and are valid, as shown in Listing 3.
Listing 3. Checking installed filesets consistency
# instfix –i | grep ML
# lppchk –v
If problems are reported from running these commands, stop now and fix the problems. Applying a TL to an inconsistent AIX will not only damage the operating system, but it can also make it unbootable.

Next, all filesets in the APPLIED state needs to be COMMITTED. To commit them, follow the example in Listing 4.
Listing 4. Committing all APPLIED filesets
# installp -c -f -g –X
Or, use smitty commit and follow the instructions on the screen.

Here are most common methods that are used in AIX TL up gradations.

  1. Alternate Disk
  2. Multibos
  3. Same Disk
  4. Using NIM
Going forward you will learn about each method in detail.

Alternate disk

This is one of the most used practices to apply a new TL. It is referenced in IBM technical documents and books. Using an alternate disk gives the following options:

  1. Using a secondary disk and apply the TL without disruption, only rebooting after the TL upgrade is done—IBM recommends that all processes be terminated and users to be logged off (this procedure is covered in this article).

  2. Rebooting to a secondary disk and running the TL upgrade to what was the primary disk—some system administrator often use this to make sure the system is running on a consistent state and has no problems or malfunctions after a reboot is performed.
Either way, a free disk is needed to install using alternate disk.

For this alternate disk update method, the server to be updated has a rootvg with two mirrored disks. Therefore, unmirror it before beginning and use the second disk for the alternate disk installation, as shown in Listing 5.
Listing 5. Unmirroring rootvg
# unmirrorvg rootvg
If a secondary dump device is configured to use the secondary disk, move its LPs to the remaining disk using migratepv or unconfigure the secondary dump device.

Remove the disk from the rootvg (assuming that X is the disk device number), as seen on Listing 6.
Listing 6. Removing disk from the rootvg
# reducevg rootvg hdiskX
Now create the alternate disk and apply the TL update to it. The TL files can be placed locally, as covered in this article, in a remote NFS share or in a CD-ROM.

Smitty fastpath smitty alt_clonecan be used, or the alt_disk_copy command line. Figure 1 shows the initial smitty screen.
Figure 1. Initial smitty alt_clone screen


Remember, if you are unsure about a field, pressing F1 provides help.

Moving forward, use hdisk1 and the TL files are locally under the /stage_TL filesystem, as shown in Figure 2.
Figure 2. Added hdisk1, bundle to install, directory with images and the acceptance of license agreements


All operations will be logged to /var/adm/ras/alt_disk_inst.log. To watch its progress, enter tail –f to it.

The server will need to be rebooted after the update process, so make sure the bootlist is showing the target alternate disk as the first boot device (as seen in Listing 7).
Example 7. Checking boot device order
# bootlist –m normal –o
hdisk1 blv=hd5
Once the server has been rebooted, issue oslevel –s or oslevel –r and check if the OS level is now at the updated TL, as demonstrated in Listing 8.
Listing 8. Check running AIX version
# oslevel –s
5300-10-01-0921
If the update is considered successful, the rootvg can be mirrored again. Listing 9 shows how to mirror the rootvg again.
Listing 9. Mirroring back rootvg
# exportvg old_rootvg
# extendvg –f rootvg hdisk0
# mirrorvg rootvg
Create a new boot image on hdisk0 and add it to the boot list, as seen in Listing 10.
Listing 10. Creating a boot image
# bosboot –ad /dev/hdisk0
# bootlist –m normal –o hdisk0 hdisk1

Multibos

This is by far the coolest way to have AIX upgraded. It was introduced with AIX 5.3 TL3. This is great in cases where only one disk is available on rootvg and no free disks for alternate disks are available.

Multibos creates and maintain two different and bootable AIX instances within the same rootvg. It is similar to alternate disk. In this case, the biggest difference is that multibos will create and copy only the following Logical Volumes (LVs):

  • /;
  • /usr;
  • /var;
  • /opt, and;
  • hd5 (Boot logical volume).
All others LVs will be shared with the original root volume group, although more logical volumes can be specified and copied. Multibos supports a new TL update, but AIX version upgrades are not supported by multibos.

In addition to the tasks mentioned in the Before you begin section, make sure that enough free disk space to copy each BOS logical volume to the same root volume group disk is available, otherwise multibos will not work.

Create a new standby BOS instance by running the multibos command. Check its options and documentation before you begin. Listing 11 shows how to create a new standby BOS instance.
Listing 11. Preview of multibos standby BOS creation
# multibos –sXp
This shows a preview of what multibos is about to execute. For further information always check its log file (/etc/multibos/logs/op.alog). If everything seems to be OK with the preview, execute it again without the preview flag (-p) as shown in Listing 12.
Example 12. Multibos standby BOS creation
# multibos –sX
It will take a few minutes to copy all the contents, and after it’s completed all new LVs will be prefixed by "bos_". Listing 13 shows how the rootvg will look like after the new standby BOS has been created.
Listing 13. Multibos standby BOS created
# lsvg –l rootvg
rootvg:
LV NAME             TYPE       LPs   PPs   PVs  LV STATE      MOUNT POINT
hd5                 boot       1     1     1    closed/syncd  N/A
hd6                 paging     192   192   1    open/syncd    N/A
hd8                 jfs2log    1     1     1    open/syncd    N/A
hd4                 jfs2       1     1     1    open/syncd    /
hd2                 jfs2       17    17    1    open/syncd    /usr
hd9var              jfs2       8     8     1    open/syncd    /var
hd3                 jfs2       4     4     1    open/syncd    /tmp
hd1                 jfs2       1     1     1    open/syncd    /home
hd10opt             jfs2       1     1     1    open/syncd    /opt
lvdump1             sysdump    22    22    1    open/syncd    N/A
lvdump2             sysdump    22    22    1    open/syncd    N/A
bos_hd5             boot       1     1     1    closed/syncd  N/A
bos_hd4             jfs2       1     1     1    open/syncd    /bos_inst
bos_hd2             jfs2       17    17    1    open/syncd    /bos_inst/usr
bos_hd9var          jfs2       8     8     1    open/syncd    /bos_inst/var
bos_hd10opt         jfs2       1     1     1    open/syncd    /bos_inst/opt
It is a good idea to enter the newly created BOS instance shell and verify its current TL, as shown in Listing 14. To exit from the multibos environment just type 'exit':
Listing 14. Entering the multibos shell and checking AIX version
# multibos –S
Initializing multibos methods ...
Initializing log /etc/multibos/logs/op.alog ...
Gathering system information ...

+-----------------------------------------------------------------------------+
Multibos Shell Operation
+-----------------------------------------------------------------------------+
Verifying operation parameters ...

+-----------------------------------------------------------------------------+
Mount Processing
+-----------------------------------------------------------------------------+
Mounting all standby BOS file systems ...
Mounting /bos_inst
Mounting /bos_inst/usr
Mounting /bos_inst/var
Mounting /bos_inst/opt

+-----------------------------------------------------------------------------+
Multibos Root Shell
+-----------------------------------------------------------------------------+
Starting multibos root shell ...
Active boot logical volume is hd5.
Script command is started. The file is /etc/multibos/logs/scriptlog.090904032855.txt.
MULTIBOS> oslevel –s
5300-06-08-0831
If all prerequisite tasks have been completed (see Before you begin section), the TL update can be started. The command used in the Listing 15 will update your newly created standby BOS instance.
Listing 15. Updating the standby BOS instance
# multibos –Xac –l /stage_TL
After the command is completed, enter it again on the multibos shell and check the current TL, as seen in Listing 16.
Listing 16. Entering multibos shell
# multibos –S
Initializing multibos methods ...
Initializing log /etc/multibos/logs/op.alog ...
Gathering system information ...

+-----------------------------------------------------------------------------+
Multibos Shell Operation
+-----------------------------------------------------------------------------+
Verifying operation parameters ...

+-----------------------------------------------------------------------------+
Mount Processing
+-----------------------------------------------------------------------------+
Mounting all standby BOS file systems ...
Mounting /bos_inst
Mounting /bos_inst/usr
Mounting /bos_inst/var
Mounting /bos_inst/opt

+-----------------------------------------------------------------------------+
Multibos Root Shell
+-----------------------------------------------------------------------------+
Starting multibos root shell ...
Active boot logical volume is hd5.
Script command is started. The file is /etc/multibos/logs/scriptlog.090904035718.txt.
MULTIBOS> oslevel –s
5300-10-01-0921
Configure and ensure the boot list is pointing to the standby BOS as the first boot device, as shown in Listing 17.
Listing 17. Setting up boot to your new standby BOS instance
# multibos –B

# bootlist –m normal –o 
hdisk0 blv=bos_hd5
hdisk0 blv=hd5
If the update procedure failed and a fallback is needed, set and verify the boot list back to the previous boot LV and reboot—this will bring back the older AIX version. This procedure is shown in Listing 18.
Listing 18. Changing the boot device back to your original rootvg
# bootlist –m normal –o hdisk0 blv=hd5 hdisk0 blv=bos_hd5
# bootlist –m normal –o
hdisk0 blv=hd5
hdisk0 blv=bos_hd5
But, if no problems were found and the standby BOS is not necessary any longer, it can be removed by issuing the command shown in Listing 19.
Listing 19. Removing the old rootvg
# multibos -R

Same disk

This is the simplest method available. The downside of this method is that two reboots are needed in case of a fallback.

In this example, a backup to an alternate disk will be done before the update process. So, jump to smitty alt_clone again, as shown in the Figure 3 and select the desired backup disk and hit enter with the default values.
Figure 3. smitty alt_clone menu


The command line can also be used, as shown in Listing 20.
Listing 20. Command-line for cloning rootvg
 # alt_disk_copy -P "all" -d "hdisk1" -B
To follow the progress of the alternate task look at the alternate disk log file, /var/adm/ras/ alt_disk_inst.log.

After the alternate disk is done, the update process can be performed. Use the smitty fastpath smitty update_all or from the command line use install_all_updates. Listing 21 shows the update process.

Enter the directory containing the TL filesets:
Listing 21. Same disk update process
>
 # cd /stage_TL

And create a Table of Contents file (ToC):

 # inutoc .
While still inside the directory containing the filesets, run our smitty update_all command as shown in Figure 4.
Figure 4: smitty update_all initial screen


The first screen will ask where the filesets are, add a “.” (dot) and press enter.
Figure 5 shows how the smitty menu will look like.
Figure 5. smitty update_all menu with options


After the update process is done, reboot the server.

Once the server has been rebooted, issue oslevel –s or oslevel –r and check if the OS level is now at the TL level that was applied as observed in Listing 22.
Listing 22: Checking AIX version after update
 # oslevel –s
 5300-10-01-0921
If the update was considered successfully the rootvg can be mirrored again. Follow the example in Listing 23 to re-mirror the rootvg and create a boot image on hdisk1 and add it to the boot list.
Listing 23. Re-mirroring the rootvg
 # exportvg alt_inst_rootvg
 # extendvg –f rootvg hdisk1
 # mirrorvg rootvg
 # bosboot –ad /dev/hdisk1
 # bootlist –m normal –o hdisk0 hdisk1

Using a NIM Server

This is also one of most popular ways of updating an AIX server. However, in this case an up and running NIM Server is needed.

This article does not intend to show how to configure a NIM server or its pieces: spots, lpp_sources, machines, etc.

As was done for the previous methods, refer to the Before you begin section to review if all requirements were met. If yes, follow the example in Figure 6 to get started:
Figure 6. Entering smitty nim menu


This will enter the main NIM server smitty menu as shown in Figure 7. On the first screen select “Perform NIM Software Installation and Maintenance Tasks”
Figure 7. Main NIM server smitty menu


Next, select “Alternate Disk Installation”, as shown in Figure 8.
Figure 8. Select "Alternate Disk Installation"


As "Alternate Disk Installation" option is selected chose "Clone rootvg to an Alternate Disk".
Figure 9. Select "Clone the rootvg to an Alternate Disk"


The next screen is where all the settings are done.

Select the client machine (server to be updated), type the disk which the TL will be applied—since this is going to be a alternate disk, make sure the disk is not used by any other volume group (VG). See Figure 10 for all options available on this menu.
Figure 10. NIM settings for Alternate Disk Install


After you confirm and enter the values, NIM will automatically start updating the client.

Its progress can be seen from the client by looking at two log files (/var/adm/ras/nimlog and /var/adm/ras/alt_disk_inst.log).

Note:During the update process the screen won't be showing anything, but the process will be running on background. Make sure the process is completed before a reboot is done on the server—look at the log files.

After the update process is done, reboot the server.

Once the server has been rebooted, issue oslevel –s or oslevel –r and check if the OS level is now at the TL level that was applied.

 # oslevel –s
 5300-10-01-0921
If the update is considered successful, the rootvg can be mirrored again:

 # exportvg alt_inst_rootvg
 # extendvg –f rootvg hdisk1
 # mirrorvg rootvg

Create a new boot image on hdisk1 and add it to the boot list:

 # bosboot –ad /dev/hdisk1
 # bootlist –m normal –o hdisk0 hdisk1

Resources

Learn
Source

12 Most Popular Linux Distributions

Linux is a Unix based  computer operating system assembled under the model of free and open source software development and distribution. It was created by Finnish student name Linus Torvalds.
Its one of the popular UNIX operating system  among all. It offers excellent performance and speed. Linux is very stable and reliable in terms of usage. There are so many distributions in Linux OS . 
When compared to windows its  has more advantages like very cost effectiveness,faster,most secured,robust s/w availability and freedom of tools section. 
Going forward  I am going to deal with the top 12 distribution lists and their  details.

1) Linux Mint:

Linux Mint is an Ubuntu-based distribution whose goal is to provide a more complete out-of-the-box experience by including browser plugins, media codecs, support for DVD playback, Java and other components. It also adds a custom desktop and menus, several unique configuration tools, and a web-based package installation interface. Linux Mint is compatible with Ubuntu software repositories.


2) Debian

Debian is an operating system composed of free software mostly carrying the GNU General Public License.The operating system is developed by an internet collaboration of volunteers aligned with The Debian Project.
Debian GNU/Linux is one of the most popular Linux distributions for personal and Internet server machines.Debian is seen as a solid Linux, and as a consequence has been used as a base for other Linux distributions, Distrowatch lists 144 active Debian derivatives.Debian has been forked many times, but is not affiliated with its derivatives.

Debian  Summary
DistributionDebian
Home Pagehttp://www.debian.org/
Mailing Listshttp://www.debian.org/MailingLists/
User Forumshttp://forums.debian.net/
Documentationhttp://www.debian.org/doc/
Download Mirrorshttp://www.debian.org/distrib/
Bug Trackerhttp://bugs.debian.org/

3) Ubuntu

Ubuntu is an operating system based on the Linux kernel and the Linux distribution Debian, with Unity as its default desktop environment. It is distributed as free and open source software.
According to 2012 online surveys, Ubuntu is the most popular Linux distribution on desktop and laptop personal computers,and most Ubuntu coverage focuses on its use in that market. However, it is also popular on servers and for cloud computing.


4) Redhat

Red Hat, Inc. is an American multinational software company that is engaged in providing open-source software products to the enterprise community.
Red Hat has become associated to a large extent with its enterprise operating system Red Hat Enterprise Linux and with the acquisition of open-source enterprise middleware vendor JBoss. Red Hat provides operating system platforms, middleware, applications, management products, and support, training, and consulting services.

Red Hat Summary
DistributionRed Hat (Enterprise) Linux
Home Pagehttp://www.redhat.com/
Mailing Listshttp://www.redhat.com/mailing-lists/
User Forums--
Documentationhttp://www.redhat.com/docs/
Download Mirrorshttp://www.redhat.com/download/mirror.html
Bug Trackerhttps://bugzilla.redhat.com/

5) Fedora

Fedora formerly Fedora Core, is an RPM-based, general purpose collection of software, including an operating system based on the Linux kernel, developed by the community-supported Fedora Project and owned by Red Hat. The Fedora Project's mission is to lead the advancement of free and open source software and content as a collaborative community.
One of Fedora's main objectives is not only to contain software distributed under a free and open source license, but also to be on the leading edge of such technologies.Fedora developers prefer to make upstream changes instead of applying fixes specifically for Fedora—this ensures that their updates are available to all Linux distributions.


6) openSUSE

openSUSE is a general purpose operating system built on top of the Linux kernel, developed by the community-supported openSUSE Project and sponsored by SUSE and a number of other companies.After Novell acquired SUSE Linux in January 2004,Novell decided to release the SUSE Linux Professional product as a 100% open source project.
In 2011 The Attachmate Group acquired Novell and split Novell and SUSE into two autonomous subsidiary companies. SUSE offers products and services around SUSE Linux Enterprise—their commercial offering that is based on openSUSE Linux.


7) CentOS

CentOS ("Community Enterprise Operating System") is a Linux distribution that attempts to provide a free enterprise class computing platform which has 100% binary compatibility with its upstream source, Red Hat Enterprise Linux (RHEL). As of version 6.4, it officially supports x86 and x86-64 architecture with Physical Address Extension, while a beta is expected to be available for PowerPC.
The first CentOS was based upon RHEL version 2.1AS, and was numbered as CentOS version 2.
Originally, CentOS Linux (before it was thus named) was a build artifact for cAos Linux. Several of the cAos contributors at the time were really just interested in this build artifact for their own use, citing difficulties in collaborating with other noteworthy RHEL clones of the time.

CentOS Summary
DistributionCentOS
Home Pagehttp://www.centos.org/
Mailing Listshttp://www.centos.org/modules/tinycontent/
User Forumshttp://www.centos.org/modules/newbb/
Documentation--
Download Mirrorshttp://www.centos.org/modules/tinycontent/
Bug Trackerhttp://bugs.centos.org/

8) PCLinuxOS

PCLinuxOS, often shortened to PCLOS, is a GNU/Linux distribution, with KDE Plasma Desktop as its default user interface. It is a primarily free software operating system for personal computers aimed at ease of use. It is considered as a rolling release.
The precursor to PCLinuxOS was a set of RPM packages created to improve successive versions of Mandrake Linux (now Mandriva Linux).
PCLinuxOS Summary
DistributionPCLinuxOS
Home Pagehttp://www.pclinuxos.com/
Mailing Lists--
User Forumshttp://www.pclinuxos.com/forum
Documentation--
Download Mirrorshttp://pclinuxos.com/?page_id=10
Bug Tracker--

9) PinGuy OS

Pinguy OS is a free computer operating system (a Linux distribution) for x86 and x86-64 based PCs based on Ubuntu Linux.
For those not familiar with Pinguy OS, this is an Ubuntu-based distro with lots of applications installed by default as well as tweaks that you won't find in any other distro, at least by default. Pinguy OS comes with many little things that make your life easier as well as under-the-hood optimizations and tweaks such as ZRam and Preload installed by default, aimed at providing a better default experience.

Pinguy Summary
DistributionPinguy OS
Home Pagehttp://www.pinguyos.com/
Mailing Lists--
User Forumshttp://forum.pinguyos.com/
Documentation--
Download Mirrorshttp://sourceforge.net/projects/pinguy-os/files/
Bug Tracker--

10) Gentoo

Gentoo Linux named after the Gentoo Penguin, is a computer operating system built on top of the Linux kernel and based on the Portage package management system. It is distributed as free and open source software. Unlike a conventional software distribution, the user compiles the source code locally according to that user's chosen configuration.

Gentoo Summary
DistributionGentoo Linux
Home Pagehttp://www.gentoo.org/
Mailing Listshttp://www.gentoo.org/main/en/lists.xml
User Forumshttp://forums.gentoo.org/
Documentationhttp://www.gentoo.org/doc/en/index.xml
http://wiki.gentoo.org/
Download Mirrorshttp://www.gentoo.org/main/en/mirrors.xml
Bug Trackerhttp://bugs.gentoo.org/

11) Hybryde Evolution


Hybryde Linux is an Ubuntu-based distribution for the desktop. Its most unusual feature is an option to switch rapidly between multiple desktop environments and window manager without logging out - the list includes Enlightenment 17, GNOME 3 (GNOME Shell and GNOME 3 "Fallback" mode), KDE, LXDE, Openbox, Unity, Xfce and FVWM. This is achieved via a highly customisable Hy-menu, which also allows launching applications and configuring the system. All open applications are carried to any of the available desktops. The system offers an interesting way to work fluidly in a multi-desktop environment. 

Hybryde Summary
DistributionHybryde Linux
Home Pagehttp://www.hybryde.org/
Mailing Lists--
User Forumshttp://hybryde.cluster015.ovh.net/forum/
Documentation--
Download Mirrorshttp://mirror.layerjet.com/hybryde/
Bug Tracker--

12) Mageia

Mageia is a Linux computer operating system, distributed as free and open source software. It is forked from the Mandriva Linux distribution.
Mageia was created in 2010 as a fork of Mandriva Linux,by a group of former employees of Mandriva S.A. and several other developers and users and supporters of the Mandriva community.
Mageia Summary
DistributionMageia
Home Pagehttp://www.mageia.org/
Mailing Listshttps://www.mageia.org/mailman/
User Forumshttps://forums.mageia.org/
Documentationhttps://wiki.mageia.org/
Download Mirrorshttp://mageia.org/en/downloads/
http://mirrors.mageia.org/
Bug Trackerhttp://bugs.mageia.org/