init システムの比較

From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page Comparison of init systems and the translation is 97% complete.
Other languages:

この記事は init システムを対比させ比較します。以下で比較される init システムには、Gentoo で利用可能なものもあれば、そうでないもの (例えば launchd や SMF) もあります。

利用可能なソフトウェア

機能 init システム
sysvinit OpenRC upstart systemd SMF launchd Epoch finit runit s6 + s6-rc 66 + 66-rc BSD rc.d dinit
Gentoo でサポートされているか 部分的 (OpenRC によって使用される) はい (デフォルトの init) いいえ はい いいえ いいえ はい いいえ はい いいえ いいえ いいえ いいえ
パッケージ / バグ# sys-apps/sysvinit sys-apps/openrc bug #498376
unity-gentoo オーバーレイの sys-apps/upstart
sys-apps/systemd - - sys-apps/epoch - sys-process/runit sys-apps/s6 + sys-apps/s6-rc - - -
対応プラットフォーム Linux / BSD Linux + BSD Linux Linux Solaris MacOSX Linux Linux Linux / BSD / MacOSX Linux / BSD / MacOSX Linux BSD Linux / BSD / MacOSX
主な実装言語 C POSIX シェル (+ C) C C C C C C C C C POSIX シェル (+ C) C++
主な依存 - init (sysv または BSD) D-Bus D-Bus init(sysv?) - libc, /bin/sh ? - skalibs, execline s6, s6-rc rcorder -
init スクリプト/サービスのフォーマット 単一コンフィグファイル シェルスクリプト コンフィグファイル + シェルの断片 コンフィグファイル (ini) XML (+ シェルスクリプト) plist 複数または単一の .conf 複数または単一の .conf シェルスクリプト execline またはシェルスクリプト コンフィグファイル + execline の断片 シェルスクリプト コンフィグファイル
サービスごとの設定 いいえ はい (conf.d) ジョブ内機構によって (通常終了、リスポーン) はい はい (サービスインスタンス) ? はい (v1.1+) ? いいえ いいえ はい いいえ はい
Running as a daemon Yes (PID 1) Yes (PID 1) Yes (PID 1) Yes (PID 1) Yes (invoked) Yes (PID 1) Yes (PID 1) Yes (PID 1) Yes (PID 1) Yes (sys-apps/s6-linux-init) Yes (PID 1) Yes (PID 1) Yes (PID 1)
サービス間依存/イベント いいえ はい はい はい はい いいえ はい (基本的なサポート、v1.3+) ? はい はい はい はい はい
並列サービススタートアップ はい はい (オプション) はい はい はい はい いいえ はい はい はい はい はい はい
デーモンの死活監視 はい はい (オプション、v0.21+、supervise-daemon を利用して) はい はい はい はい はい はい はい はい はい はい はい
サービスファイルの好ましい提供者 n/a Gentoo Ubuntu upstream Solaris MacOSX n/a n/a Void Linux Artix Linux Obarun NetBSD, FreeBSD, OpenBSD n/a
ライセンス GPL v2+ 2-cl. BSD GPL v2 LGPL v2.1+ ? Apache License 2.0 Unlicense MIT BSD ISC ISC BSD Apache License 2.0

(Gentoo で) 対応されているサービス

機能 OpenRC systemd
ファイルシステムのマウント グループ (root, local, network, swap など) 毎に 1 つのスクリプト。 依存関係とともに実行時に生成される、マウントポイント毎に 2 つのユニット (fsck + mount)。
getty (ターミナルプロンプト) /etc/inittab または agetty スクリプトによって開始されます。 テンプレートから必要に応じてインスタンス化される、コンソール毎に 1 つのユニット。
ネットワークの構成 dhcpcd[1][2], netifrc, iwd, または NetworkManager [3] などの複数の選択肢。 統合された (systemd-networkd)、または先述した外部オプションのいずれかを使用して。
X11 ディスプレイマネージャの構成 すべての DM に対する単一のサービス (自動 restart する必要があります)。 個別のディスプレイマネージャユニット。

関連項目

外部資料

参照