What is CentOS:
CentOS is an Enterprise-class Linux Distribution derived from sources freely provided to the public by a prominent North American Enterprise Linux vendor. CentOS conforms fully with the upstream vendors redistribution policy and aims to be 100% binary compatible. CentOS mainly changes packages to remove upstream vendor branding and artwork. And YES CentOS is FREE.

CentOS is developed by a small but growing team of core developers. In turn the core developers are supported by an active user community including system administrators, network administrators, enterprise users, managers, core Linux contributors and Linux enthusiasts from around the world.

System requirements table and notes regarding installation:

Installing CentOS is pretty straightforward with some configurable options along the installation process, I’d list the necessary steps here for a graphical installation. Note that the graphical installer needs at least 512 MB and it’s not recommended for servers OS. However text mode is less resource consumption and 128 MB RAM will be enough for it. The most recent list of supported hardware can be found at http://hardware.redhat.com/

CentOS is delivered as one DVD or six CDs all of which are required for installation to be successful, in the next post I’ll provide some links and mirrors to download CentOS, be advised if you are going to run CentOS as a server it is more convenient to run a64bit version.

An administrator or “root” must partition the HDD prior to the installation eg. Allocate 100MB for the 1st partition  as “boot” and 512MB or more for “swap” and the rest of the HDD for system and users’ files. Otherwise it will prompte the user with partition options during the installation process.

Installation guide:

1. Insert the DVD into your local media and boot the machine, a window similar to this one pops up and asks you if you would like to install or upgrade in graphical mode, press Enter.

2. When prompted for testing the CD media before installation press OK to make sure there are no problems with your media and its content. Or just click skip to move into next step.

Note: if you chose to test your media and you intend to install the system through multiple CDs make sure to go through “If you would like to test additional media, insert the next CD and press” screen until you done with all CD’s, you don’t want to stuck in the middle of installation for corrupted media”.

3. Click “Continue”, once you’ve clicked “continue” you will see the “Running anaconda the centos system file installer” CentOS just like RHEL and Fedora uses Anaconda as system installer.

4. Choose the installation’s process language. English is default.

5. Select appropriate keyboard for the system, U.S. English is default.

6. At this step you’ll be prompted with a “Warning”: “The partition table on device had (HARDDISK 100000MB) was unreadable”, This warning will not show up if you already portioned your HDD prior to the installation . If This was not the case then you have to go through partitioning process.

  • In partitioning option click yes
  • A confirmation warning pops up indicates that “you have chosen to remove all Linux partitions (and ALL DATA on them) on the following drivers: Had (HARDDISk 100000MB) Are you sure you want to do this?” click “Yes”. And go through partitioning process as mentioned previously at the beginning of this post.

7. Network configuration: DHCP or Static, Default dynamic. Configure your client IP address, DNS, default gateway or chose DHCP according to your network setting, Click “Next” when done.

8. Region selection : Click into the map to choose a region.

Note about system clock uses UTE:

In most new OSs the internal kernel clock counts in UTC. So when the time needs to be displayed to the user, a translation to the configured timezone is done.

The time representation will not be affected regardless of what you chose. But rebooting in- and outside of daylight savings time periods might result in one-hour-off time problems if you have your BIOS clock in localtime. However, it is highly important to keep the time and date up to date on the server otherwise it may cause connection problems and inconvenience.

Be aware if you running a dual-boot system with Windows choosing UTC may cause some problems for Windows, However you can edit the file /etc/sysconfig/clock and change “UTC=” to true or false.

9. Root password: Create strong password, you may like to evaluate your password’s strength by using this secure password checker.

10. When prompted with “The default installation of CentOS includes a set of software application for general internet usage, What additional task would you like your system to include support for?” you may choose whatever suit your purposes, for example:

  • Choose Desktop – Gnome
  • Click on add additional software repositories then configure the network if you haven’t previously, Add repositories names and URLs.

Nevertheless you can further customize the software selection now or after completing the installation via the “software management application”. click next after choosing customize now, you can customize whatever you like on the next step..

Note: You can always go back and make changes in any stage of the installation as far as the final installation step hasn’t commenced yet.


Since I’m going to use CentOS as a server I would like to customize some packages, bear with me:

Click applications menu, untick the following:

  • games and entertainment
  • Text based internet

On Development menu tick the following:

  • Development libraries : The packages in this group are core libraries needed tp develop applications
  • Development Tools: These tools include core development tools such as automake, gcc, perl, python, and debuggers.

On Servers menu: If you would like to run some servers functions’ on Centos linux box it’s very important that you have a good look at some of these options:

  • DNS Name server: running DNS server on the system.
  • ftp server: running ftp server on the system.
  • Legacy network server: running servers for old network protocols such as rsh and telnet.
  • Mail server: this package allow you to configure an IMAP or SMTP mail server.
  • MySQL Database: This package group contains packages useful for use with MySQL.
  • Network servers: These packages include network based servers such as DHCP, Kerberos and NIS.
  • News Server: This group allows you to configure the system as a news server
  • PostgreSQL Database: This package group includes packages useful for use with Postgresql.
  • Printing support: Install these tools to enable the system to print and act as a printer server.
  • Server configuration tools: This group contains all of CentOS’s Custom server configuration utilities.
  • Web server: These tools allow you to run a web server on the system
  • Windows file server: This package group allows you to share files between Linux and MS windows systems, although this group is associated with another package and will eventually install the Samba server configuration tools.

On Base system menu:

  • Administration tools: This group is collection of graphical administration tools for the system, such as managing user accounts and configuration system hardware.
  • Base: This group includes a minimal set of packages. Useful for creating small Router, Firewall boxes for example.
  • Dialup network support: Dialup network support.
  • System tools: this group is a collection of various tools for the system, Such as the client for connection to SMB shares and tools to monitor network traffic.

On Languages menu: language support.

11. After customizing the packages click next, “Checking dependencies” starts. Click next to begin installation of CentOS, a complete log of the installation can be found at: /root/install.log, A kickstart contacting the installation options selected can be found in: /root/anaconda-ks.cfg

12. Installation initials and may take a while. Once the installation completed remove any media used during the installation process and click Reboot . After the system reboots a welcome window pops up to enter username and password, apparently you have to enter root username and password you previously created.

Congratulation your system now is up and running, you’re done.


Related posts:

  1. CentOS Mirrors Australia and Worldwide
  2. Setting up a Linux NFS Server