Package: sysvinit-core Version: 3.11-1 Severity: minor Tags: patch * What led up to the situation?
Checking for defects with test-[g|n]roff -mandoc -t -K utf8 -rF0 -rHY=0 -ww -b -z < "man page" [Use "groff -e ' $' <file>" to find trailing spaces.] ["test-groff" is a script in the repository for "groff"; is not shipped] (local copy and "troff" slightly changed by me). [The fate of "test-nroff" was decided in groff bug #55941.] * What was the outcome of this action? troff: backtrace: file '<stdin>':125 troff:<stdin>:125: warning: trailing space in the line troff: backtrace: file '<stdin>':180 troff:<stdin>:180: warning: trailing space in the line troff: backtrace: file '<stdin>':258 troff:<stdin>:258: warning: trailing space in the line * What outcome did you expect instead? No output (no warnings). -.- General remarks and further material, if a diff-file exist, are in the attachments. -- System Information: Debian Release: trixie/sid APT prefers testing APT policy: (500, 'testing') Architecture: amd64 (x86_64) Kernel: Linux 6.11.5-amd64 (SMP w/2 CPU threads; PREEMPT) Locale: LANG=is_IS.iso88591, LC_CTYPE=is_IS.iso88591 (charmap=ISO-8859-1), LANGUAGE not set Shell: /bin/sh linked to /usr/bin/dash Init: sysvinit (via /sbin/init) Versions of packages sysvinit-core depends on: ii initscripts 3.11-1 ii libc6 2.40-3 ii libselinux1 3.7-3 ii mount 2.40.2-9 ii sysv-rc 3.11-1 ii sysvinit-utils 3.11-1 Versions of packages sysvinit-core recommends: ii orphan-sysvinit-scripts 0.16 Versions of packages sysvinit-core suggests: ii bootlogd 3.11-1 -- debconf information excluded
Any program (person), that produces man pages, should check the output for defects by using (both groff and nroff) [gn]roff -mandoc -t -ww -b -z -K utf8 <man page> The same goes for man pages that are used as an input. For a style guide use mandoc -T lint -.- So any 'generator' should check its products with the above mentioned 'groff', 'mandoc', and additionally with 'nroff ...'. This is just a simple quality control measure. The 'generator' may have to be corrected to get a better man page, the source file may, and any additional file may. Common defects: Input text line longer than 80 bytes. Not removing trailing spaces (in in- and output). The reason for these trailing spaces should be found and eliminated. Not beginning each input sentence on a new line. Lines should thus be shorter. See man-pages(7), item 'semantic newline'. -.- The difference between the formatted output of the original and patched file can be seen with: nroff -mandoc <file1> > <out1> nroff -mandoc <file2> > <out2> diff -u <out1> <out2> and for groff, using "printf '%s\n%s\n' '.kern 0' '.ss 12 0' | groff -mandoc -Z - " instead of 'nroff -mandoc' Add the option '-t', if the file contains a table. Read the output of 'diff -u' with 'less -R' or similar. -.-. If 'man' (man-db) is used to check the manual for warnings, the following must be set: The option "-warnings=w" The environmental variable: export MAN_KEEP_STDERR=yes (or any non-empty value) or (produce only warnings): export MANROFFOPT="-ww -b -z" export MAN_KEEP_STDERR=yes (or any non-empty value) -.-. Output from "mandoc -T lint init.8": (possibly shortened list) mandoc: init.8:55:2: WARNING: skipping paragraph macro: PP empty mandoc: init.8:92:2: WARNING: skipping paragraph macro: PP empty mandoc: init.8:125:66: STYLE: whitespace at end of input line mandoc: init.8:180:80: STYLE: whitespace at end of input line mandoc: init.8:186:83: STYLE: input text line longer than 80 bytes: between sending proc... mandoc: init.8:227:2: WARNING: skipping paragraph macro: PP empty mandoc: init.8:231:2: WARNING: skipping paragraph macro: PP empty mandoc: init.8:236:2: WARNING: skipping paragraph macro: PP empty mandoc: init.8:245:2: WARNING: skipping paragraph macro: PP empty mandoc: init.8:252:2: WARNING: skipping paragraph macro: PP empty mandoc: init.8:256:83: STYLE: input text line longer than 80 bytes: to the console/stdou... mandoc: init.8:258:46: STYLE: whitespace at end of input line mandoc: init.8:259:2: WARNING: skipping paragraph macro: PP empty mandoc: init.8:271:2: WARNING: skipping paragraph macro: PP empty mandoc: init.8:278:86: STYLE: input text line longer than 80 bytes: When \fBinit\fP rece... -.-. Remove space characters at the end of lines. Use "git apply ... --whitespace=fix" to fix extra space issues, or use global configuration "core.whitespace". 125:it is signaled by \fBtelinit\fP to change the system's runlevel. 180:tell \fBinit\fP to re-execute itself (preserving the state). No re-examining of 258:immediately exits with a return code of zero. -.-. Change '-' (\-) to '\(en' (en-dash) for a numeric range. GNU gnulib has recently (2023-06-18) updated its "build_aux/update-copyright" to recognize "\(en" in man pages. init.8:86:Runlevels 7-9 are also valid, though not really documented. This is init.8:229:.B 1-5 -.-. Change two HYPHEN-MINUSES (code 0x2D) to an em-dash (\(em), if one is intended. " \(em " creates a too big gap in the text (in "troff"). An en-dash is usually surrounded by a space, while an em-dash is used without spaces. "man" (1 byte characters in input) transforms an en-dash (\(en) to one HYPHEN-MINUS, and an em-dash to two HYPHEN-MINUSES without considering the space around it. If "--" are two single "-" (end of options) then use "\-\-". init.8:36:.RB [ " --version " ] -.-. Change -- in x--y to \(em (em-dash), or, if an option, to \-\- 36:.RB [ " --version " ] -.-. Change a HYPHEN-MINUS (code 0x2D) to a minus(-dash) (\-), if it is in front of a name for an option, is a symbol for standard input, is a single character used to indicate an option, or is in the NAME section (man-pages(7)). N.B. - (0x2D), processed as a UTF-8 file, is changed to a hyphen (0x2010, groff \[u2010] or \[hy]) in the output. 29:.RB [ " -a " ] 30:.RB [ " -s " ] 31:.RB [ " -b " ] 36:.RB [ " --version " ] 151:control channel - see the \fBinitctl\fR(5) manual page for more documentation 187:is 3 seconds, but this can be changed with the \fB-t\fP option. 189:\fBtelinit -e\fP tells \fBinit\fP to change the environment 191:The argument of \fB-e\fP is either of the form \fIVAR\fP=\fIVAL\fP 223:.B -s, S, single 233:.B -b, emergency 238:.B -a, auto 243:measures - of course the user could specify "auto" or \fB-a\fR on the 247:.BI "-z " xxx 248:The argument to \fB-z\fP is ignored. You can use this to expand the command -.-. Wrong distance between sentences in the input file. Separate the sentences and subordinate clauses; each begins on a new line. See man-pages(7) ("Conventions for source file layout") and "info groff" ("Input Conventions"). The best procedure is to always start a new sentence on a new line, at least, if you are typing on a computer. Remember coding: Only one command ("sentence") on each (logical) line. E-mail: Easier to quote exactly the relevant lines. Generally: Easier to edit the sentence. Patches: Less unaffected text. Search for two adjacent words is easier, when they belong to the same line, and the same phrase. The amount of space between sentences in the output can then be controlled with the ".ss" request. N.B. The number of lines affected can be too large to be in a patch. 62:\fB0\(en6\fP and \fBS\fP (a.k.a. \fBs\fP). The runlevel is 86:Runlevels 7-9 are also valid, though not really documented. This is 96:type \fBinitdefault\fP (see \fBinittab\fR(5)). The \fBinitdefault\fP entry 107:\fBstty\fP settings to sane values. Clocal mode is set. Hardware 116:\fI/etc/initscript\fP exists. If it does, it uses this script to 134:signal (SIGPWR), it reads the file \fI/etc/powerstatus\fP. It then starts 137:Power is failing, UPS is providing the power. Execute the \fBpowerwait\fP 142:The power is failing and the UPS has a low battery. Execute the 149:Usage of \fBSIGPWR\fP and \fI/etc/powerstatus\fP is discouraged. Someone 180:tell \fBinit\fP to re-execute itself (preserving the state). No re-examining of 181:\fI/etc/inittab\fP file happens. Runlevel should be one of 211:As the name says. Useful to determine if a script runs directly from \fBinit\fP. 217:The system console. This is really inherited from the kernel; however 221:boot monitor (eg. LILO or GRUB). \fBinit\fP accepts the following flags: 224:Single user mode boot. In this mode \fI/etc/inittab\fP is 242:variable to "yes". Note that you cannot use this for any security 248:The argument to \fB-z\fP is ignored. You can use this to expand the command 249:line a bit, so that it takes some more space on the stack. \fBinit\fP 256:to the console/stdout. It is a quick way to determine which \fBinit\fP software and 257:version is being used. After the version information is displayed, \fBinit\fP 262:\fBTelinit\fP uses this to communicate with \fBinit\fP. The interface is not 263:very well documented or finished. Those interested should study the 275:\fB/run/initctl\fP. Useful for bootscripts when \fI/dev\fP is remounted. 279:\fB/run/initctl\fP, closed. This may be used to make sure \fBinit\fP is not 280:holding open any files. However, it also prevents \fBinit\fP from switching 281:runlevels. Which means commands like shutdown no longer work. 286:pressed. It activates the \fIctrlaltdel\fP action. 293:\fBinit\fP is compatible with the System V init. It works closely -.-. Split lines longer than 80 characters into two or more lines. Appropriate break points are the end of a sentence and a subordinate clause; after punctuation marks. Line 130, length 84 \fBtelinit Q\fP or \fBq\fP command can wake up \fBinit\fP to re-examine (reload) the Line 186, length 83 between sending processes the \fBSIGTERM\fR and \fBSIGKILL\fR signals. The default Line 256, length 83 to the console/stdout. It is a quick way to determine which \fBinit\fP software and Line 278, length 86 When \fBinit\fP receives \fBSIGUSR2\fR, \fBinit\fP closes and leaves the control fifo, -.-. Use \(en (en-dash) for a dash between space characters, not a minus (\-) or a hyphen (-), except in the NAME section. init.8:151:control channel - see the \fBinitctl\fR(5) manual page for more documentation init.8:243:measures - of course the user could specify "auto" or \fB-a\fR on the -.-. Put a parenthetical sentence, phrase on a separate line, if not part of a code. See man-pages(7), item "semantic newline". init.8:62:\fB0\(en6\fP and \fBS\fP (a.k.a. \fBs\fP). The runlevel is init.8:70:or runlevel 1 (switching from a multi-user runlevel) init.8:96:type \fBinitdefault\fP (see \fBinittab\fR(5)). The \fBinitdefault\fP entry init.8:98:entry (or no \fI/etc/inittab\fR at all), a runlevel must be init.8:180:tell \fBinit\fP to re-execute itself (preserving the state). No re-examining of init.8:215:The previous runlevel (useful after a runlevel switch). init.8:221:boot monitor (eg. LILO or GRUB). \fBinit\fP accepts the following flags: init.8:240:booted the kernel with the default command line (without user intervention). -.-. FSF office address update. See https://lists.gnu.org/archive/html/bug-gnulib/2024-09/msg00004.html 16:.\" Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA -.-. Protect "^From " from forcing a mail software to use "quoted-printable" encoding, by adding "\&" in front of it. 202:From this it follows that instead of calling \fBtelinit\fP one can also -.-. Output from "test-groff -mandoc -t -K utf8 -rF0 -rHY=0 -ww -b -z ": troff: backtrace: file '<stdin>':125 troff:<stdin>:125: warning: trailing space in the line troff: backtrace: file '<stdin>':180 troff:<stdin>:180: warning: trailing space in the line troff: backtrace: file '<stdin>':258 troff:<stdin>:258: warning: trailing space in the line -.- FSF office address update. See https://lists.gnu.org/archive/html/bug-gnulib/2024-09/msg00004.html 16:.\" Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA -.- Change extra (unnecessary) '.PP' to '.' to conserve line count (number).
--- init.8 2024-11-11 19:06:48.698215867 +0000 +++ init.8.new 2024-11-11 19:49:13.134508251 +0000 @@ -26,14 +26,14 @@ init, telinit \- process control initial .\"{{{ Synopsis .SH SYNOPSIS .B /sbin/init -.RB [ " -a " ] -.RB [ " -s " ] -.RB [ " -b " ] +.RB [ " \-a " ] +.RB [ " \-s " ] +.RB [ " \-b " ] [ \fB\-z\fP \fIxxx\fP ] .RB [ " 0123456Ss " ] .br .B /sbin/init -.RB [ " --version " ] +.RB [ " \-\-version " ] .br .B /sbin/telinit [ \fB\-t\fP \fISECONDS\fP ] @@ -52,14 +52,14 @@ from a script stored in the file \fI/etc \fBinittab\fR(5)). This file usually has entries which cause \fBinit\fR to spawn \fBgetty\fRs on each line that users can log in. It also controls autonomous processes required by any particular system. -.PP +. .\"{{{ Runlevels .SH RUNLEVELS A \fIrunlevel\fR is a software configuration of the system which allows only a selected group of processes to exist. The processes spawned by \fBinit\fR for each of these runlevels are defined in the \fI/etc/inittab\fR file. \fBinit\fR can be in one of eight runlevels: -\fB0\(en6\fP and \fBS\fP (a.k.a. \fBs\fP). The runlevel is +\fB0\(en6\fP and \fBS\fP (a.k.a., \fBs\fP). The runlevel is changed by having a privileged user run \fBtelinit\fP, which sends appropriate signals to \fBinit\fP, telling it which runlevel to change to. @@ -83,38 +83,40 @@ the administrator performs maintenance a For more information, see the manpages for \fBshutdown\fP(8) and \fBinittab\fP(5). .PP -Runlevels 7-9 are also valid, though not really documented. This is -because "traditional" Unix variants don't use them. +Runlevels 7\(en9 are also valid, though not really documented. +This is because "traditional" Unix variants don't use them. .PP Runlevels \fIS\fP and \fIs\fP are the same. Internally they are aliases for the same runlevel. .\"}}} -.PP +. .SH BOOTING After \fBinit\fP is invoked as the last step of the kernel boot sequence, it looks for the file \fI/etc/inittab\fP to see if there is an entry of the -type \fBinitdefault\fP (see \fBinittab\fR(5)). The \fBinitdefault\fP entry -determines the initial runlevel of the system. If there is no such -entry (or no \fI/etc/inittab\fR at all), a runlevel must be -entered at the system console. +type \fBinitdefault\fP (see \fBinittab\fR(5)). +The \fBinitdefault\fP entry determines the initial runlevel of the system. +If there is no such entry +(or no \fI/etc/inittab\fR at all), +a runlevel must be entered at the system console. .PP Runlevel \fBS\fP or \fBs\fP initialize the system and do not require an \fI/etc/inittab\fP file. .PP In single user mode, \fB/sbin/sulogin\fP is invoked on \fI/dev/console\fP. .PP -When entering single user mode, \fBinit\fP initializes the consoles -\fBstty\fP settings to sane values. Clocal mode is set. Hardware -speed and handshaking are not changed. +When entering single user mode, +\fBinit\fP initializes the consoles \fBstty\fP settings to sane values. +Clocal mode is set. +Hardware speed and handshaking are not changed. .PP When entering a multi-user mode for the first time, \fBinit\fP performs the \fBboot\fP and \fBbootwait\fP entries to allow file systems to be mounted before users can log in. Then all entries matching the runlevel are processed. .PP -When starting a new process, \fBinit\fP first checks whether the file -\fI/etc/initscript\fP exists. If it does, it uses this script to -start the process. +When starting a new process, +\fBinit\fP first checks whether the file \fI/etc/initscript\fP exists. +If it does, it uses this script to start the process. .PP Each time a child terminates, \fBinit\fP records the fact and the reason it died in \fI/var/run/utmp\fP and \fI/var/log/wtmp\fP, @@ -122,34 +124,37 @@ provided that these files exist. .SH CHANGING RUNLEVELS After it has spawned all of the processes specified, \fBinit\fP waits for one of its descendant processes to die, a powerfail signal, or until -it is signaled by \fBtelinit\fP to change the system's runlevel. +it is signaled by \fBtelinit\fP to change the system's runlevel. When one of the above three conditions occurs, it re-examines the \fI/etc/inittab\fP file. New entries can be added to this file at any time. However, \fBinit\fP still waits for one of the above three -conditions to occur. To provide for an instantaneous response, the -\fBtelinit Q\fP or \fBq\fP command can wake up \fBinit\fP to re-examine (reload) the -\fI/etc/inittab\fP file. +conditions to occur. +To provide for an instantaneous response, +the \fBtelinit Q\fP or \fBq\fP command can wake up \fBinit\fP to re-examine +(reload) the \fI/etc/inittab\fP file. .PP If \fBinit\fP is not in single user mode and receives a powerfail -signal (SIGPWR), it reads the file \fI/etc/powerstatus\fP. It then starts -a command based on the contents of this file: +signal (SIGPWR), +it reads the file \fI/etc/powerstatus\fP. +It then starts a command based on the contents of this file: .IP F(AIL) -Power is failing, UPS is providing the power. Execute the \fBpowerwait\fP -and \fBpowerfail\fP entries. +Power is failing, +UPS is providing the power. +Execute the \fBpowerwait\fP and \fBpowerfail\fP entries. .IP O(K) The power has been restored, execute the \fBpowerokwait\fP entries. .IP L(OW) -The power is failing and the UPS has a low battery. Execute the -\fBpowerfailnow\fP entries. +The power is failing and the UPS has a low battery. +Execute the \fBpowerfailnow\fP entries. .PP If \fI/etc/powerstatus\fR doesn't exist or contains anything else then the letters \fBF\fP, \fBO\fP or \fBL\fP, \fBinit\fR will behave as if it has read the letter \fBF\fP. .PP -Usage of \fBSIGPWR\fP and \fI/etc/powerstatus\fP is discouraged. Someone -wanting to interact with \fBinit\fP should use the \fI/run/initctl\fP -control channel - see the \fBinitctl\fR(5) manual page for more documentation -about this. +Usage of \fBSIGPWR\fP and \fI/etc/powerstatus\fP is discouraged. +Someone wanting to interact with \fBinit\fP should use the \fI/run/initctl\fP +control channel \(en +see the \fBinitctl\fR(5) manual page for more documentation about this. .PP When \fBinit\fP is requested to change the runlevel, it sends the warning signal \fBSIGTERM\fP to all processes that are undefined @@ -177,18 +182,19 @@ tell \fBinit\fP to re-examine the \fI/et .IP "\fBS\fP or \fBs\fP" tell \fBinit\fP to switch to single user mode. .IP "\fBU\fP or \fBu\fP" -tell \fBinit\fP to re-execute itself (preserving the state). No re-examining of -\fI/etc/inittab\fP file happens. Runlevel should be one of -\fBSs0123456\fP +tell \fBinit\fP to re-execute itself (preserving the state). +No re-examining of \fI/etc/inittab\fP file happens. +Runlevel should be one of \fBSs0123456\fP otherwise request would be silently ignored. .PP \fBtelinit\fP can tell \fBinit\fP how long it should wait -between sending processes the \fBSIGTERM\fR and \fBSIGKILL\fR signals. The default -is 3 seconds, but this can be changed with the \fB-t\fP option. +between sending processes the \fBSIGTERM\fR and \fBSIGKILL\fR signals. +The default is 3 seconds, +but this can be changed with the \fB\-t\fP option. .PP -\fBtelinit -e\fP tells \fBinit\fP to change the environment +\fBtelinit \-e\fP tells \fBinit\fP to change the environment for processes it spawns. -The argument of \fB-e\fP is either of the form \fIVAR\fP=\fIVAL\fP +The argument of \fB\-e\fP is either of the form \fIVAR\fP=\fIVAL\fP which sets variable \fIVAR\fP to value \fIVAL\fP, or of the form \fIVAR\fP (without an equality sign) @@ -199,7 +205,7 @@ privileges. .PP The \fBinit\fP binary checks if it is \fBinit\fP or \fBtelinit\fP by looking at its \fIprocess id\fP; the real \fBinit\fP's process id is always \fB1\fP. -From this it follows that instead of calling \fBtelinit\fP one can also +\&From this it follows that instead of calling \fBtelinit\fP one can also just use \fBinit\fP instead as a shortcut. .\"}}} .\"}}} @@ -208,93 +214,107 @@ just use \fBinit\fP instead as a shortcu .IP \fBPATH\fP \fI/bin:/usr/bin:/sbin:/usr/sbin\fP .IP \fBINIT_VERSION\fP -As the name says. Useful to determine if a script runs directly from \fBinit\fP. +As the name says. +Useful to determine if a script runs directly from \fBinit\fP. .IP \fBRUNLEVEL\fP The current system runlevel. .IP \fBPREVLEVEL\fP The previous runlevel (useful after a runlevel switch). .IP \fBCONSOLE\fP -The system console. This is really inherited from the kernel; however +The system console. +This is really inherited from the kernel; however if it is not set \fBinit\fP will set it to \fI/dev/console\fP by default. .SH BOOTFLAGS It is possible to pass a number of flags to \fBinit\fP from the -boot monitor (eg. LILO or GRUB). \fBinit\fP accepts the following flags: +boot monitor (e.g., LILO or GRUB). +\fBinit\fP accepts the following flags: .TP 0.5i -.B -s, S, single -Single user mode boot. In this mode \fI/etc/inittab\fP is -examined and the bootup rc scripts are usually run before -the single user mode shell is started. -.PP +.B \-s, S, single +Single user mode boot. +In this mode \fI/etc/inittab\fP is examined and +the bootup rc scripts are usually run before the single user mode shell is +started. +. .TP 0.5i -.B 1-5 +.B 1\(en5 Runlevel to boot into. -.PP +. .TP 0.5i -.B -b, emergency +.B \-b, emergency Boot directly into a single user shell without running any other startup scripts. -.PP +. .TP 0.5i -.B -a, auto +.B \-a, auto The LILO boot loader adds the word "auto" to the command line if it booted the kernel with the default command line (without user intervention). If this is found \fBinit\fP sets the "AUTOBOOT" environment -variable to "yes". Note that you cannot use this for any security -measures - of course the user could specify "auto" or \fB-a\fR on the +variable to "yes". +Note that you cannot use this for any security measures \(en +of course the user could specify "auto" or \fB\-a\fR on the command line manually. -.PP +. .TP 0.5i -.BI "-z " xxx -The argument to \fB-z\fP is ignored. You can use this to expand the command -line a bit, so that it takes some more space on the stack. \fBinit\fP -can then manipulate the command line so that \fBps\fP(1) shows -the current runlevel. -.PP +.BI "\-z " xxx +The argument to \fB\-z\fP is ignored. +You can use this to expand the command line a bit, +so that it takes some more space on the stack. +\fBinit\fP can then manipulate the command line +so that \fBps\fP(1) shows the current runlevel. +. .TP 0.5i .B \-\-version This argument, when used on its own, displays the current version of \fBinit\fP -to the console/stdout. It is a quick way to determine which \fBinit\fP software and -version is being used. After the version information is displayed, \fBinit\fP -immediately exits with a return code of zero. -.PP +to the console/stdout. +It is a quick way to determine which \fBinit\fP software and +version is being used. +After the version information is displayed, +\fBinit\fP immediately exits with a return code of zero. +. .SH INTERFACE \fBinit\fP listens on a \fIfifo\fP in /dev, \fI/run/initctl\fP, for messages. -\fBTelinit\fP uses this to communicate with \fBinit\fP. The interface is not -very well documented or finished. Those interested should study the -\fIinitreq.h\fP file in the \fIsrc/\fP subdirectory of the \fBinit\fP -source code tar archive. +\fBTelinit\fP uses this to communicate with \fBinit\fP. +The interface is not very well documented or finished. +Those interested should study the \fIinitreq.h\fP file in the \fIsrc/\fP +subdirectory of the \fBinit\fP source code tar archive. .SH SIGNALS Init reacts to several signals: .TP 0.5i .B SIGHUP Has the same effect as \fBtelinit q\fP. -.PP +. .TP 0.5i .B SIGUSR1 -On receipt of this signals, \fBinit\fP closes and re-opens its control fifo, -\fB/run/initctl\fP. Useful for bootscripts when \fI/dev\fP is remounted. +On receipt of this signals, +\fBinit\fP closes and re-opens its control fifo, +\fB/run/initctl\fP. +Useful for bootscripts when \fI/dev\fP is remounted. .TP 0.5i .B SIGUSR2 -When \fBinit\fP receives \fBSIGUSR2\fR, \fBinit\fP closes and leaves the control fifo, -\fB/run/initctl\fP, closed. This may be used to make sure \fBinit\fP is not -holding open any files. However, it also prevents \fBinit\fP from switching -runlevels. Which means commands like shutdown no longer work. +When \fBinit\fP receives \fBSIGUSR2\fR, +\fBinit\fP closes and leaves the control fifo, +\fB/run/initctl\fP, closed. +This may be used to make sure \fBinit\fP is not holding open any files. +However, it also prevents \fBinit\fP from switching runlevels. +Which means commands like shutdown no longer work. The fifo can be re-opened by sending \fBinit\fP the \fBSIGUSR1\fR signal. .TP 0.5i .B SIGINT Normally the kernel sends this signal to \fBinit\fP when CTRL-ALT-DEL is -pressed. It activates the \fIctrlaltdel\fP action. +pressed. +It activates the \fIctrlaltdel\fP action. .TP 0.5i .B SIGWINCH The kernel sends this signal when the \fIKeyboardSignal\fP key is hit. It activates the \fIkbrequest\fP action. \"{{{ Conforming to .SH CONFORMING TO -\fBinit\fP is compatible with the System V init. It works closely -together with the scripts in the directories +\fBinit\fP is compatible with the System V init. +It works closely together with the scripts in the directories \fI/etc/init.d\fP and \fI/etc/rc{runlevel}.d\fP. -If your system uses this convention, there should be a \fIREADME\fP -file in the directory \fI/etc/init.d\fP explaining how these scripts work. +If your system uses this convention, +there should be a \fIREADME\fP file in the directory \fI/etc/init.d\fP +explaining how these scripts work. .\"}}} .\"{{{ Files .SH FILES