Home > Article > System Tutorial > Master Linux system service management – detailed explanation of chkconfig command
In Linux system management, the process of starting and shutting down services is very important. Since different Linux distributions use different management methods, some newbies may get stuck. But don't worry, this article will provide you with a very powerful command-chkconfig, through which it will be easier than ever to manage system services.
Using syntax:
chkconfig [–add][–del][–list][system service] or chkconfig [–level][system service][on/off/reset]
chkconfig displays usage when run without parameters. If the service name is added, then check whether the service is started in the current run level. If so, return true, otherwise return false. If on, off, or reset is specified after the service name, chkconfig will change the startup information of the specified service. on and off refer to the service being started and stopped respectively, and reset refers to resetting the service's startup information, regardless of what the problematic initialization script specifies. The on and off switches are only valid for run levels 3, 4, and 5 by default, but reset can be valid for all run levels.
Parameter usage:
–add Add the specified system service so that the chkconfig command can manage it, and at the same time add relevant data to the system startup narrative file.
–del Delete the specified system service, which is no longer managed by the chkconfig command, and delete related data in the system startup narrative file.
–level specifies the execution level in which the read system service should be turned on or off.
Level 0 means: means shutdown
Level 1 means: single user mode
Level 2 means: multi-user command line mode without network connection
Level 3 means: multi-user command line mode with network connection
Level 4 means: Not available
Level 5 means: multi-user mode with graphical interface
Level 6 means: Restart
It should be noted that the level option can specify the run level to be viewed and not necessarily the current run level. For each runlevel, there can be only one start script or stop script. When switching run levels, init will not restart already started services, nor will it stop stopped services again.
chkconfig –list [name]: Displays the running status information (on or off) of all run-level system services. If name is specified, only the status of the specified service at different run levels is displayed.
chkconfig –add name: Add a new service. chkconfig ensures that each runlevel has a start (S) or kill (K) entry. If missing, it will be created automatically from the default init script.
chkconfig –del name: Delete the service and delete the related symbolic links from /etc/rc[0-6].d.
chkconfig [–level levels] name: Set whether a service is started, stopped or reset at the specified run level.
Run-level file:
Each service managed by chkconfig needs to add two or more lines of comments to the corresponding script under init.d. The first line tells chkconfig the default startup runlevel and the start and stop priorities. If a service does not start at any runlevel by default, use - instead of the runlevel. The second line describes the service and can be commented with \ across lines.
For example, random.init contains three lines:
# chkconfig: 2345 20 80 # description: Saves and restores system entropy pool for \ # higher quality random number generation.
Usage example:
chkconfig –list #List all system services
chkconfig –add httpd #Add httpd service
chkconfig –del httpd #Delete httpd service
chkconfig –level httpd 2345 on #Set httpd to be on when the running level is 2, 3, 4, or 5
chkconfig –list #List all service startup status of the system
chkconfig –list mysqld #List mysqld service settings
chkconfig –level 35 mysqld on #Set mysqld to run services on startup at levels 3 and 5. –level 35 means that the operation will only be executed at levels 3 and 5, on means startup, and off means shutdown
chkconfig mysqld on #Set mysqld to on at each level, "each level" includes levels 2, 3, 4, and 5
How to add a service:
1. The service script must be stored in the /etc/ini.d/ directory;
2.chkconfig –add servicename
Add this service to the chkconfig tool service list. At this time, the service will be given a K/S entry in /etc/rc.d/rcN.d;
3.chkconfig –level 35 mysqld on
Modify the default startup level of the service.
4. Set up auto-start at boot
chkconfig mysql on chkconfig --list | grep mysql
To sum up, chkconfig, a small but sophisticated command, is an indispensable tool in Linux system management. Using chkconfig can help us manage services more conveniently, whether it is started automatically or manually. At the same time, we also learned how to customize the running levels of services, and understood which services are running or not running at each run level. I believe this article has given you a deeper understanding of the use of the chkconfig command.
The above is the detailed content of Master Linux system service management – detailed explanation of chkconfig command. For more information, please follow other related articles on the PHP Chinese website!