SysVinit -> systemd

people hate updates/changes – because it interrupts their workflows – it also causes stress – because it takes energy and time to learn and adapt new methologies 😉 (which might in return make their workflows even better… faster… efficient… because computer are now starting/rebooting faster… less wait)

maybe they also will have to rewrite 10.000 script files… argh 😀

therefore as far as i have learned – systemd is implementing new features while at the same time trying to stay SysVinit „runlevel“ backward-compatible.

Even if the update makes things like 1000x times better than what you had before 😀 … checkout the banking/FinTECH sector is running WinXP on ATMs… as long as they possible can… and even on nuclear submarines. ( i just hope they don’t hook it up to „THE INTERNET“)

Even Linus Torvalds said – if there were not new hardware every year – we had nothing to do 😀

i don’t think so – there is always plenty of work – but keeping a good work-life balance is key – or your family might stay angry for 10 years

Actually – what do you need more than the speed of an intel i5 quadcore with 8GByte of RAM? Especially … if you DO NOT NEED the latest Windows. Because you are on (Universal – run everywhere – Debian) Linux.

so i predict – also with hardware – some market-saturation is taking place (can already be seen – desktop PC in decline – laptop still in use – but people try to do as much as they can on their touchable-wearable-mobile mini-smart-phone-laptop without keyboard… typing long texts like these just suck without a keyboard)

but well… nowhere things change faster than in I.T…. you can safely assume that whitin 10 years… a lot of things have and will change in I.T.

That’s why nobody can be god-of-everything – everybody will have to specify and set focus to as much as is 99% handleable.

So when companies ask for the „employee-that-does-it-all“… just like a device or server that „does it all“ like the IPhone – camera – navigation – and you can actually still reliably make calls – wonder device – i guess it does not exist. 😀

Well the IPhone exists and kind of works – but it is probably one of the most complex things mankind ever build – so there will be millions and millions of errors in it – and if Apple does lazy quality testing… everyday life functionality gets unreliable.

Also you don’t always want to run around with a device that is perfect for spying on you:

think about it:

fast mobile internet + camera + microphone + gps = „THE“ perfect „spying on you“-device. Call it: the ISpy. (Check this out: Backdoor in Samsung Galaxy Android Smartphones – how can you tell something like this does not exist on an IDevice?)

Efficiency is one thing – but you also will need resilience – probably even more than efficiency – 70% resiliance 30% efficiency seems to be what „nature“ does.

Good balance important.

Less is more – the less software you need – the less complexity – the easier to manage – less probability of errors – will result into less errors and there fore more stability, security and user satisfaction and adoption.

UNIX Philosophy – Simple and Beautiful.

I guess Mr Jobs honored those values plus some innovative crazyness – that sometimes (multi-touch) – not always increase efficiency but sometimes is simpliy beautiful („beautiful“ seems to be the opposite of „do what sells for sure“ thinking)

back to topic: SysVinit uses runlevels – systemd uses targets

unfortunately different implementations of UNIX/LINUX use(d) different runlevels for different things.

in general it should be roughly like:

0 – System halt; no activity, the system can be safely powered down.
1 – Single user text mode; stop all programs and services, repair filesystem and other maintenance. („give root password“ or Ctrl+D)


2 – Multiple users, no NFS (network filesystem);
3 – Multiple users, command line (i.e., all-text mode) interface; the standard runlevel for most Linux-based server hardware.
4 – User-definable
5 – Multiple users, GUI (graphical user interface); the standard runlevel for most Linux-based desktop systems.
6 – Reboot; used when restarting the system.

src: http://www.linfo.org/runlevel_def.html

to confuse you even more – Runlevels -systemd-> States

SysVInit is step for step replaced by systemd – which is just more capable.

SysVInit (old system used) used static runlevels to create different states to boot into, and most distros use five:

  • Single-user mode
  • Multi-user mode without network services started
  • Multi-user mode with network services started
  • System shutdown
  • System reboot.

Runlevels can be thought of „sets“. Set1 loads a different amount of services than Set5.

systemd

If something is not complicated – it is not from Germany. systemd is partly from Germany 😀 so yes it is complex and complicated and will take time to „sink in“/get used to – i just hope the concept won’t change every year.

list current target

output in what „target“/runlevel you are operating right now.

systemctl get-default;

change target

systemctl isolate sleep.target
# or
systemctl isolate hibernate.target
# or
systemctl isolate reboot.target

how to set default target to boot into

The symlink

#debian 8.8
/lib/systemd/system/default.target -> graphical.target

#centos7
/etc/systemd/system/default.target -> /usr/lib/systemd/system/graphical.target

#suse12
/etc/systemd/system/default.target -> /usr/lib/systemd/system/graphical.target

controls where we boot into by default.

unlink /lib/systemd/system/default.target; # delete link

ln -sv /lib/systemd/system/rescue.target /lib/systemd/system/default.target; # crate new link

‘/lib/systemd/system/default.target’ -> ‘/lib/systemd/system/rescue.target’

what is a targets?

A unit configuration file whose name ends in „.target“ (why not „.unit“? seems to make more sense to me) encodes information about a target unit of systemd, which is used for grouping units and as well-known synchronization points during start-up.

target1
   |_____state1
   |
   |_____state2
   |        |_____unit1
   |        |_____unit2
   |        |_____unit3
   |
   |_____state3

target2
   |_____state2
   |        |_____unit1
   |
   |_____state3
            |_____unit1
            |_____unit2

Instead of runlevels, systemd allows you to create different states, which gives you a flexible mechanism for creating different configurations to boot into.

These states are composed of multiple unit files bundled into targets.

Targets have nice descriptive names instead of numbers.

Unit files control services, devices, sockets, and mounts.

You can see what these look like by examining the prefab targets that come with systemd, for example

/usr/lib/systemd/system/graphical.target

, which is the default on CentOS 7

src: https://www.linux.com/learn/intro-systemd-runlevels-and-service-management-commands

list all possible targets/runlevels

systemctl list-units --type target

UNIT                   LOAD   ACTIVE SUB    DESCRIPTION
basic.target           loaded active active Basic System
cryptsetup.target      loaded active active Encrypted Volumes
getty.target           loaded active active Login Prompts
graphical.target       loaded active active Graphical Interface
local-fs-pre.target    loaded active active Local File Systems (Pre)
local-fs.target        loaded active active Local File Systems
multi-user.target      loaded active active Multi-User System
network-online.target  loaded active active Network is Online
network.target         loaded active active Network
nss-lookup.target      loaded active active Host and Network Name Lookups
nss-user-lookup.target loaded active active User and Group Name Lookups
paths.target           loaded active active Paths
remote-fs.target       loaded active active Remote File Systems
slices.target          loaded active active Slices
sockets.target         loaded active active Sockets
swap.target            loaded active active Swap
sysinit.target         loaded active active System Initialization
time-sync.target       loaded active active System Time Synchronized
timers.target          loaded active active Timers

LOAD   = Reflects whether the unit definition was properly loaded.
ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
SUB    = The low-level unit activation state, values depend on unit type.

19 loaded units listed. Pass --all to see loaded but inactive units, too.
To show all installed unit files use 'systemctl list-unit-files'.

# DEBIAN8.7
uname -a
Linux debian 3.16.0-4-686-pae #1 SMP Debian 3.16.39-1+deb8u2 (2017-03-07) i686 GNU/Linux

find / -name *.target
/usr/lib/systemd/user/default.target
/usr/lib/systemd/user/exit.target
/usr/lib/systemd/user/sockets.target
/usr/lib/systemd/user/printer.target
/usr/lib/systemd/user/smartcard.target
/usr/lib/systemd/user/paths.target
/usr/lib/systemd/user/shutdown.target
/usr/lib/systemd/user/bluetooth.target
/usr/lib/systemd/user/sound.target
/usr/lib/systemd/user/timers.target
/usr/lib/systemd/user/basic.target
/etc/systemd/system/multi-user.target.wants/remote-fs.target
/lib/systemd/system/network.target
/lib/systemd/system/halt.target
/lib/systemd/system/nss-user-lookup.target
/lib/systemd/system/default.target
/lib/systemd/system/sysinit.target
/lib/systemd/system/swap.target
/lib/systemd/system/runlevel6.target
/lib/systemd/system/getty.target
/lib/systemd/system/initrd-root-fs.target
/lib/systemd/system/emergency.target
/lib/systemd/system/multi-user.target.wants/getty.target
/lib/systemd/system/runlevel1.target
/lib/systemd/system/rescue.target
/lib/systemd/system/sockets.target
/lib/systemd/system/graphical.target
/lib/systemd/system/ctrl-alt-del.target
/lib/systemd/system/remote-fs-pre.target
/lib/systemd/system/mail-transport-agent.target
/lib/systemd/system/sigpwr.target
/lib/systemd/system/local-fs.target
/lib/systemd/system/network-online.target
/lib/systemd/system/runlevel5.target
/lib/systemd/system/runlevel3.target
/lib/systemd/system/multi-user.target
/lib/systemd/system/rpcbind.target
/lib/systemd/system/printer.target
/lib/systemd/system/umount.target
/lib/systemd/system/system-update.target
/lib/systemd/system/runlevel4.target
/lib/systemd/system/smartcard.target
/lib/systemd/system/suspend.target
/lib/systemd/system/paths.target
/lib/systemd/system/shutdown.target
/lib/systemd/system/kexec.target
/lib/systemd/system/reboot.target
/lib/systemd/system/initrd-switch-root.target
/lib/systemd/system/initrd.target
/lib/systemd/system/bluetooth.target
/lib/systemd/system/sleep.target
/lib/systemd/system/sound.target
/lib/systemd/system/cryptsetup-pre.target
/lib/systemd/system/slices.target
/lib/systemd/system/timers.target
/lib/systemd/system/network-pre.target
/lib/systemd/system/local-fs-pre.target
/lib/systemd/system/hybrid-sleep.target
/lib/systemd/system/hibernate.target
/lib/systemd/system/basic.target
/lib/systemd/system/runlevel2.target
/lib/systemd/system/cryptsetup.target
/lib/systemd/system/poweroff.target
/lib/systemd/system/sysinit.target.wants/cryptsetup.target
/lib/systemd/system/nss-lookup.target
/lib/systemd/system/time-sync.target
/lib/systemd/system/remote-fs.target
/lib/systemd/system/final.target
/lib/systemd/system/runlevel0.target
/lib/systemd/system/initrd-fs.target

# SUSE12
uname -a
Linux suse 4.4.21-69-default #1 SMP Tue Oct 25 10:58:20 UTC 2016 (9464f67) x86_64 x86_64 x86_64 GNU/Linux
suse:/home/user # find / -name *.target
/etc/systemd/system/multi-user.target.wants/remote-fs.target
/etc/systemd/system/default.target
find: File system loop detected; ‘/.snapshots/1/snapshot’ is part of the same file system loop as/’.
/usr/lib/systemd/system/multi-user.target.wants/getty.target
/usr/lib/systemd/system/basic.target
/usr/lib/systemd/system/bluetooth.target
/usr/lib/systemd/system/busnames.target
/usr/lib/systemd/system/cryptsetup-pre.target
/usr/lib/systemd/system/cryptsetup.target
/usr/lib/systemd/system/ctrl-alt-del.target
/usr/lib/systemd/system/default.target
/usr/lib/systemd/system/emergency.target
/usr/lib/systemd/system/exit.target
/usr/lib/systemd/system/final.target
/usr/lib/systemd/system/getty.target
/usr/lib/systemd/system/graphical.target
/usr/lib/systemd/system/halt.target
/usr/lib/systemd/system/hibernate.target
/usr/lib/systemd/system/hybrid-sleep.target
/usr/lib/systemd/system/initrd-fs.target
/usr/lib/systemd/system/initrd-root-fs.target
/usr/lib/systemd/system/initrd-switch-root.target
/usr/lib/systemd/system/initrd.target
/usr/lib/systemd/system/kexec.target
/usr/lib/systemd/system/local-fs-pre.target
/usr/lib/systemd/system/local-fs.target
/usr/lib/systemd/system/machines.target
/usr/lib/systemd/system/multi-user.target
/usr/lib/systemd/system/network-online.target
/usr/lib/systemd/system/network-pre.target
/usr/lib/systemd/system/network.target
/usr/lib/systemd/system/nss-lookup.target
/usr/lib/systemd/system/nss-user-lookup.target
/usr/lib/systemd/system/paths.target
/usr/lib/systemd/system/poweroff.target
/usr/lib/systemd/system/printer.target
/usr/lib/systemd/system/reboot.target
/usr/lib/systemd/system/remote-fs-pre.target
/usr/lib/systemd/system/remote-fs.target
/usr/lib/systemd/system/rescue.target
/usr/lib/systemd/system/rpcbind.target
/usr/lib/systemd/system/runlevel0.target
/usr/lib/systemd/system/runlevel1.target
/usr/lib/systemd/system/runlevel2.target
/usr/lib/systemd/system/runlevel3.target
/usr/lib/systemd/system/runlevel4.target
/usr/lib/systemd/system/runlevel5.target
/usr/lib/systemd/system/runlevel6.target
/usr/lib/systemd/system/shutdown.target
/usr/lib/systemd/system/sigpwr.target
/usr/lib/systemd/system/sleep.target
/usr/lib/systemd/system/slices.target
/usr/lib/systemd/system/smartcard.target
/usr/lib/systemd/system/sockets.target
/usr/lib/systemd/system/sound.target
/usr/lib/systemd/system/suspend.target
/usr/lib/systemd/system/swap.target
/usr/lib/systemd/system/sysinit.target
/usr/lib/systemd/system/sysinit.target.wants/cryptsetup.target
/usr/lib/systemd/system/system-update.target
/usr/lib/systemd/system/time-sync.target
/usr/lib/systemd/system/timers.target
/usr/lib/systemd/system/umount.target
/usr/lib/systemd/system/nfs-client.target
/usr/lib/systemd/user/basic.target
/usr/lib/systemd/user/bluetooth.target
/usr/lib/systemd/user/busnames.target
/usr/lib/systemd/user/default.target
/usr/lib/systemd/user/exit.target
/usr/lib/systemd/user/paths.target
/usr/lib/systemd/user/printer.target
/usr/lib/systemd/user/shutdown.target
/usr/lib/systemd/user/smartcard.target
/usr/lib/systemd/user/sockets.target
/usr/lib/systemd/user/sound.target
/usr/lib/systemd/user/timers.target

# CENTOS7
uname -a
Linux centos 3.10.0-514.el7.x86_64 #1 SMP Tue Nov 22 16:42:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
[root@centos user]# find / -name *.target
/etc/systemd/system/multi-user.target.wants/remote-fs.target
/etc/systemd/system/default.target
/usr/lib/systemd/system/printer.target
/usr/lib/systemd/system/initrd-root-fs.target
/usr/lib/systemd/system/local-fs.target
/usr/lib/systemd/system/machines.target
/usr/lib/systemd/system/multi-user.target
/usr/lib/systemd/system/network-pre.target
/usr/lib/systemd/system/multi-user.target.wants/getty.target
/usr/lib/systemd/system/network-online.target
/usr/lib/systemd/system/network.target
/usr/lib/systemd/system/runlevel6.target
/usr/lib/systemd/system/reboot.target
/usr/lib/systemd/system/remote-fs-pre.target
/usr/lib/systemd/system/basic.target
/usr/lib/systemd/system/bluetooth.target
/usr/lib/systemd/system/nss-lookup.target
/usr/lib/systemd/system/nss-user-lookup.target
/usr/lib/systemd/system/paths.target
/usr/lib/systemd/system/sound.target
/usr/lib/systemd/system/cryptsetup-pre.target
/usr/lib/systemd/system/cryptsetup.target
/usr/lib/systemd/system/remote-fs.target
/usr/lib/systemd/system/ctrl-alt-del.target
/usr/lib/systemd/system/hibernate.target
/usr/lib/systemd/system/shutdown.target
/usr/lib/systemd/system/halt.target
/usr/lib/systemd/system/rescue.target
/usr/lib/systemd/system/hybrid-sleep.target
/usr/lib/systemd/system/sigpwr.target
/usr/lib/systemd/system/swap.target
/usr/lib/systemd/system/initrd-fs.target
/usr/lib/systemd/system/sleep.target
/usr/lib/systemd/system/runlevel0.target
/usr/lib/systemd/system/default.target
/usr/lib/systemd/system/rpcbind.target
/usr/lib/systemd/system/runlevel1.target
/usr/lib/systemd/system/emergency.target
/usr/lib/systemd/system/runlevel2.target
/usr/lib/systemd/system/final.target
/usr/lib/systemd/system/getty.target
/usr/lib/systemd/system/runlevel3.target
/usr/lib/systemd/system/graphical.target
/usr/lib/systemd/system/runlevel4.target
/usr/lib/systemd/system/poweroff.target
/usr/lib/systemd/system/initrd-switch-root.target
/usr/lib/systemd/system/local-fs-pre.target
/usr/lib/systemd/system/initrd.target
/usr/lib/systemd/system/runlevel5.target
/usr/lib/systemd/system/kexec.target
/usr/lib/systemd/system/slices.target
/usr/lib/systemd/system/smartcard.target
/usr/lib/systemd/system/sockets.target
/usr/lib/systemd/system/suspend.target
/usr/lib/systemd/system/sysinit.target
/usr/lib/systemd/system/sysinit.target.wants/cryptsetup.target
/usr/lib/systemd/system/system-update.target
/usr/lib/systemd/system/time-sync.target
/usr/lib/systemd/system/timers.target
/usr/lib/systemd/system/umount.target
/usr/lib/systemd/system/iprutils.target
/usr/lib/systemd/user/basic.target
/usr/lib/systemd/user/bluetooth.target
/usr/lib/systemd/user/default.target
/usr/lib/systemd/user/exit.target
/usr/lib/systemd/user/paths.target
/usr/lib/systemd/user/printer.target
/usr/lib/systemd/user/shutdown.target
/usr/lib/systemd/user/smartcard.target
/usr/lib/systemd/user/sockets.target
/usr/lib/systemd/user/sound.target
/usr/lib/systemd/user/timers.target
/usr/lib/dracut/modules.d/98systemd/initrd.target

vim /etc/init.d/README

You are looking for the traditional init scripts in /etc/rc.d/init.d, and they are gone?

Here’s an explanation on what’s going on:

You are running a systemd-based OS where traditional init scripts have been replaced by native systemd services files. Service files provide
very similar functionality to init scripts.

To make use of service files simply invoke „systemctl“, which will output a list of all currently running services (and other units). Use „systemctl
list-unit-files“ to get a listing of all known unit files, including stopped, disabled and masked ones. Use „systemctl start
foobar.service“ and „systemctl stop foobar.service“ to start or stop a service, respectively. For further details, please refer to systemctl(1).

Note that traditional init scripts continue to function on a systemd system. An init script /etc/rc.d/init.d/foobar is implicitly mapped into a service unit foobar.service during system initialization.

Thank you!

Further reading:
man:systemctl(1)
man:systemd(1)
http://0pointer.de/blog/projects/systemd-for-admins-1.html
http://0pointer.de/blog/projects/systemd-for-admins-2.html
http://0pointer.de/blog/projects/systemd-for-admins-3.html
http://www.freedesktop.org/wiki/Software/systemd/Incompatibilities

how to test if system is using SysVinit or systemd

SUSE12, Debian8.7, CENTO7 all use systemd (2017.04) –

uname -a
Linux suse 4.4.21-69-default #1 SMP Tue Oct 25 10:58:20 UTC 2016 (9464f67) x86_64 x86_64 x86_64 GNU/Linux
suse:/home/user # ps -p 1
  PID TTY          TIME CMD
    1 ?        00:00:03 systemd

ps -p 1 -o pid,vsz=MEMORY -o user,group=GROUP -o comm,args=ARGS
  PID MEMORY USER     GROUP    COMMAND         ARGS
    1 185136 root     root     systemd         /usr/lib/systemd/systemd --switched-root --system --deserialize 22

uname -a
Linux centos 3.10.0-514.el7.x86_64 #1 SMP Tue Nov 22 16:42:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
[root@centos user]# ps -p 1
  PID TTY          TIME CMD
    1 ?        00:00:01 systemd

 ps -p 1 -o pid,vsz=MEMORY -o user,group=GROUP -o comm,args=ARGS
  PID MEMORY USER     GROUP    COMMAND         ARGS
    1 128092 root     root     systemd         /usr/lib/systemd/systemd --switched-root --system --deserialize 21

uname -a
Linux debian 3.16.0-4-686-pae #1 SMP Debian 3.16.39-1+deb8u2 (2017-03-07) i686 GNU/Linux
root@debian:/home/user# ps -p 1
  PID TTY          TIME CMD
    1 ?        00:00:00 systemd

# under Debian/Ubuntu do not get confused - the binary is called init - but it is the systemd binary
 ps -p 1 -o pid,vsz=MEMORY -o user,group=GROUP -o comm,args=ARGS
  PID MEMORY USER     GROUP    COMMAND         ARGS
    1   5432 root     root     systemd         /sbin/init

vim /etc/init.d/README

bash it

uname -a
# Suse 12 Enterprise Server - Linux 4.4.21-69-default #1 SMP Tue Oct 25 10:58:20 UTC 2016 (9464f67) x86_64 x86_64 x86_64 GNU/Linux

runlevel; # show current runlevel SUSE12
N 5

chkconfig -l; # is the old SysVinit programm, but still working, it is replaced by systemctrl
# it show status of all services and on what runlevel they will be started

Note: This output shows SysV services only and does not include native
systemd services. SysV configuration data might be overridden by native
systemd configuration.
If you want to list systemd services use 'systemctl list-unit-files'.
To see services enabled on particular target use
'systemctl list-dependencies [target]'.
after.local               0:off  1:off  2:off  3:off  4:off  5:off  6:off
chargen                   0:off  1:off  2:off  3:off  4:off  5:off  6:off
chargen-udp               0:off  1:off  2:off  3:off  4:off  5:off  6:off
cifs                      0:off  1:off  2:off  3:off  4:off  5:off  6:off
cups-lpd                  0:off  1:off  2:off  3:off  4:off  5:off  6:off
daytime                   0:off  1:off  2:off  3:off  4:off  5:off  6:off
daytime-udp               0:off  1:off  2:off  3:off  4:off  5:off  6:off
dbus                      0:off  1:off  2:on   3:on   4:off  5:on   6:off
discard                   0:off  1:off  2:off  3:off  4:off  5:off  6:off
discard-udp               0:off  1:off  2:off  3:off  4:off  5:off  6:off
echo                      0:off  1:off  2:off  3:off  4:off  5:off  6:off
echo-udp                  0:off  1:off  2:off  3:off  4:off  5:off  6:off
inputattach               0:off  1:off  2:off  3:off  4:off  5:off  6:off
netstat                   0:off  1:off  2:off  3:off  4:off  5:off  6:off
openct                    0:off  1:off  2:on   3:on   4:on   5:on   6:off
pcscd                     0:off  1:off  2:on   3:on   4:off  5:on   6:off
postfix                   0:off  1:off  2:off  3:off  4:off  5:off  6:off
raw                       0:off  1:off  2:off  3:off  4:off  5:off  6:off
rpmconfigcheck            0:off  1:off  2:off  3:off  4:off  5:off  6:off
rsync                     0:off  1:off  2:off  3:off  4:off  5:off  6:off
servers                   0:off  1:off  2:off  3:off  4:off  5:off  6:off
services                  0:off  1:off  2:off  3:off  4:off  5:off  6:off
slpd                      0:off  1:off  2:off  3:off  4:off  5:off  6:off
snmpd                     0:off  1:off  2:off  3:off  4:off  5:off  6:off
snmptrapd                 0:off  1:off  2:off  3:off  4:off  5:off  6:off
systat                    0:off  1:off  2:off  3:off  4:off  5:off  6:off
time                      0:off  1:off  2:off  3:off  4:off  5:off  6:off
time-udp                  0:off  1:off  2:off  3:off  4:off  5:off  6:off
vnc                       0:off  1:off  2:off  3:off  4:off  5:off  6:off
vsftpd                    0:off  1:off  2:off  3:off  4:off  5:off  6:off
xinetd based services:
        chargen:            off
        chargen-udp:        off
        cups-lpd:           off
        daytime:            off
        daytime-udp:        off
        discard:            off
        discard-udp:        off
        echo:               off
        echo-udp:           off
        netstat:            off
        rsync:              off
        servers:            off
        services:           off
        systat:             off
        time:               off
        time-udp:           off
        vnc:                off
        vsftpd:             off

ls -l /usr/sbin/rc*
lrwxrwxrwx 1 root root 7 24. Apr 12:51 /usr/sbin/rcatd -> service
lrwxrwxrwx 1 root root 7 24. Apr 12:51 /usr/sbin/rcauditd -> service
lrwxrwxrwx 1 root root 7 24. Apr 12:51 /usr/sbin/rcautofs -> service
lrwxrwxrwx 1 root root 7 24. Apr 12:56 /usr/sbin/rcbmc-snmp-proxy -> service
lrwxrwxrwx 1 root root 36 24. Apr 12:55 /usr/sbin/rcbrltty -> ../lib/systemd/system/brltty.service
lrwxrwxrwx 1 root root 7 24. Apr 12:51 /usr/sbin/rcbtrfsmaintenance-refresh -> service
lrwxrwxrwx 1 root root 7 24. Apr 12:58 /usr/sbin/rccifs -> service
lrwxrwxrwx 1 root root 13 24. Apr 12:54 /usr/sbin/rccron -> /sbin/service
lrwxrwxrwx 1 root root 7 24. Apr 12:57 /usr/sbin/rccups -> service
lrwxrwxrwx 1 root root 7 24. Apr 12:41 /usr/sbin/rccups-browsed -> service
lrwxrwxrwx 1 root root 16 24. Apr 12:38 /usr/sbin/rcdbus -> /etc/init.d/dbus
lrwxrwxrwx 1 root root 7 24. Apr 12:55 /usr/sbin/rcdisplay-manager -> service
lrwxrwxrwx 1 root root 7 24. Apr 12:56 /usr/sbin/rcexchange-bmc-os-info -> service
lrwxrwxrwx 1 root root 13 24. Apr 12:49 /usr/sbin/rcfstrim -> /sbin/service
lrwxrwxrwx 1 root root 7 24. Apr 12:51 /usr/sbin/rcgeoclue -> service
lrwxrwxrwx 1 root root 13 24. Apr 12:51 /usr/sbin/rcgpm -> /sbin/service
lrwxrwxrwx 1 root root 7 24. Apr 12:51 /usr/sbin/rchaveged -> service
lrwxrwxrwx 1 root root 23 24. Apr 12:33 /usr/sbin/rcinputattach -> /etc/init.d/inputattach
lrwxrwxrwx 1 root root 7 24. Apr 12:56 /usr/sbin/rcipmievd -> service
lrwxrwxrwx 1 root root 7 24. Apr 12:51 /usr/sbin/rcirqbalance -> service
lrwxrwxrwx 1 root root 7 24. Apr 12:49 /usr/sbin/rciscsi -> service
lrwxrwxrwx 1 root root 7 24. Apr 12:49 /usr/sbin/rciscsid -> service
lrwxrwxrwx 1 root root 7 24. Apr 12:55 /usr/sbin/rciscsiuio -> service
...

ls -l /usr/sbin/rc*|grep slpd
lrwxrwxrwx 1 root root 16 24. Apr 12:49 /usr/sbin/rcopenslp -> /etc/init.d/slpd
lrwxrwxrwx 1 root root 16 24. Apr 12:49 /usr/sbin/rcslpd -> /etc/init.d/slpd

/etc/init.d/slpd status; # get status of service
Checking for slpd unused
● slpd.service - OpenSLP daemon for the Service Location Protocol
Loaded: loaded (/usr/lib/systemd/system/slpd.service; disabled; vendor preset: disabled)
Active: inactive (dead)

/etc/init.d/slpd start; # run the script with argument start to start the service
redirecting to systemctl start slpd.service

suse:/etc/init.d # /etc/init.d/slpd status
Checking for slpd running
● slpd.service - OpenSLP daemon for the Service Location Protocol
Loaded: loaded (/usr/lib/systemd/system/slpd.service; disabled; vendor preset: disabled)
Active: active (running) since Mi 2017-05-03 16:44:20 CEST; 4s ago
Process: 9250 ExecStart=/usr/sbin/slpd (code=exited, status=0/SUCCESS)
Main PID: 9253 (slpd)
Tasks: 1 (limit: 512)
CGroup: /system.slice/slpd.service
└─9253 /usr/sbin/slpd

rcslpd restart; # short for restart service slpd
redirecting to systemctl restart slpd.service

rcslpd stop; # short for stopping service slpd
redirecting to systemctl stop slpd.service

# you can have chkconfig also on debian
apt-get update; apt-get install chkconfig; # should do the job

chkconfig -l; # on debian 8.7
acpid                     0:off  1:off  2:on   3:on   4:on   5:on   6:off
atd                       0:off  1:off  2:on   3:on   4:on   5:on   6:off
avahi-daemon              0:off  1:off  2:on   3:on   4:on   5:on   6:off
bootlogs                  0:off  1:on   2:on   3:on   4:on   5:on   6:off
bootmisc.sh               0:off  1:off  2:off  3:off  4:off  5:off  6:off  S:on
checkfs.sh                0:off  1:off  2:off  3:off  4:off  5:off  6:off  S:on
checkroot-bootclean.sh    0:off  1:off  2:off  3:off  4:off  5:off  6:off  S:on
checkroot.sh              0:off  1:off  2:off  3:off  4:off  5:off  6:off  S:on
console-setup             0:off  1:off  2:off  3:off  4:off  5:off  6:off  S:on
cpufrequtils              0:off  1:off  2:on   3:on   4:on   5:on   6:off
cron                      0:off  1:off  2:on   3:on   4:on   5:on   6:off
dbus                      0:off  1:off  2:on   3:on   4:on   5:on   6:off
exim4                     0:off  1:off  2:on   3:on   4:on   5:on   6:off
hddtemp                   0:off  1:off  2:on   3:on   4:on   5:on   6:off
hdparm                    0:off  1:off  2:off  3:off  4:off  5:off  6:off  S:on
hostname.sh               0:off  1:off  2:off  3:off  4:off  5:off  6:off  S:on
hwclock.sh                0:off  1:off  2:off  3:off  4:off  5:off  6:off  S:on
kbd                       0:off  1:off  2:off  3:off  4:off  5:off  6:off  S:on
keyboard-setup            0:off  1:off  2:off  3:off  4:off  5:off  6:off  S:on
killprocs                 0:off  1:on   2:off  3:off  4:off  5:off  6:off
kmod                      0:off  1:off  2:off  3:off  4:off  5:off  6:off  S:on
lightdm                   0:off  1:off  2:on   3:on   4:on   5:on   6:off
loadcpufreq               0:off  1:off  2:on   3:on   4:on   5:on   6:off
motd                      0:off  1:on   2:on   3:on   4:on   5:on   6:off
mountall-bootclean.sh     0:off  1:off  2:off  3:off  4:off  5:off  6:off  S:on
mountall.sh               0:off  1:off  2:off  3:off  4:off  5:off  6:off  S:on
mountdevsubfs.sh          0:off  1:off  2:off  3:off  4:off  5:off  6:off  S:on
mountkernfs.sh            0:off  1:off  2:off  3:off  4:off  5:off  6:off  S:on
mountnfs-bootclean.sh     0:off  1:off  2:off  3:off  4:off  5:off  6:off  S:on
mountnfs.sh               0:off  1:off  2:off  3:off  4:off  5:off  6:off  S:on
networking                0:off  1:off  2:off  3:off  4:off  5:off  6:off  S:on
nfs-common                0:off  1:off  2:off  3:off  4:off  5:off  6:off  S:on
nmbd                      0:off  1:off  2:on   3:on   4:on   5:on   6:off
procps                    0:off  1:off  2:off  3:off  4:off  5:off  6:off  S:on
rc.local                  0:off  1:off  2:on   3:on   4:on   5:on   6:off
rcS                       0:off  1:off  2:off  3:off  4:off  5:off  6:off
rmnologin                 0:off  1:off  2:on   3:on   4:on   5:on   6:off
rpcbind                   0:off  1:off  2:off  3:off  4:off  5:off  6:off  S:on
rsync                     0:off  1:off  2:on   3:on   4:on   5:on   6:off
rsyslog                   0:off  1:off  2:on   3:on   4:on   5:on   6:off
samba                     0:off  1:off  2:off  3:off  4:off  5:off  6:off
samba-ad-dc               0:off  1:off  2:on   3:on   4:on   5:on   6:off
saned                     0:off  1:off  2:on   3:on   4:on   5:on   6:off
sendsigs                  0:off  1:off  2:off  3:off  4:off  5:off  6:off
smbd                      0:off  1:off  2:on   3:on   4:on   5:on   6:off
ssh                       0:off  1:off  2:on   3:on   4:on   5:on   6:off
sudo                      0:off  1:off  2:off  3:off  4:off  5:off  6:off
udev                      0:off  1:off  2:off  3:off  4:off  5:off  6:off  S:on
udev-finish               0:off  1:off  2:off  3:off  4:off  5:off  6:off  S:on
umountfs                  0:off  1:off  2:off  3:off  4:off  5:off  6:off
umountnfs.sh              0:off  1:off  2:off  3:off  4:off  5:off  6:off
umountroot                0:off  1:off  2:off  3:off  4:off  5:off  6:off
urandom                   0:off  1:off  2:off  3:off  4:off  5:off  6:off  S:on
x11-common                0:off  1:off  2:off  3:off  4:off  5:off  6:off  S:on

Links:

https://packages.debian.org/de/jessie/chkconfig

admin