0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

systemd-bootをビルドする

Last updated at Posted at 2024-11-21

これはなに?

・ systemdに含まれるブートローダーを切り出したものです。

https://wiki.archlinux.jp/index.php/Systemd-boot によると、

systemd-boot (旧名 gummiboot。ドイツ語で「ゴムボート」)は、 設定された EFI イメージを実行するシンプルな UEFI ブートマネージャーです。
デフォルトのエントリは設定されたパターン (glob) または矢印キーで操作する画面上のメニューによって選択されます。
systemd に含まれており、Arch システムにデフォルトでインストールされます。

systemd-boot は EFI 実行可能ファイル (EFISTUB、UEFI シェル、GRUB、Windows ブートマネージャ) のみを起動できることに注意してください。

そもそも、ブートローダーって、何?

  • OSを読み込んで起動させるLoader のことです。
  • Linux では、殆どの場合、 grub という名前のローダーが使われています
  • 昔の人に説明する場合は、それが LiLoだったり、 MBM 0.39 だったり、します。(もっと分からない)
  • ブートセレクターになる場合もあります。(今どきは起動時OS切り替えは殆どしない(需要は無い))

Ubuntu24.04LTS 上でビルド&テスト実行(QEMU)できます。

追加したものはなに?

  • 簡易的に使用できるバッチファイルとして:

makefile:

  • clean build copyfs run requirement
    を追加しました。

また、ビルドエラー回避のため、build/src/sd-boot/consile.c の一部をコメントアウトしてあります

使い方

make requirement により、(必要であれば)Ubuntuのパッケージを取得してください

make build により、ビルドされます。

make run により、qemu が起動し、UEFI Bootが実行されます。

  • 今のところ、ブートローダーのメニューリストは、未設定です。

QEMUから起動したところで、力尽きています。

これは、何に使うのですが?

  • デフォルトで使用されている grub よりも systemd-boot のほうがシンプルで速いので、(通好みには)好まれる場合があります。(知らんけど)

  • 1台のPCに複数のOSを入れて、起動時に切り替える用途に使用できます。(それだと grubと変わらないけれど、まあ systemd-bootを魔改造して MBM 0.39 みたいにする、といった用途はありなのか???)

  • UEFI Boot の練習用として。(たとえば、 UEFI_Basic64 ・・・)

蛇足

  • QEMU を終了させるには、
[CTRL] + [ALT] + [2]

を押して、その後、

 > quit

を投入してください

公開リポジトリ

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?