SYSTEMD-SYSV-GENERATOR(8)

โœจ SYSTEMD-SYSV-GENERATOR โœจ

the unit generator for SysV init scripts ๐ŸŽ€ โ€” yep, that's the whole vibe of this page, and ngl it's a lil bit of a farewell tour. This is the section 8 manpage for systemd-sysv-generator, bestie. Let's get into it ๐Ÿฆ‹


๐ŸŒธ SYNOPSIS ๐ŸŒธ

/usr/lib/systemd/system-generators/systemd-sysv-generator

that's it. that's the path. she's just vibing in the generators directory ๐Ÿ’…


๐Ÿ’– DESCRIPTION ๐Ÿ’–

Note: this component is deprecated and scheduled for removal. Please replace remaining SysV init scripts with native unit files. ๐Ÿ˜ญ

okay so first things first, she's deprecated and she's on the way out โ€” so if you still have SysV init scripts lying around, the move is to swap them for native unit files. no cap. fr fr. ๐Ÿซถ

systemd-sysv-generator is a generator that makes wrapper .service units for System V init scripts in /etc/init.d/* โ€” and it does this at boot, plus whenever the configuration of the system manager gets reloaded. That's the whole reason systemd(1) can support those old-school scripts similarly to native units. iconic behaviour, honestly โœจ

The LSB headers in SysV init scripts get interpreted, and the ordering that the header specifies gets turned into dependencies between the generated unit and other units. The LSB facilities "$remote_fs", "$network", "$named", "$portmap", "$time" are all supported, and they get turned into dependencies on specific native systemd targets. Want the deets? See systemd.special(7) ๐Ÿ‘‘

lowkey important: the compatibility is quite comprehensive but not 100%. For more details, go look at Compatibility with SysV โ€” it's in the NOTES down below, iykyk ๐Ÿ’œ

also, systemd does not support SysV scripts as part of early boot, so all wrapper units are ordered after basic.target. periodt. no exceptions. ๐Ÿšซ

and finally: systemd-sysv-generator implements systemd.generator(7). so she plays by the generator rules ๐Ÿ’…


๐Ÿฆ‹ SEE ALSO ๐Ÿฆ‹


๐ŸŽ€ NOTES ๐ŸŽ€

  1. System V init https://savannah.nongnu.org/projects/sysvinit
  2. LSB headers http://refspecs.linuxbase.org/LSB_3.1.1/LSB-Core-generic/LSB-Core-generic/iniscrptact.html
  3. Compatibility with SysV https://systemd.io/INCOMPATIBILITIES

and that's the whole page, bestie ๐Ÿ’– thanks for reading all the way to the bottom, you're literally the main character. this one's from systemd 259.10 โ€” mwah, bye!! ๐Ÿ‘‘โœจ

๐Ÿ“ฆ where this page comes from