Projects / Epoch Init System

Epoch Init System

The Epoch Init System is an init system for Linux designed with ease of configuration and non-intrusiveness in mind. It has no external dependencies besides libc and pthreads on a Linux 2.6+ system, though a working /bin/sh is suggested. It's suitable for large and small Linux distributions, but was designed with a focus on smaller Linux systems. It's features include a log system capable of recording boot events before the filesystem is made writable, ASCII runlevels, a convenient, single configuration file setup, automatic hostname setting at boot, automatic virtual filesystem mounting (think /proc), PID file support, stuck job killing during bootup and shutdown, integrated color greeting banner support, and automatic service restart support, to keep vital services running at all times.

Tags
Licenses
Operating Systems
Implementation
Translations

RSS Recent releases

  •  24 Feb 2014 03:01

Release Notes: A minor bugfix release that fixes broken time related code (mostly with things such as STOPTIMEOUT), with a couple bugfixes to the 'epoch status' command output and buildepoch.sh as well. As STOPTIMEOUT is used mostly with servers, this release was needed.

  •  24 Jan 2014 22:43

Release Notes: General accepted rules for release candidates were broken to bring these important-but-neglected changes to the first stable version: stderr/stdout redirection; a new format for status reports; user and group settings; and pivot_root support. The NOWAIT option is back, but stable this time, as is the FORK option and much more.

  •  21 Dec 2013 08:02

Release Notes: A new, enhanced, and powerful implementation of 'epoch status' is now available. It lists all known services/objects if no argument is specified. Epoch no longer requires pthreads or any threading at all. Support for uClibc and others has been fixed. Logging and BlankLogOnBoot are now enabled by default. A problem where autorestart-enabled services could enter an infinite restart loop was fixed. 'epoch currentrunlevel' was deprecated for 'epoch runlevel', and can be used to change the runlevel. Many bugs were fixed.

  •  07 Dec 2013 07:36

Release Notes: Stability has been greatly improved, and new options and configuration attributes have made Epoch much more pleasant to use. This release includes re-execution support, runlevel inheritance support, ASCII-named priority aliases, and internal MemBus stability fixes.

RSS Recent comments

23 Feb 2014 21:25 Subsentient Thumbs up

I'm glad to announce the release of 1.0.1, a minor bugfix release. It fixes defective code relating to the optional STOPTIMEOUT config option, fixes cosmetic issues with the 'epoch status' command, and fixes bash dependencies in buildepoch.sh.

24 Jan 2014 22:18 Subsentient Thumbs up

I am overjoyed to announce the release of 1.0 stable, codenamed Sage!
This version is the result of half a year of work, and I couldn't be prouder of the functionality of the end result! I have created my idea of the perfect init system, and I sincerely hope others will find it to their liking as well!

24 Jan 2014 22:18 Subsentient Thumbs up

I am overjoyed to announce the release of 1.0 stable, codenamed Sage!
This version is the result of half a year of work, and I couldn't be prouder of the functionality of the end result! I have created my idea of the perfect init system, and I sincerely hope others will find it to their liking as well!

07 Dec 2013 03:28 Subsentient Thumbs up

I'm proud to announce the release of 1.0 RC1! I'd provide a list of changes, but the list is far too extensive. RC1 is a whole new animal! Your existing configuration should work fine, but check the Epoch homepage for additional config attributes now available to you!

11 Nov 2013 08:01 Subsentient Thumbs up

In the latest git/master, I've had to deprecate the NOWAIT option (the screen-style session launching), because some features malfunctioned with it, and it was just generally unstable. It might have been possible to fix it, but I cannot recommend that we use it.

There is still a way to achieve the same goal. Just append an ampersand to the end of your ObjectStartCommand attribute to achieve the same thing plus get an actual exit status. It's a superior way in the end.

Screenshot

Project Spotlight

Attic

A deduplicating backup program.

Screenshot

Project Spotlight

Terrier

A probabilistic Java toolkit for building search engines.