This is our ongoing Linux command series where we are going to review how we can use chkconfig command efficiently with it’s available parameters. The Chkconfig command tool allows to configure services start and stop automatically in the /etc/rd.d/init.d scripts through command line. Let’s see some examples.
1. List All Services
Using ‘–list‘ parameter will displayed all services and their current start-up status in each run-level configuration.
[root@tecmint ~]# chkconfig --list NetworkManager 0:off 1:off 2:on 3:on 4:on 5:on 6:off abrt-ccpp 0:off 1:off 2:off 3:on 4:off 5:on 6:off abrt-oops 0:off 1:off 2:off 3:on 4:off 5:on 6:off ...
2. Check Status of Specific Service
Below command shows startup configuration for a particular service. It’s showing HTTP services are turned off in all run levels.
[root@tecmint ~]# chkconfig --list | grep httpd httpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
3. How Do I Start a Particular Service on Run Levels
The following ‘chkconfig‘ command shows how we can start HTTP services only on run level 3 and 5 with ‘–level‘ parameter. First command starts httpd services on run level 3 and 5 and second command verifies the status of httpd services running on run level.
[root@tecmint ~]# chkconfig --level 35 httpd on
[root@tecmint ~]# chkconfig --list | grep httpd httpd 0:off 1:off 2:off 3:on 4:off 5:on 6:off
4. How to Check Which Services are On/Off
The following command will display all the services which are On and Off in specific run level 5.
[root@tecmint ~]# chkconfig --list | grep 5:on NetworkManager 0:off 1:off 2:on 3:on 4:on 5:on 6:off abrt-ccpp 0:off 1:off 2:off 3:on 4:off 5:on 6:off abrt-oops 0:off 1:off 2:off 3:on 4:off 5:on 6:off abrtd 0:off 1:off 2:off 3:on 4:off 5:on 6:off acpid 0:off 1:off 2:on 3:on 4:on 5:on 6:off ...
[root@tecmint ~]# chkconfig --list | grep 5:off dnsmasq 0:off 1:off 2:off 3:off 4:off 5:off 6:off dovecot 0:off 1:off 2:off 3:off 4:off 5:off 6:off firstboot 0:off 1:off 2:off 3:off 4:off 5:off 6:off kdump 0:off 1:off 2:off 3:off 4:off 5:off 6:off mysqld 0:off 1:off 2:off 3:off 4:off 5:off 6:off netconsole 0:off 1:off 2:off 3:off 4:off 5:off 6:off nfs 0:off 1:off 2:off 3:off 4:off 5:off 6:off ...
5. How Do I Stop a Particular Service on Run Levels
The following command will turned Off a service called postfix for a just single run level. Similarly, we can turn Off a particular service in multiple run levels in one go as shown under.
[root@tecmint ~]# chkconfig --level 3 postfix off
[root@tecmint ~]# chkconfig --level 2345 postfix off
As we all know, there are seven run levels are available on Linux Operating System. We’ll cover the significant of different run levels and booting sequence in details in our upcoming article. So, please stay tuned.
Guys, I have not tested this command on my Ubuntu 20.04.2 so excuse me. I see this article is a bit old.
I have been using systemctl now as SystemD replaced SystemV. Is still valid? Well, the easiest way to find out is to go to the terminal but my CPU fan is not cleaned lately and my laptop overheated so it’s off now.
And BTW I wanted to “buy you a coffee” but Stripe ( do not have a PayPal account ) refuses payments from the EU to India.
I did not try on your site but on another one more than 5 times.
@Jimmy,
Please check this article – How to Manage ‘Systemd’ Services and Units Using ‘Systemctl’ in Linux
Is the run level 0 and 6 require for service?
Ex: chkconfig –level 02356 servicename on
May I know the reason for 0 and 6 levels to assign the particular service.
Thanks & Regards,
Nagarajan J
@Nagarajan,
No only run level 3 and 5 required for service to auto start and run…
wrong path has been gives, please correct it to /etc/rc.d/init.d/
Sir, I need to know the way to find out the service name and daemon name for a particular package. Example for samba package alone, it has to show the service name smb and daemon name smbd.
Thanks in advance
very informative article and simple to understand
Nice post, thanks.
Nice post…Its so easy to understand!
Thank you very much for the hardwork :)
Current Introduction typo to be corrected for directory path of RC scripts; /etc/rd.d/init.d
The Chkconfig command tool allows to configure services start and stop automatically in the /etc/rd.d/init.d scripts through command line. Let’s see some examples.
Corrected directory path of RC scripts; /etc/rc.d/init.d
#2 could be better written as…
$ chkconfig httpd –list
6 less keystrokes is a win in my book :)
Makes sense!
Thanks for sharing