Home
Packages
Forums
Wiki
GitLab
Security
AUR
Download
コンテンツにスキップ
メインメニュー
メインメニュー
サイドバーに移動
非表示
案内
メインページ
目次
コミュニティに貢献
最近の出来事
おまかせ表示
特別ページ
交流
ヘルプ
貢献
最近の更新
最近の議論
新しいページ
統計
リクエスト
ArchWiki
検索
検索
表示
アカウント作成
ログイン
個人用ツール
アカウント作成
ログイン
Limineのソースを表示
ページ
議論
日本語
閲覧
ソースを閲覧
履歴を表示
ツール
ツール
サイドバーに移動
非表示
操作
閲覧
ソースを閲覧
履歴を表示
全般
リンク元
関連ページの更新状況
ページ情報
表示
サイドバーに移動
非表示
←
Limine
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループに属する利用者のみが実行できます:
登録利用者
。
このページのソースの閲覧やコピーができます。
[[Category:ブートローダー]] [[en:Limine]] {{Related articles start}} {{Related|Arch ブートプロセス}} {{Related|Master Boot Record}} {{Related|GUID Partition Table}} {{Related|Unified Extensible Firmware Interface}} {{Related articles end}} [https://limine-bootloader.org Limine] は、先進的で、ポータブルな、マルチプロトコルの[[ブートローダー]]です。元は Limine ブートプロトコルのリファレンス実装として開発されましたが、Linux のブートや他のブートローダのチェインロードもサポートしています。 {{Note|記事全体で、{{ic|''esp''}} は [[EFI システムパーティション]](別名 ESP) のマウントポイントを示します。}} == サポートされているファイルシステム == Limine は [[FAT12]]、[[FAT16]]、[[FAT32]]、[[Wikipedia:ja:ISO 9660|ISO9660]] を[https://github.com/limine-bootloader/limine/blob/trunk/README.md#supported-filesystems サポート]しています。これらに加えて、ext2 から [[ext4]] までの試験的なサポートも存在していますが、上流でのサポートは限られています。サポートされているファイルシステムは、[https://github.com/limine-bootloader/limine/blob/trunk/PHILOSOPHY.md Limine の設計理念に基づいて意図的に制限されています]。 == インストール == {{Pkg|limine}} をインストールしてください。 == Limine ブートローダーをインストールする == === BIOS システム === [[パーティショニング#GPT か MBR の選択|MBR と GPT]] は両方ともサポートされており、インストール手順は非常に似ています。 ==== デプロイ ==== コアのブートローダーファイルは {{ic|/usr/share/limine}} にあります。BIOS システムにインストールする際に最も重要なのは {{ic|limine-bios.sys}} ファイルです。このファイルには、Limine が起動するのに必要なステージ3のコードが含まれています。このファイルは、Limine を導入するディスク上の任意のパーティション上のルートディレクトリか、{{ic|/boot}}、{{ic|/limine}}、{{ic|/boot/limine}} ディレクトリのどれかに置く必要があります。さらに、そのファイルシステムがサポートされている必要があります。 例: # cp /usr/share/limine/limine-bios.sys /boot/ 次に、ステージ1とステージ2をディスクにデプロイする必要があります。Limine は使用されているスキームを自動検出して適切にインストールするので、MBR と GPT のどちらが使用されていようとインストール方法は同じです: # limine bios-install /dev/sdX {{ic|''/dev/sdX''}} の部分は、Limine をインストールする'''ディスク'''('''パーティションではありません''')に書き換えてください。例えば、{{ic|/dev/sda}} や {{ic|/dev/nvme0n1}} です。ブロックデバイス名のスキームについては [[デバイスファイル#ブロックデバイスの名前]] を見てください。 === UEFI システム === UEFI システム上に Limine をデプロイするには、{{ic|/usr/share/limine/BOOTX64.EFI}} ファイルを [[EFI システムパーティション]]にコピーします。通常 {{ic|''esp''/EFI/BOOT/BOOTX64.EFI}} にコピーしますが、別のファイル名を使用することもできます。ただし、UEFI BIOS がそのファイルを検出できる必要があります。[[GRUB]] とは異なり、Limine は NVRAM に Limine のブートローダーエントリを追加しません。Limine のエントリをセットアップするには [[efibootmgr]] を使用してください。 === UEFI+BIOS 起動可能ドライブ === ドライブが [[GPT]] でフォーマットされていて、かつ [[EFI システムパーティション]] を含んでいる場合、BIOS と UEFI の両方のデプロイ手順を行うことにより、そのドライブをレガシー BIOS と UEFI の両方のシステムで起動できるようになります。これは、例えば、UEFI に対応/非対応の複数のシステム上で使用する USB フラッシュドライブにオペレーティングシステムをインストールする場合や、システムをまたいでハードドライブを使用しやすくする場合に便利です。 == 設定 == {{Pkg|limine}} にはデフォルトの設定ファイルが同梱されていません。なので、作成する必要があります。このファイルは、どのオペレーティングシステムが起動できるかを Limine に指示するために必要です。Limine はカスタマイズ性が高いので、設定ファイルには多くのオプションがあります。設定ファイルのフォーマットやオプションに関する詳細なドキュメントは[https://github.com/limine-bootloader/limine/blob/trunk/CONFIG.md ここ]で見られます。 設定ファイルは、({{ic|limine-bios.sys}} と同じように) Limine がデプロイされたドライブ上の任意のパーティションにあるルートディレクトリか {{ic|/boot}}、{{ic|/limine}}、{{ic|/boot/limine}} ディレクトリのどれかに置く必要があります。ただし、そのパーティションのファイルシステムがサポートされている必要があります。設定ファイルは {{ic|limine.conf}} という名前でなければなりません。 {{Note| Limine の設定では、{{ic|boot():/}} は {{ic|limine.conf}} が存在するパーティションを表しています。{{ic|/boot}} のあるパーティションが分離されておらず、{{ic|limine.conf}} が代わりにルートパーティションにある場合、{{ic|boot():/}} は {{ic|boot():/boot/}} のように書き換える必要があります。}} 以下は、典型的な Arch Linux カーネルと initramfs の1つのブートメニューエントリを含む設定の例です: {{hc|limine.conf|2= timeout: 5 /Arch Linux protocol: linux kernel_path: boot():/vmlinuz-linux kernel_cmdline: root=UUID=''xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'' rw module_path: boot():/initramfs-linux.img }} {{ic|''xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx''}} はルートファイルシステムの [[UUID]] です。 {{Tip|[[セキュアブート]]が有効化されている UEFI システムでブートする場合は、Limine の設定ファイルとリソースファイル (カーネルやモジュールなど) の両方をセキュアにしておくことを検討してください。実際、これらの設定ファイルとリソースファイルが格納されている FAT パーティションにアクセスできる人物は、セキュアブートが有効化されている場合でもこれらのファイルを変更できてしまいます。 これらのファイルを守るには、まず、すべてのリソースファイルの {{ic|b2sum}} チェックサムを設定ファイル内に記述しておく必要があります。Limine でのファイルパスには、ファイルの {{ic|b2sum}} チェックサムを記述するための任意のフィールドが存在します。このフィールドは、ファイルパスの後に {{ic|#}} 文字を追加し、さらにその後に '''128 文字'''のチェックサムを追加することで指定できます: {{hc||2= boot():/''path''#''checksum'' }} 設定ファイルを守るには、{{ic|limine enroll-config}} コマンドで EFI 実行ファイル内に設定ファイルの {{ic|b2sum}} チェックサムを埋め込んでおく必要があります。}} === Windows エントリ === Windows を起動できるようにするには、ESP 内の {{ic|bootmgfw.efi}} へのパスを知る必要があります。[[ESP]] 内に移動して、以下のコマンドを使用することで可能です: {{hc|$ find -name "bootmgfw.efi"| ./EFI/Microsoft/Boot/bootmgfw.efi }} 次にするべきことは、以下の内容を設定に追加することだけです: {{hc|limine.conf|2= /Windows protocol: efi_chainload image_path: boot():'''/EFI/Microsoft/Boot/bootmgfw.efi''' }} == pacman フック == 必須ではありませんが、Limine がアップデートされるたびに Limine をデプロイする [[pacman フック]] を設定すれば便利です。 以下は単なる例です。システム構成に合うようにパスやデバイスを編集してください。 === BIOS === {{Note|デバイスを接続/除去したり、別のマシンにインストール環境を移動したり、または他の原因により、デバイスのパスは変わるかもしれないことに注意してください。これにより、BIOS のフックが意図しないデバイスに誤って Limine をインストールするかもしれません。}} {{hc|/etc/pacman.d/hooks/liminedeploy.hook|2= [Trigger] Operation = Install Operation = Upgrade Type = Package Target = limine [Action] Description = Deploying Limine after upgrade... When = PostTransaction Exec = /bin/sh -c "/usr/bin/limine bios-install ''/dev/sdX'' && /usr/bin/cp /usr/share/limine/limine-bios.sys /boot/" }} === UEFI === {{hc|/etc/pacman.d/hooks/liminedeploy.hook|2= [Trigger] Operation = Install Operation = Upgrade Type = Package Target = limine [Action] Description = Deploying Limine after upgrade... When = PostTransaction Exec = /usr/bin/cp /usr/share/limine/BOOTX64.EFI /boot/EFI/BOOT/ }} == ヒントとテクニック == === ブートエントリの自動化 === ==== Dracut サポート ==== {{AUR|limine-dracut-support}} は、initramfs の生成に [[Dracut]] を使用するユーザーのために開発されました。これは、Limine ブートローダーでのカーネルのインストールと削除を自動化することで、カーネルの管理をシンプルにします。 {{Note|x86_64 アーキテクチャの UEFI システムにおいては、Limine を更新あるいは再インストールすると、Limine の EFI イメージは自動的に ESP へと配置されます。}} {{ic|/etc/limine-entry-tool.conf}} を以下のように編集してください: * {{ic|KERNEL_CMDLINE}} に所望の[[カーネルパラメータ]]を設定する。 {{Tip|{{ic|KERNEL_CMDLINE}} が設定されていない場合、このツールはまず {{ic|/etc/kernel/cmdline}} ファイルから読み取ろうとします。このファイルも利用できない場合、代わりに {{ic|/proc/cmdline}} から読み取ります。}} * ESP のスペースを節約するために、{{ic|DRACUT_FALLBACK}} を {{ic|no}} に設定して [[initramfs]] フォールバックイメージの自動生成を無効化する。 設定ファイルを編集したら、以下のコマンドを root 権限で実行して initramfs を生成し、{{ic|''esp''/limine.conf}} を更新します。 # dracut-rebuild あるいは、このコマンドのエイリアスを使ってもよいです: # limine-update その他の情報は [https://gitlab.com/Zesko/limine-entry-tool limine-entry-tool の README と設定オプション]を参照してください。 === Btrfs の Snapper スナップショットとの統合 === {{AUR|limine-snapper-sync}} ツールは [[Snapper]] と Limine ブートローダーとを統合します。これは以下の点で便利です: * ブートする [[Snapper]] スナップショットの選択をサポート。 * システムのスナップショットから復元する方法として [[rsync]] と [[btrfs]] の2つを提供しています。 * 読み取り専用スナップショットのテスト: [[overlayfs]] を使用してイミュータブルなシステムで実験を行い、システム上のオリジナルデータを変更せずに問題を再現することができます。 * スナップショットからの復元後、「バックアップ」エントリが Limine ブートローダーに追加されます。これにより、必要になったときにバックアップへの巻き戻しが容易になります。 * 新しいスナップショットが同じブータブルファイルで作成されている場合、破損したブータブルファイルを ESP 上の古いスナップショットを使って自動的に修復します。 * ブータブルファイルのハッシュ値が ESP 上にある同じファイルのハッシュ値と一致しない場合、ハードウェアの問題が疑われるエラーメッセージを自動的に記録します。 ==== セットアップ ==== {{Note|(ブータブルスナップショットの数とインストールしたいカーネルバージョンの数によりますが) [[EFI システムパーティション|ESP]] には 1GB 以上を割り当てることが推奨されます。}} 1. [[Snapper]] にルートサブボリュームの構成が存在することを確認してください。 2. {{ic|''esp''/limine.conf}} に {{ic|//Snapshots}} か {{ic|/Snapshots}} キーワードを加えてください。これは、自動生成されるスナップショットエントリに対応します。 例: {{hc|limine.conf|2= /+Arch Linux comment: Any comment comment: Machine-ID=''yyyyyyyyyyyyyyyyyy'' //Linux protocol: linux kernel_path: boot():/vmlinuz-linux kernel_cmdline: root=UUID=''xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'' rw rootflags=subvol=/@ module_path: boot():/initramfs-linux.img //Snapshots }} {{Note| キーワードは、どちらか一方のみを使用してください: * {{ic|//Snapshots}} は OS ブートエントリブロック内に記述します。 * {{ic|/Snapshots}} は OS ブートエントリブロック外に記述します。 ---- {{ic|/etc/machine-id}} のマシン ID を含めるのは任意ですが、自動識別に便利です。ブートエントリの名称変更はこのツールには影響しません。 ---- '''カスタム'''のフラット Snapper レイアウトを使用する場合は、{{ic|/etc/limine-snapper-sync.conf}} 設定ファイルを変更することを忘れないでください: * ルートサブボリュームへのパスは {{ic|ROOT_SUBVOLUME_PATH}} で指定してください。 * ルートスナップショットへのパスは {{ic|ROOT_SNAPSHOTS_PATH}} で指定してください。 }} 3. 次に、{{ic|limine-snapper-watcher.service}} システムサービスを[[有効化]]してください。これは、Snapper リストが変更された場合にブートメニューにスナップショットエントリを自動的に生成します。 {{Tip| スナップショットからブートした際にワンクリックで復元できる[[デスクトップ通知]]を X11 または Wayland で受け取りたい場合は、[[dunst]] をインストールしてください。 ---- '''[[dracut]] の場合:''' 1. ESP 上の {{ic|limine.conf}} のブートエントリの作成を自動化するには {{AUR|limine-dracut-support}} をインストールしてください。詳細は [[#Dracut サポート]] を見てください。 2. 自動生成されたスナップショットエントリを示す {{ic|//Snapshots}} キーワードか {{ic|/Snapshots}} キーワードを {{ic|''esp''/limine.conf}} に追加してください。 }} 詳細は [https://gitlab.com/Zesko/limine-snapper-sync limine-snapper-sync の README と設定オプション]を参照してください。 ==== コマンド ==== * {{ic|limine-snapper-sync}}: Limine のスナップショットエントリを Snapper のリストと同期させます。 * {{ic|limine-snapper-list}}: 現在の Limine スナップショットエントリを表示します。 * {{ic|limine-snapper-info}}: バージョンとブータブルスナップショットの総数を表示し、ブータブルファイルの検証を行います。 * {{ic|limine-snapper-restore}}: 選択したスナップショットから、一致するカーネルのバージョンを含めて、システムを復元します。 ==== 既知の制限 ==== * サポートは Snapper レイアウトのみで、Snapper ではない任意の Btrfs レイアウトはサポート外です。 * ツールがインストールされた時よりも前に作成された古いスナップショットのブータブルスナップショットエントリは生成できません。そのようなスナップショットには、対応するカーネルバージョンがたいてい記録されていないからです。 == 参照 == * [https://limine-bootloader.org Limine のウェブサイト] * [https://github.com/limine-bootloader/limine Limine の GitHub リポジトリ] {{TranslationStatus|Limine|2024-11-23|821167}}
このページで使用されているテンプレート:
テンプレート:AUR
(
ソースを閲覧
)
テンプレート:Hc
(
ソースを閲覧
)
テンプレート:Ic
(
ソースを閲覧
)
テンプレート:META Related articles start
(
ソースを閲覧
)
テンプレート:Note
(
ソースを閲覧
)
テンプレート:Pkg
(
ソースを閲覧
)
テンプレート:Related
(
ソースを閲覧
)
テンプレート:Related articles end
(
ソースを閲覧
)
テンプレート:Related articles start
(
ソースを閲覧
)
テンプレート:Tip
(
ソースを閲覧
)
テンプレート:TranslationStatus
(
ソースを閲覧
)
Limine
に戻る。
検索
検索
Limineのソースを表示
話題を追加