Minirc

提供: ArchWiki
2017年11月4日 (土) 15:23時点におけるKusakata (トーク | 投稿記録)による版 (カテゴリ変更)
ナビゲーションに移動 検索に移動
警告: Arch Linux が公式にサポートしているのは systemd だけです。Minirc を使用する場合、サポートを送るときはそのことを書いてください。

Minirc は GitHub 上でメンテナンスされている busybox init のための init スクリプトです。Minirc はスクリプトベースであり他の init システムと一緒に動作させることはできません。

インストール

Minirc は AUR からインストールできます。init コンポーネントについて詳しくは Init を見てください。

minirc-gitAUR パッケージをインストールします。Minirc は /sbin/init を置き換えるため systemd-sysvcompat が削除されます。また、SysVinit をインストールしている場合はそれとも衝突します。

デスクトップ環境を使用している場合、ConsoleKit をインストールすると良いでしょう。

設定

メインの設定ファイルは /etc/minirc.conf です。スタートアップコマンドは /etc/minirc.local に記述し、シャットダウンコマンドは /etc/minirc.local.shutdown に記述します。Minirc のサービスは /etc/minirc.conf の中で DAEMONS と ENABLED の行を使って有効化します。

ローカルスタートアップ・シャットダウンファイルはただの bash スクリプトです。

ローカルスタートアップ・シャットダウンファイルを作成するには:

# touch /etc/minirc.local
# touch /etc/minirc.local.shutdown
# chmod +X /etc/minirc.local
# chmod +X /etc/minirc.local.shutdown

デフォルトで有効化されるデーモンは syslog-ng, crond, dhcpcd, sshd です。

有効なデーモンのパッケージがインストールされていなかった場合、無効化しないと起動時に警告が表示されます。

カスタムデーモン

/etc/minirc.conf の custom_start, custom_stop, custom_poll 関数でカスタムデーモンを指定できます。他のデーモンと同じように指定してください。デフォルトではカスタムデーモンは存在しません。例:

custom_start () {
    case "$1" in
    NetworkManager)
        /usr/bin/NetworkManager ;;
    lightdm)
        sleep 1 ; /usr/bin/lightdm ;;
    *)
        default_start "$@";;  # keep the default as fall-back
    esac
}


custom_stop () {
    case "$1" in
    NetworkManager)
        killall NetworkManager;;
    lightdm)
        killall lightdm;;
    *)
        default_stop "$@";;  # keep the default as fall-back
    esac
}

custom_poll () {
    case "$1" in
    NetworkManager)
        pgrep NetworkManager > /dev/null;;
    lightdm)
        pgrep lightdm > /dev/null;;
    *)
        default_poll "$@";;  # keep the default as fall-back
    esac
}