CentOS 7 vs CentOS 6 – List of Important Changes

CentOS 7 introduces many important changes from previous versions like CentOS 5.x or CentOS 6.x. That’s why today we are going to show you CentOS 7 vs CentOS 6 important changes

At my web hosting company we always delay the usage of new Linux distributions, because the on the first months or years of a Linux distro are always the ones where devs and ops find the most bugs.

If you are running a web hosting company, among many things, there is one thing that will be always in top of your mind: stability.  Customers hate errors on their operating systems, or on their web apps. That’s why sometimes you need to sacrifice new features vs keeping your customers happy.

Even CentOS 7 was released a few years ago and since cPanel 11.50 it is already available for cPanel / WHM users, we just started using it right now because now it is fully used everywhere, there are tons of docs about anything related to CentOS 7, and software support for web hosting markets is ready for production stages.

CentOS 7 vs CentOS 6: Important Command Changes

Let’s see the important day to day changes when it comes to Linux commands used in system administration tasks.

Service Management

Services are handled using systemctl, a new daemon that is going to replace the old init.d

Restart, stop, start and service status

systemctl restart X.service
systemctl start X.service
systemctl stop X.service
systemctl status X.service

Replace “X” with your service. If you need to apply this to Apache, this would be the exact commands:

systemctl restart httpd.service
systemctl start httpd.service
systemctl stop httpd.service
systemctl status httpd.service

Enabling or Disabling Services at Boot

Chkconfig has changed, now it is deprecated and you must use systemctl as you see above:

systemctl enable X.service

If you need to enable Apache service, you just need to run:

systemctl enable httpd.service

To check if any of your services is configured at boot time, you can use this command:

systemctl list-unit-files | grep X

Example for munin-node:

[[email protected] ~]# systemctl list-unit-files | grep httpd
httpd.service enabled

Systemctl Usage

Systemctl can be configured and tweaked in the same way as on CentOS 6. To tweak systemctl configuration you can edit two files located at:

/usr/lib/sysctl.d/

You will find this two files:

00-system.conf
50-default.conf

In order to make changes you can edit those filres, or the best way is to generate new .conf files inside that directory, for example: extra-configurations.conf, save your custom systemctl rules there, save the file and then run this command to apply changes:

sysctl --system

System Updates with DNF

System updates on CentOS 7 are handled using dnf command, which is almost the same as the old classic yum command See the exampls above to search, install and remove packages from CentOS

dnf search package
dnf install package

dnf remove package

FirewallD as default Firewall

And the time finally came to replace the old lovely iptables with a new firewall rule management. This is a major change on CentOS 7 vs CentOS 6. CentOS 7 made the switch from iptables to firewalld, which offer new major changes to increase your server network filtering.

One big difference of using FirewallD is that when you add new firewall rules you don’t need to reload the whole table as it happened on iptables. The rich rule language allows you to add new dynamic security rules every time you need.

FirewallD comes installed by default on CentOS 7.x. However, if it doesn’t on your system, you can install it using this command:

dnf install firewalld

To start the graphical firewall configuration tool using the command-line type the following command:

firewall-config

If you don’t have firewall-config installed you can grab this from CentOS base repo by running:

dnf install firewall-config

FirewallD and CSF Firewall can not interact and run live on the same system. CSF Firewall is one of the best firewalls ever, and the #1 choice for cPanel servers. If you are going to install CSF Firewall on cPanel, first you need to stop and disable firewalld on your server using this commands.

Stop firewalld

systemctl stop firewalld

Disable/Remove firewalld from the system startup

systemctl disable firewalld

After that you can proceed with CSF firewall installation procedure normally.

Conclusion

This are the most important changes from CentOS 7 vs CentOS 6 in terms of system administration commands that are used in the day to day. However, there are many other important changes like the new adoption of Grub2 as boot loader, support for XFS, among many other things.

About the Author: Santiago Borges

Experienced Sr. Linux SysAdmin and Web Technologist, passionate about building tools, automating processes, fixing server issues, troubleshooting, securing and optimizing high traffic websites.

Leave a Reply

Your email address will not be published. Required fields are marked *