Ubuntu – What does a Ubuntu Server admin need to know about CentOS

centosredhatUbuntu

I've been on Ubuntu Server for the past several (5-ish) years, but I am seeing a lot of jobs that are looking for RHEL or CentOS experience.

What differences, aside from package managers (dpkg/apt/.debs vs yum/.rpms) do I need to be aware of if I were to walk into a RHEL/CentOS/Fedora environment?

Best Answer

  • RHEL/CentOS uses SELinux quite extensively. Ubuntu has AppArmor as stated earlier.
  • RHEL/CentOS has by default much less software available than Ubuntu; you may need to add repositories such as EPEL, depending what your server needs to run.
  • RHEL uses more traditional way for booting and managing services, Ubuntu uses upstart.
  • RHEL has more comprehensive packages for advanced stuff such as identity management & auditing, clustering, GFS and virtualization than Ubuntu. They are available in Ubuntu as well but require more tuning (IMHO).
  • RHEL might or might not get better support from 3rd party software vendors, depending on what your server needs to run. Some obscure proprietary enterprise software is more often than not only tested with RHEL and/or SuSE Enterprise Linux. Using something else makes them say "We won't support that, if you encounter any problems, we will blame your $linuxdistribution".
  • Automated, unattended installs are quite easy with RHEL and Kickstart. Ubuntu has limited support for it, too, but in large server farms Kickstart is very commonly used.
  • Ubuntu gives you more choice for what file system you use. For example, RHEL just recently got official support for XFS, before that you had to compile your own kernel (or possibly use one from EPEL repository).
  • Ubuntu uses sudo and disables root account by default. RHEL has traditional root account (and SELinux roles, if you want).
  • Network configuration is different. Ubuntu has /etc/network/interfaces, in RHEL you modify /etc/sysconfig/network-scripts directory.
  • Several other configuration files are located in different places compared to Ubuntu. For example, Ubuntu has /etc/default directory for many daemons, RHEL has /etc/sysconfig.
  • Some package names do vary; already mentioned here is apache2/httpd difference.
  • Your default bash prompt will look different in RHEL, and if a desktop environment is installed (not that servers should have), you have a different icon set and background compared to Ubuntu. ;-)
Related Topic