Home
Packages
Forums
Wiki
GitLab
Security
AUR
Download
コンテンツにスキップ
メインメニュー
メインメニュー
サイドバーに移動
非表示
案内
メインページ
目次
コミュニティに貢献
最近の出来事
おまかせ表示
特別ページ
交流
ヘルプ
貢献
最近の更新
最近の議論
新しいページ
統計
リクエスト
ArchWiki
検索
検索
表示
アカウント作成
ログイン
個人用ツール
アカウント作成
ログイン
Boosterのソースを表示
ページ
議論
日本語
閲覧
ソースを閲覧
履歴を表示
ツール
ツール
サイドバーに移動
非表示
操作
閲覧
ソースを閲覧
履歴を表示
全般
リンク元
関連ページの更新状況
ページ情報
表示
サイドバーに移動
非表示
←
Booster
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループに属する利用者のみが実行できます:
登録利用者
。
このページのソースの閲覧やコピーができます。
[[Category:initramfs]] [[Category:カーネル]] [[en:Booster]] {{Related articles start}} {{Related|カーネルモジュール}} {{Related|Initramfs の最小化}} {{Related|ブートデバッグ}} {{Related|Mkinitcpio}} {{Related|dracut}} {{Related|Clevis}} {{Related articles end}} [https://github.com/anatol/booster Booster] は高速な [[initramfs]] ジェネレータで、[[mkinitcpio]] や [[dracut]] と似ています。 Booster は [https://michael.stapelberg.ch/posts/2020-01-21-initramfs-from-scratch-golang/ distri プロジェクト] に着想を得ており、小型で高速な init イメージを生成することを目指しています。 Booster は、initramfs イメージの生成を担当する {{ic|/usr/bin/booster}} ユーザー空間ツールを提供します。生成されたイメージは、デフォルトでは {{ic|/boot/}} にあります。 == インストール == {{AUR|booster-git}} パッケージを[[インストール]]してください。パッケージのインストールフックによって initramfs イメージが生成されます (インストールされているカーネル (例: {{Pkg|linux}}, {{Pkg|linux-lts}}) ごとにひとつずつ)。イメージは {{ic|/boot}} ディレクトリに配置されます: {{hc|$ ls -lh /boot/booster*| -rwxr-xr-x 1 root root 4.0M Dec 16 16:20 /boot/booster-linux.img }} また、イメージは手動で生成することもできます: $ booster -output mybooster.img == 設定 == Booster ジェネレータの設定は {{ic|/etc/booster.yaml}} にあります。設定ファイルがない場合は、デフォルトの設定(ホスト固有の画像、ネットワークなし)が使用されます。 設定ファイルを使用することで、デフォルトの動作を上書きすることができます。詳しくは {{man|1|booster|CONFIG FILE}} を参照してください。 === モジュールの早期ロード === いくつかのカーネルモジュールは、initramfs の段階で早期にロードされる必要がある場合があります。 例えば、{{ic|nvidia}} モジュールをロードする必要がある場合、以下の設定を使用します: {{hc|/etc/booster.yaml| modules_force_load: nvidia }} そして、[[Booster#booster イメージの再生成|booster イメージの再生成]] を実行します。 === 暗号化 === Booster は、[[Clevis]] のような [[LUKS]] ベースのフルディスク暗号化をすぐに使用できるようにサポートしています。ジェネレーターには追加の設定は必要ありません。ただし、initramfs の場合は、ルートが存在する LUKS パーティションに関する情報を追加する必要があります。これは、{{ic|1=rd.luks.uuid=''LUKSUUID''}} または {{ic|1=rd.luks.name=''LUKSUUID''=''LUKSNAME''}} [[カーネルパラメータ]] のいずれかを使用して行われます。{{ic|''LUKSUUID''}} は、Booster によってロックを解除する必要があり、暗号化された LUKS パーティションの [[UUID]] を指定します。{{man|1|booster|UUID パラメータ}} マニュアルでは、UUID に引用符を含めないことを推奨しています。{{ic|''LUKSNAME''}} は、ロック解除されたパーティションの名前を指定します ({{ic|/dev/mapper/''LUKSNAME''}} のように) 関連オプションについては、{{man|1|booster|BOOT TIME KERNEL PARAMETERS}} を参照してください。 イメージの再構築は必要ありません。ブートローダーの設定が完了したら、コンピューターを再起動します。その後、起動時に暗号化されたルートパーティションのパスワードを求める {{ic|Enter passphrase for ''YOURROOT'':}} プロンプトが表示されます。 ==== systemd スタイルのバインディング ==== Booster はパーティションもサポートします [https://0pointer.net/blog/unlocking-luks2-volumes-with-tpm2-fido2-pkcs11-security-hardware-on-systemd-248.html bound with systemd] {{ic|systemd-fido2}} や {{ic|systemd-tpm2}} など。 'systemd-fido2' を使用する場合は、{{Pkg|libfido2}} パッケージをインストールし、次の設定を使用してイメージに fido2-assert を追加してください。 {{hc|/etc/booster.yaml| extra_files: fido2-assert }} [[#booster イメージの再生成|booster イメージの再生成します]] Booster は起動中にこの設定を検出し、現在の YubiKey を使用してドライブのロックを解除します。 {{Note|コミット 1b65577 より前に、Booster が FIDO2 キーを使用して暗号化されたパーティションのロックを解除するのに十分な早さで必要なカーネルモジュールの一部をロードできない可能性があることが報告されています。この場合、強制的にロードされる以下のモジュールを追加します。}} {{hc|/etc/booster.yaml| modules_force_load: '''usbhid''','''hid_sensor_hub''' extra_files: fido2-assert }} === booster イメージの再生成 === Booster の設定が完了したら、{{ic|/boot}} にある Booster images を更新する必要があります。イメージは、{{ic|booster build booster-foo.img}} を使用して手動で生成するか、インストールされているすべてのカーネルを反復処理してカーネルごとに Booster イメージを生成する便利なスクリプト {{ic|/usr/lib/booster/regenerate_images}} もあります。 === モジュールを除外する === {{ic|-}}によってモジュールをinitramfsから除外できます。 起動時間を短縮するために、[[Mkinitcpio/Initramfs_%E3%81%AE%E6%9C%80%E5%B0%8F%E5%8C%96]] のように手動で全てのモジュールを選ぶ例として、 {{hc|/etc/booster.yaml| modules: -*,btrfs,nvme }} === モジュールをstripする === モジュールをstripする事でinitramfsのサイズを減らせます。 {{hc|/etc/booster.yaml| strip: true }} {{Warning|この設定は[[セキュリティ#カーネルロックダウンモード]]に必要なモジュールの署名を消します。}} == ブートローダーの設定 == イメージを生成したら、次に[[Arch_ブートプロセス#ブートローダー|ブートローダー]]を設定します。 === マイクロコードの更新 === [[mkinitcpio]] や [[dracut]] と異なり、Booster [https://github.com/anatol/booster/issues/40 は] 生成されたイメージにマイクロコードの更新を含めることをサポートしていません。 詳細については [[マイクロコード#別個のマイクロコード initramfs ファイルを使う]] を参照し、適切なマイクロコードイメージを追加で読み込むようにブートローダーを設定する方法を確認してください。 === rEFInd === すでに [[rEFInd# rEFInd によってカーネルが自動で検出される場合|自動検出]] に依存した設定になっている場合、追加の設定変更は必要ありません。[[rEFInd]] は [https://sourceforge.net/p/refind/code/ci/778878f7f30f68b7fa0282074e5dd8fc5894a212/ initrd files named booster*] をサポートしています。 initramfs のパスを [[rEFInd#refind_linux.conf|refind.conf]] や [[rEFInd#手動でブートエントリを記述する|手動でブートエントリを記述する]] する場合、正しいファイル名を使っているか確認してください。例えば {{ic|'''booster''-linux.img}} の代わりに {{ic|'''initramfs''-linux.img}} とします。 === systemd-boot === 新しい initramfs イメージを [[systemd-boot]] で使うには以下のようにブートローダーエントリを作成します: {{hc|/boot/loader/entries/booster.conf|2= title Arch Linux with booster linux /vmlinuz-linux initrd /intel-ucode.img initrd /booster-linux.img options root=UUID=08f83949-bcbb-47bb-bc17-089aaa59e17e rw }} 上記でルートファイルシステムは {{ic|1=UUID=08f83949-bcbb-47bb-bc17-089aaa59e17e}} と指定しています。{{ic|blkid /dev/''ROOTDEVICE''}} を実行して、あなたのデバイスの UUID を確認してください。 == トラブルシューティング == === デバッグ === Booster が上手く動かない場合、デバッグ出力を有効にすることで何が起こっているか情報を得ることができます: * ジェネレータのデバッグは {{ic|-debug}} コマンドラインフラグを使ってください: {{ic|booster -debug}} * init のデバッグは {{ic|1=booster.debug=1}} [[カーネルパラメータ]] が存在します。 Booster 自体に問題があると思われる場合は、[https://github.com/anatol/booster/issues GitHub でチケットを作成してください] === Booster ジェネレータが "too many open files" エラーで失敗する === もし {{ic|strip}} と {{ic|universal}} を有効にしていて {{ic|/usr/lib/modules/glue_helper.ko: pipe2: too many open files}} というエラーが出た場合は、プロセスごとのオープンファイルの上限を上げる必要があります。[[limits.conf#nofile]] を参照してください。 == 参照 == * [https://github.com/anatol/booster/blob/develop/README.md upstream README]
このページで使用されているテンプレート:
テンプレート:AUR
(
ソースを閲覧
)
テンプレート:Hc
(
ソースを閲覧
)
テンプレート:Ic
(
ソースを閲覧
)
テンプレート:META Related articles start
(
ソースを閲覧
)
テンプレート:Man
(
ソースを閲覧
)
テンプレート:Note
(
ソースを閲覧
)
テンプレート:Pkg
(
ソースを閲覧
)
テンプレート:Related
(
ソースを閲覧
)
テンプレート:Related articles end
(
ソースを閲覧
)
テンプレート:Related articles start
(
ソースを閲覧
)
テンプレート:Warning
(
ソースを閲覧
)
Booster
に戻る。
検索
検索
Boosterのソースを表示
話題を追加