メジャーなLinuxディストリビューションのほとんどが起動処理にsystemdを採用するようになった一方で、systemdフリーな世界を求めてやまないユーザや開発者をターゲットにしたディストリビューションも少なからず存在する。Debianベースの「Devuan」やArch Linuxベースの「Artix Linux」などはその代表だ。
systemdフリーをめざすのであれば、当然ながらsystemdの代わりにシステムを立ち上げるinitを選ばなくてはならない。Devuanの場合はユーザが任意のinitを選択でき、ArtixであればOpenRCやrunitを利用する。今回紹介する「S6」もそうしたユーティリティのひとつだが、そのシンプルでユニークな設計思想から、Linuxシステムの起動だけでなく、コンテナ環境でのデーモンプロセス自動化などでも使われている。
- s6 - skarnet's small supervision suite
S6はフランス人開発者Laurent Bercotが作成したソフトウェアスイートで、「skarnet.org's small and secure supervision software suite」(skarnet.orgはBercotが運営するサイト名)をもじって名付けられている。特徴としては
- PID 1(プロセスID 1)として実行
- サービスマネージャは別リソース(s6-rcまたはanopa)として用意し、上のレイヤでパラレルサービスマネージャとして実行させる
- トラディショナルなinit(/sbin/init)では実現できないポータビリティにフォーカス
- C言語で開発
- 超軽量(2Mバイト以下)
- コードが少ない
- あらゆるPOSIXシステム/ディストリビューションで実装可能
- ライセンスはISC
などが挙げられるが、とくにPID 1として常時実行できる点やサービスマネージャを別リソースで提供している点が高く評価されており、コンテナ環境下ではSupervisorよりもS6を推すユーザの声もある。
このS6を採用しているディストロとしては、Artixと同じくArch Linuxをベースにした「Obarun」が挙げられる。対応アーキテクチャはx86_64のみで、デフォルトのデスクトップ環境はJVM、インストーラはテキストベース、ライセンスはS6と同じISC、…と、どこまでもシンプリシティにこだわっており、サイトにも明記されているように「Linux初心者には向いていない設計」である。
- Obarun -Arch Linux based system without systemd
- Eric Vidal @Obarun - GitLab
ObarunではS6を効率よく利用するためのコレクションツール群として「S66」も提供しており、Arch Linuxベースというよりは"S6ベース"といった印象だ。S6もObarunも決して初心者向きではないが、systemdにロックされない世界を望むユーザには、魅力的な選択肢となりうるかもしれない。