Wed Jul 3 22:46:38 2024 UTC
Wed Feb 28 14:42:19 2024 UTC
Cards: The Package Manager
Re: Extremely slow download speed
Sun Feb 25 23:31:04 2024 UTC
Cards: The Package Manager
Extremely slow download speed
Sat Feb 24 03:36:33 2024 UTC
Re: Shutdown issues
Sun Feb 18 19:09:11 2024 UTC
Re: Shutdown issues
Sun Feb 18 12:29:38 2024 UTC
Re: Wireguard Package Request
Sun Feb 18 11:03:40 2024 UTC
Re: Shutdown issues
Sat Feb 17 19:58:32 2024 UTC
Re: Shutdown issues
Sat Feb 17 11:02:14 2024 UTC
Re: Shutdown issues
Sat Feb 17 04:58:06 2024 UTC
Shutdown issues

Sat Dec 28 14:08:52 2019 UTC



SysVinit is the init process (the process that starts other processies) of NuTyX. Inits are often called PID1 (process ID 1) since they are always the first process to start on a system. They INITialize the system. SysVinit's origins can be traced back to unix and has been frequently used in numerous distros.


SysVinit functions by defining what processes startup based on their runlevels. Runlevels can be found be in the /etc/rc.d folder and are defined in the /etc/initab file.

Navigate to /etc/rc.d using the cd command:

cd /etc/rc.d

The output from an ls command should be:

init.d  rc0.d  rc1.d  rc2.d  rc3.d  rc4.d  rc5.d  rc6.d  rcS.d

The following directories e.g. rc0, rc1, etc are all runlevels in NuTyX.

Runlevels in NuTyX

The default configuration of the NuTyX runlevels is:

  • rc0 (runlevel 0): Halt.
  • rc1 (runlevel 1): Single user mode.
  • rc2 (runlevel 2): Multiuser Mode.
  • rc3 (runlevel 3): Full Multiuser Mode
  • rc4 (runlevel 4): Full Multiuser Mode
  • rc5 (runlevel 5): Graphical Environment Mode
  • rc6 (runlevel 6): Reboot
  • rcS (runlevel S): Tells the system what to run during initialization.

rcS is a runlevel whose main use is for the initialization of the system. Runlevel 4 is a repeat of 3 so that a user may edit it and use it for what they seem fit.

Contents of the Folders

Navigating to each runlevel, the contents can be listed out through an ls command:


Example of my runlevel 2:

K46ntpd  K80network  S15dbus  S25cups  S25random  S31elogind  S70gpm

All files within this directory are not startup scripts themselves but symbolic links to startup scripts. These scripts are contained in the /etc/init.d directory. The letter beginning each link has significance. A link beginning with k means that the service is killed at this run level and needs the appropriate portion of the script to run. S means that the service must start at this runlevel. The number following the letter indicates the priority for the service to start or be killed (when starting up services, in what order to start them). The lower numbers are started first and then the higher ones are started.

Looking at a Startup Script

Open a script in /etc/init.d with your favorite text editor. The following is a portion of my cups file within init.d:

case $1 in
        log_info_msg "Starting CUPS Printserver..."
        start_daemon /usr/sbin/cupsd

       log_info_msg "Stopping CUPS Printserver..."
       killproc /usr/sbin/cupsd

Each script is a file written in bash that contains a "case" statement. "Case" statements are used to match an arguement to several different outcomes. Through "case" statements, these scripts only run portions of code needed for specific tasks. For example, upon starting a service, a script will run all of the lines relating to "start" and then "end".