rcS(5)

πŸ“¦
version 3.14 Β· 2 versions
, in debian trixie

πŸ’… rcS β€” the manual page, but make it cute

okay so bestie, welcome to rcS(5) from the Debian Administrator's Manual πŸŽ€ this is the lil' page about the variables that affect the behavior of boot scripts. yes, boot scripts. the ones that wake your machine up before your coffee even brews. iconic behavior fr fr ✨


✨ NAME ✨

rcS β€” variables that affect the behavior of boot scripts πŸ¦‹


🌸 DESCRIPTION 🌸

The /etc/default/rcS file contains variable settings in POSIX format, and that format is literally just:

VAR=VAL

Only one assignment is allowed per line, no cap. Comments are allowed too β€” they start with # πŸ’¬

NOTE: this file is ignored when systemd is used as init system. so if you're on systemd, this whole vibe check is for someone else, bestie 😭

πŸ‘‘ OPTIONS πŸ‘‘

these are the variables you can set. let's go one by one, no skips, we're thorough here πŸ’…

  • TMPTIME β€” on boot, the files in /tmp get deleted if their modification time, file status time and access time are all at least TMPTIME days ago. A value of 0 means files are removed regardless of age (so, all of them, no questions asked 🫣). If you don't want the system cleaning /tmp at all, set TMPTIME to a negative value (e.g., -1) or to the word infinite. that's your get-out-of-jail card πŸ’–
  • SULOGIN β€” setting this to yes causes init to spawn a sulogin on the console early in the boot process. If the administrator does not login, then the sulogin session will time out after 30 seconds and the boot process will continue. so like, you have 30 seconds to be the main character ⏳
  • DELAYLOGIN β€” normally the system will not let non-root users log in until the boot process is complete and the system has finished switching to the default runlevel (usually level 2). However, in theory it is safe to log in a bit earlier β€” namely, as soon as inetd has started. Setting the variable to no allows earlier login; setting the variable to yes prevents it.

some details, because details matter: the DELAYLOGIN variable controls whether or not the file /run/nologin is created during the boot process and deleted at the end of it. The login(1) program refuses to allow non-root logins so long as /run/nologin exists. If you set the variable to no then it is advisable to ensure that /run/nologin does not exist. πŸ‘€

  • VERBOSE β€” choose whether the boot process should be verbose (value yes) or quiet (value no). Setting this variable to any other value results in undefined behaviour. so like... don't. that's the whole warning 🚫
  • FSCKFIX β€” when the root and all other file systems are checked, fsck is invoked with the -a option which means "autorepair". If there are major inconsistencies then the fsck process will bail out. The system will print a message asking the administrator to repair the file system manually and will present a root shell prompt (actually a sulogin prompt) on the console. Setting this option to yes causes the fsck commands to be run with the -y option instead of the -a option. This will tell fsck always to repair the file systems without asking for permission. so yes here is the "just do it, no questions" setting πŸ”₯
  • ASYNCMOUNTNFS β€” set this to 'no' to disable asynchronous mounting of network drives when the network interfaces are mounted, and instead do it only once when the machine boots. The default is 'yes' unless ip= or nfsroot= is specified on the kernel command line. It is useful to disable this on machines where the root file system is NFS, until ifup from ifupdown works properly in such setup.
note that, in this case, the network interfaces to access the NFS host must be marked 'auto' (NOT 'allow-hotplug') in /etc/network/interfaces. 🫢

πŸ’€ NOTE πŸ’€

The EDITMOTD, RAMRUN, CONCURRENCY and UTC variables are no longer used. To inhibit concurrent boot, use concurrency=none kernel command line argument. rip to those variables, they served their time πŸ•ŠοΈ

The RAMLOCK, RAMSHM and RAMTMP variables have been moved to /etc/default/tmpfs; RAMSHM and RAMTMP settings in rcS are used (if set) for backward compatibility, but will be overridden by settings enabled in /etc/default/tmpfs. See tmpfs(5) for further details. The settings are not automatically migrated to /etc/default/tmpfs. Please update /etc/default/tmpfs appropriately. πŸ™

The UTC setting is replaced by the UTC or LOCAL setting in /etc/adjtime, and should have been migrated automatically. See hwclock(5) and hwclock(8) for further details on configuring the system clock. ⏰


🧚 AUTHOR 🧚

Miquel van Smoorenburg <miquels@cistron.nl> Roger Leigh <rleigh@debian.org>

legends, honestly πŸ’œ


🌈 SEE ALSO 🌈

fsck(8), hwclock(5), hwclock(8), inetd(8), init(8), inittab(5), login(1), tmpfs(5).


and that's the whole page, bestie!! this one is from the Debian Administrator's Manual, dated 21 May 2012, and the man page itself is rcS(5) πŸ’– go forth and configure your boot scripts responsibly, mwah 😘✨

πŸ“¦ where this page comes from