最近、全く記事が更新できていないこの頃ですが、Gentooを使い始めました。
今回は、GentooでSystemdでインストールする時に少々つまってしまったところを紹介します。
現在はArch Linuxを使っていて、Gentooをやってみたらいいのではないかとのお誘いが来たので(学校の先輩から)やってみました。
インストールするところは、割愛します(既にいろんな方がやっているので)。
Systemd-bootを使用するには、SystemdのUSEフラグにgnuefiを追加して
emerge -auDN @world
(うどんワールド)を行うだけです。
そしたらESPがFAT32で/bootマウントされているかを確認し
bootctl install
を実行します。
ここで、machine-idがないと言われたら
systemd-machine-id-setup
を実行して
bootctl install
を実行します。
そうしたら、/boot/loader/loader.confを編集します。
そして、/boot/loader/entries/gentoo.confを作成して以下のように編集しました。
title Gentoo Linux
linux /vmlinuz-(version)-gentoo
initrd /initramfs-genkernel-x86_64-(version)-gentoo
options root=PARTUUID=(PARTUUID) rw
そして再起動しいざ起動するも、「あれ?起動しないぞ?」となってしまいました。
以下の画像のようなエラーが出て止まってしまいます。
/dev/sda2と入力したら正常に起動できたので、一旦gentoo.confの設定を以下の通りに変更しました。
title Gentoo Linux
linux /vmlinuz-(version)-gentoo
initrd /initramfs-genkernel-x86_64-(version)-gentoo
options root=/dev/sda2 rw
この設定では正常に起動できました。
しかし、この指定方法ではHDDの環境が変わってしまったら起動できなくなってしまいます。
わざわざ/dev/sda2を/dev/sdb2や/dev/sdc2と変更するのはなかなか面倒です。
というか起動できないので変更のしようがないです。
何とかしてパーティションの固有値で起動させたかったので調査することにしました。
するとあるページを見つけました
Booting with PARTUUID for root device
このページによると
UPDATE I discovered I am able to boot using a UUID using this boot entry
So it seems my problem is that I am able to boot using root=UUID=x but not when using root=PARTUUID=y
訳
追記
私はこのブートエントリにUUIDを使用すると起動できることを発見しました。
なので、私と同じ問題と思われる問題ではroot=UUID=xを使うと起動できますが、root=PARTUUID=yでは起動できないようです。
とのことなので早速gentoo.confを編集しました。
title Gentoo Linux
linux /vmlinuz-(version)-gentoo
initrd /initramfs-genkernel-x86_64-(version)-gentoo
options root=UUID=(UUID) rw
このようにしてようやく起動できようになりました。
今回は、GentooでSystemdでインストールする時に少々つまってしまったところを紹介します。
現在はArch Linuxを使っていて、Gentooをやってみたらいいのではないかとのお誘いが来たので(学校の先輩から)やってみました。
インストールするところは、割愛します(既にいろんな方がやっているので)。
Systemd-bootを使用するには、SystemdのUSEフラグにgnuefiを追加して
emerge -auDN @world
(うどんワールド)を行うだけです。
そしたらESPがFAT32で/bootマウントされているかを確認し
bootctl install
を実行します。
ここで、machine-idがないと言われたら
systemd-machine-id-setup
を実行して
bootctl install
を実行します。
そうしたら、/boot/loader/loader.confを編集します。
そして、/boot/loader/entries/gentoo.confを作成して以下のように編集しました。
title Gentoo Linux
linux /vmlinuz-(version)-gentoo
initrd /initramfs-genkernel-x86_64-(version)-gentoo
options root=PARTUUID=(PARTUUID) rw
そして再起動しいざ起動するも、「あれ?起動しないぞ?」となってしまいました。
以下の画像のようなエラーが出て止まってしまいます。
/dev/sda2と入力したら正常に起動できたので、一旦gentoo.confの設定を以下の通りに変更しました。
title Gentoo Linux
linux /vmlinuz-(version)-gentoo
initrd /initramfs-genkernel-x86_64-(version)-gentoo
options root=/dev/sda2 rw
この設定では正常に起動できました。
しかし、この指定方法ではHDDの環境が変わってしまったら起動できなくなってしまいます。
わざわざ/dev/sda2を/dev/sdb2や/dev/sdc2と変更するのはなかなか面倒です。
というか起動できないので変更のしようがないです。
何とかしてパーティションの固有値で起動させたかったので調査することにしました。
するとあるページを見つけました
Booting with PARTUUID for root device
このページによると
UPDATE I discovered I am able to boot using a UUID using this boot entry
So it seems my problem is that I am able to boot using root=UUID=x but not when using root=PARTUUID=y
訳
追記
私はこのブートエントリにUUIDを使用すると起動できることを発見しました。
なので、私と同じ問題と思われる問題ではroot=UUID=xを使うと起動できますが、root=PARTUUID=yでは起動できないようです。
とのことなので早速gentoo.confを編集しました。
title Gentoo Linux
linux /vmlinuz-(version)-gentoo
initrd /initramfs-genkernel-x86_64-(version)-gentoo
options root=UUID=(UUID) rw
このようにしてようやく起動できようになりました。