Finit (Fast Init) is a small SysV init and systemd replacement with process supervision similar to that of daemontools and runit. Its focus is on small and embedded GNU/Linux systems, although it is fully functional on standard server and desktop installations.
Finit is fast because it starts services in parallel. It then supervises and automatically restarts them if they fail. This can be extended upon with custom callbacks for all services, hooks into the boot process, or plugins to extend the functionality and adapt Finit to your needs.
But Finit is not only fast, it’s arguably one of the easiest to get started with. A complete system can be booted with one simple configuration file.
What’s new in Finit 4.0
This release became 4.0, and not 3.2, because of incompatible changes to service conditions. It represents the culmination of many years of hard work by many people.
- Initial support for cgroups v2.
- The stand-alone reboot tool has been replaced with a symlink to initctl, like its siblings: halt, shutdown, poweroff, and suspend.
- Removed built-in inetd super server. If you need this functionality, use an external inetd, like xinetd, instead.
- Service conditions change from the non-obvious <svc/path/to/foo> to <pid/foo:id>
- Support for sysv start/stop scripts as well as monitoring forking services.
- Redirect dbus daemon output to syslog.
- initctl without an argument or option now defaults to list services.
For detailed information you can refer to the full changelog or project’s home page.