Wednesday , 21 March 2018
Latest topics!!

How to managing services with systemd in CentOS/RedHat7 ?

In most of the linux distributions init daemon is going to be replaced with systemd deamon.  It has been already replaced in some distributions as Fedora is the first to do the same.  Also in Centos 7 and Redhat 7 the init deamon is is replaced with systemd.

Similar to  init daemon systemd is the parent process of all other processes ,  since it is the first process started . Systemd normally have PID 1. Even Init is replaced with systemd in most of the system it is backward compatible.

Similar to  init  scripts in init deamon,  Systemd uses unit files.  We can see the unit files in the following locations, as per  the type  of unit files.

/usr/lib/systemd/system/ -  unit files created when applications installed using RPMs

/etc/systemd/system/ - unit files created when we enable services

/run/systemd/system/ - unit files created at run time.

Q. How to Start/Stop/Restart services in centOS/Redhat 7 ?

Service and chkconfig commands are replaced with systemctl command in Centos 7 and Redhat 7. Note that service and chkconfig commands are still available for compatibility reasons and will be replaced soon.

systemctl start name.service          stat a service

systemctl stop name.service           stop a service

systemctl restart name.service        restart a service

systemctl try-restart name.service    restart a service if it is running

systemctl reload name.service         reload configuration

systemctl status name.service

or                                    check if the service is running

systemctl is-active name.service

systemctl list-units --type service –-all     Displays the status of all services.

Q. How Enable and disable a service in CentOS/Redhat7

As we know that “chkconfig” is the command used to enable or disable a service in CentOS/Redhat 6.  It is replaced with systemctl command in CentOS/Redhat 7.

systemctl enable name.service                      enables a service

systemctl disable name.service                     Disable a service

systemctl status name.service                      Checks if a service is enabled.

systemctl list-dependencies --after name.service   Lists services that start before the specified service

systemctl list-dependencies -–before name.service  Lists services that start after the specified service

Q. Run Levels in CantOS 7 ?  Run-levels is replaced with SystemD in CentOS/RedHat 7

The concept of run levels in CentOS/RedHat6 is replaced with SystemD targets in CentOS/RedHat 7.  See the list of predefined targets and purpose.                             Shut down and power off the system.                               Set up a rescue shell.                           Set up a non-graphical multi-user system.                           Set up a non-graphical multi-user system.                           Set up a non-graphical multi-user system.                            Set up a graphical multi-user system.                               Shut down and reboot the system.

Q. How to find the default target in CentOS/RedHAT 7

~]$ systemctl get-default

From the output of the above command we see that the default target is “”.

Q. How to change the default target unit in  CentOS/RedHAT 7

~]# systemctl set-default

rm '/etc/systemd/system/'

ln -s '/usr/lib/systemd/system/' '/etc/systemd/system/'

Q. How to changing one target to another in the same session:

If you are in the target “” and you want to switch to “” in the current session itself,  you can use the below command :

~]# systemctl isolate

Q. How to switch to rescue mode in CentOS/RedHAT 7  from the current session:

Rescue mode allows to troubleshoot issues when we are not able to login to the system after normal booting process.  In rescue mode, system will mount all local file systems and disable network services.

~]# systemctl rescue
Broadcast message from root@localhost on pts/0 (Fri 2013-10-25 18:23:15 CEST):
The system is going down to rescue mode NOW!

You can also use the same command with “–no-wall” option to  avoid sending message  to all users logged in:

~]# systemctl --no-wall rescue

Q. How to switch to emergency mode in CentOS/RedHAT 7  from the current session:

Also another mode is available in CentOS/RedHAT 7   which is Emergency Mode. How to chance current target to Emergency Mode in CentOS/RedHAT 7   ?

The key difference between rescue and emergency mode is ,  In emergency mode only root file system is mounted. Use the below command to switch from current target to emergency mode:

~]# systemctl --no-wall emergency

Have questions? Click here to submit a support request.

About Harikrishnan M

Working as Senior System Administrator at Twinbeeservers.

Leave a Reply

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