OpenRC
作者 Roy Marples
開発元 OpenRC Developers
初版 2007年4月5日 (17年前) (2007-04-05)
最新版
0.52.1 / 2023年11月17日 (10か月前) (2023-11-17)[1]
リポジトリ ウィキデータを編集
プログラミング
言語
C[2], Shell
対応OS Linux, FreeBSD, NetBSD, TrueOS
サイズ ~900 KB
種別 initデーモン
ライセンス 二条項BSDライセンス
公式サイト www.gentoo.org/proj/en/base/openrc/
テンプレートを表示

OpenRCはUnix系オペレーティングシステムにおける、依存関係ベースのinitシステムである。systemdに移行したディストリビューションの、initシステムの代替選択肢[3][4][5]であり、NetBSDとGentoo Linuxで活躍する開発者、Roy Marplesによって開発された[6][7]。

OpenRCはTrueOS[8]、Gentoo Linux、Alpine Linuxや他のUnix系システムにおいてデフォルトのinitシステムであり、Devuan[9]などのシステムではオプションとして提供されている。

設計

OpenRCのコア部分は、依存関係の管理とinitスクリプトの解析を行う。OpenRCはランレベルをスキャンし、依存関係のグラフを作り、必要なサービスのスクリプトを開始する。スクリプトが開始されたあとはOpenRCは退出する。デフォルトでは、OpenRCは改変されたバージョンのstart-stop-daemonをデーモン管理に用いている[10]。

initスクリプトは、SysVinitで用いられるものと同様であるが、その作成の簡素化のため、いくつかの機能が提供されている。スクリプトは、start()、stop()、status()の状態が推定され、システムはデフォルトの機能を作るために既に宣言された変数を用いる[11]。依存機能は、SysVinitにおけるLSBヘッダーによってなされる他のサービスへの依存関係の宣言に用いられる。設定と動作機構は、conf.dディレクトリ中の設定ファイルとinit.dディレクトリ中のinitファイルに分離されている。

Openrc-initは最初、バージョン0.25において/sbin/initのオプションの代替物として登場した。SysVinitやBusyboxなどの他のinitもサポートされている[12]。

Supervise-daemonは、バージョン0.21において、OpenRCに監査機能を提供するために登場した。この機能はinitスクリプト中でデーモンの開始とモニタリングのために有効化される。runit[13]やs6[14]など他のデーモン監査もサポートされている。

機能

脚注

  1. ↑ “openrc-0.52.1”. December 24, 2023閲覧。
  2. ↑ “openrc”, Analysis Summary (Ohloh) 2012年3月10日閲覧。
  3. ↑ “DistroWatch.com: Put the fun back into computing. Use Linux, BSD.”. distrowatch.com. 2020年4月4日閲覧。
  4. ↑ “5 Differences Between TrueOS & Linux”. 6 April 2020閲覧。
  5. ↑ “Improving TrueOS: OpenRC”. 6 April 2020閲覧。
  6. ↑ “History”. 6 April 2020閲覧。
  7. ↑ “Developers”. 6 April 2020閲覧。
  8. ↑ “4. Post Installation Configuration — TrueOS® User Guide” (英語). www.trueos.org. 2017年3月12日閲覧。
  9. ↑ “Devuan ASCII 2.0.0 stable release” (英語). 2018年7月17日閲覧。
  10. ↑ “user guide”. 6 April 2020閲覧。
  11. ↑ “service script guide”. 6 April 2020閲覧。
  12. ↑ OpenRC
  13. ↑ “runit guide”. 6 April 2020閲覧。
  14. ↑ “s6 Guide”. 6 April 2020閲覧。
  15. ↑ “CGroups Support”. 5 April 2020閲覧。
[脚注の使い方]

外部リンク

⌬ Phoenix Mesh CID: 未登録 IPFS未登録 📡 0ピア N=1 CRITICAL PQS B64