RCCONF(8)
π RCCONF(8) π
okay bestie, this is the Debian GNU/Linux manual page for rcconf β it lives in section 8, so it's a sysadmin-y one. buckle up π
β¨ NAME β¨
rcconf β the Debian Runlevel configuration tool. that's literally its whole thing, no cap.
πΈ SYNOPSIS πΈ
rcconf [options]
π¦ DESCRIPTION π¦
So likeβ¦ Rcconf lets you control which services get started when your system boots up or reboots. iconic behaviour tbh. it shows you a menu of every service that could be started at boot, the ones that are actually configured to do so are marked, and you can toggle individual services on and off like a little light switch π
Rcconf gets its list of services from /etc/init.d and then peeks inside the /etc/rc?.d directories to figure out whether each service is on or off. it detects the ON state by the existence of /etc/rc?.d/"S"NNname. that's the vibe check right there.
If the number (NN of /etc/rc?.d/[SK]NNname) is not 20 (which is the default), rcconf saves the service name and the number in /var/lib/rcconf/services so it's able to restore the service to its original configuration later. it's giving organised. it's giving backup plan. π«Ά
β οΈ okay important one: if you purge thercconfpackage usingdpkg --purge, oraptitude purge, or literally any of the others, you may lose the off state package because/var/lib/rcconf/servicesgets deleted. so likeβ¦ be careful bestie, no cap π
π OPTIONS π
--helpβ prints out a usage message. the classic. the helpful one. we love her π--dialogβ uses thedialogcommand to display the menu.--whiptailβ uses thewhiptailcommand to display the menu.--notermcheckβ do not set the window size by terminal property.--on service[,service,...]β sets services to be on. this option enablesrcconfin command line mode and no select menu will be displayed. just straight to business β¨--off service[,service,...]β sets services to be off. this option also enablesrcconfin command line mode and no select menu will be displayed.--listβ lists services, and it includes the current status (on/off). this option enablesrcconfin command line mode and no select menu will be displayed. use the--expertoption together with it if you want to list all services. also, this result can be used as theconfig_fileof--config. obsessed with the reusability honestly π₯--config config_fileβ sets services on/off according toconfig_file. this option enablesrcconfin command line mode and no select menu will be displayed. the format of this config file is"service_name on"or"service_name off"in each line. go refer to the result of--listfor reference.--expertβ shows and selects all services, for the experts. in default,rcconfdoesn't display system default services as a candidate, things likemountall.sh, so it can hide unnecessary services from users (but they're very important for the system, lowkey π).
the list of which services are considered expert can be found at the line @expertonly in /usr/sbin/rcconf.
--nowβ for each service that had the links changed, it calls the corresponding/etc/init.d/service-namescript usinginvoke-rc.d, so the package starts or stops immediately. if you do not use this option, the changes will only take effect the next time you reboot (or change runlevel). so yeah, no--nowmeans the glow-up is delayed bestie π--verboseβ outputs verbose messages. she's chatty and we respect it π
π Guide File π
Rcconf can display some description (a Guide) for each service with a Guide File. the Guide File is placed on /var/lib/rcconf/guide, and this Guide File does not exist by default. so if you want to use Guide, you need to define guides for each service in this file. DIY energy β¨
if you run update-rcconf-guide before rcconf, then rcconf can use default guides derived from the package description. Update-rcconf-guide generates the file /var/lib/rcconf/guide.default from the package description (it only uses the first line of it) using apt-cache. Rcconf refers to Guides in /var/lib/rcconf/guide before /var/lib/rcconf/guide.default. priority order, periodt π
if you install some packages after you've executed update-rcconf-guide, you need to re-create this file using update-rcconf-guide so as to refresh guide.default so it includes the new guides for the installed new services. gotta keep it fresh π¦
π Updating /etc/rd?.c/ by the package (KNOWN PROBLEM) π
okay this part is the messy part. buckle in.
Rcconf saves /etc/rc?.d/[SK]NNname conditions into /var/lib/rcconf/services. this file is updated only when there exists /etc/rc?.d/SNNname. which means the condition is not saved if /etc/rc?.d/SNNname doesn't exist for the package. π
so here's the cursed scenario: if the old version of the package creates both /etc/rc?.d/SNNname and /etc/rc?.d/KNNname, but the newer (updated) version of the package creates only /etc/rc?.d/KNNname, then some stupid condition occurs. that is, rcconf displays this package as OFF state even though the updated package doesn't have /etc/rc?.d/SNNname. that's because rcconf can't detect the disappearance of /etc/rc?.d/SNNname and the previous /etc/rc?.d/SNNname condition remains in /var/lib/rcconf/services for restore. it's literally holding a grudge π
in that situation, remove the entry (the corresponding package line) from /var/lib/rcconf/services. that's the fix, bestie. you're welcome π«Ά
π FILE π
/var/lib/rcconf/servicesβ the service number data file./var/lib/rcconf/lockβ the lock file./var/lib/rcconf/guide.defaultβ the Guide File thatupdate-rcconf-guidegenerates./var/lib/rcconf/guideβ the Guide File that a user (Administrator) can define.
π SEE ALSO π
π AUTHOR π
Atsushi KAMOSHIDA <kamop@debian.org>
and that's the whole page, bestie!! go toggle some services, you absolute main character π
this little love letter was rendered by perl v5.28.0, dated 2018-11-11 β mwah, xoxo π
π¦ where this page comes from
- debian bookworm: rcconf 3.2+nmu1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms