メンテナンスフリーのGrub2メニュー

メンテナンスフリーのGrub2メニュー

フォローする「メンテナンス不要」の問題はここにあります。、grub2メニュー項目を自動的に作成する方法があることを知っていますが、時々手動で編集/追加する必要があります。

  • ライブLinuxシステムへ
  • 新しいISOブートエントリを追加する場合(別のディスクに存在)

ほとんどすべての grub2 導入ドキュメントは次の形式を使用します。

set root=(hd2,gpt7)

私は時々私のコンピュータ間でハードドライブを動かす必要があり、そのようなことが起こると上記の形式が間違いなく破損するため、これが失敗することがわかります。

可能ですがUUIDを使用してルートファイルシステムを指定することはできません(そしてここで失敗しましたやはり、パーティションをフォーマットすると(新しいOSをインストールするとき)、パーティションのUUIDが変更されるため、UUIDを使用したくありません。

それでは、より良いオプションは何ですか?

  1. 最も重要なことは、GPTパーティションラベルハードドライブを移動しても、すべてのコンピュータで一意であることを確認できるので、最高の候補です。しかし、これは問題があるようです。:「PARTLABELを使用してデバイスをインストールすることはできません。」
    しかし、希望的でなければならない。なぜなら私はできるからです。バラより

4.20からはPARTLABEL <github.com/torvalds/linux/blob/v4.20/init/do_mounts.c>もサポートされていますが、本当に便利なようです。答えを更新することもできます。 – equaeghe 1月20日

  1. 二番目に良い点はPARTUUID。しかし、インターネットには混乱し、矛盾する答えが浮かんでいます。
    • ここ形式は次のとおりですが、PARTUUID=SSSSSSSS-PP正確にどのような形であるかは示されていません。
    • これ次の回答例を示しますが、フォーマットは次のとおりです。root=PARTUUID=666c2eee-193d-42db-a490-4c444342bd4e

PARTLABELそれでは、最新のgrub2を使用できますかPARTUUID

ベストアンサー1

grub2の設定ファイル形式ファイルとエントリを確認してください。

新しいISOを編集するときは、常にsudo update-grubを実行することを忘れています。そのため、すべてのアイテムをISOフォルダのテキストファイルに移動し、1つの設定ファイルアイテムを標準のgrub 40_customに移動しました。その後、テキストファイルを編集します。

プロフィールの詳細については6.5を参照してください。 https://www.gnu.org/software/grub/manual/grub/grub.html#Multi_002dboot-manual-config タグとプロファイルを使用して別のインストールを開始する

https://askubuntu.com/questions/344125/how-to-add-a-grub2-menu-entry-for-booting-installed-ubuntu-on-a-usb-drive/344359#344359

40_customをISOフォルダ(1つはhd0に、もう1つはhd1にあります)のテキストファイルとして表示する設定ファイルです。あるドライブにISOがあり、問題の少ない別のドライブにインストールできます。

https://ubuntuforums.org/showthread.php?t=2076205&p=13788092#post13788092

https://www.gnu.org/software/grub/manual/grub/grub.html#Multi_002dboot-manual-config

40_customの一般的な項目は変更されません。

menuentry 'Live ISOs on SSD' {
search --set=root --label iso_ssd --hint hd1,gpt5
configfile /livecdimage.cfg
} 

次に、livecdimage.cfgまたは目的のファイルからISOまたはその他のインストール用のgrub2ブートセクション全体をコピーします。すべてのgrubセクションはテキストファイルにあります。

他の例:

https://ubuntuforums.org/showthread.php?t=2076205&p=14020961#post14020961

私の設定ファイルの例はlivecdimage.cfgで、通常はISOフォルダに複数のエントリまたは複数のISOが含まれています。

# livecdimage.cfg

menuentry "Kubuntu 21.10 Impish Live ISO" {
    set isofile="/ISO/kubuntu-21.10-desktop-amd64.iso"
    loopback loop (hd1,5)$isofile
        linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile toram noeject
        initrd (loop)/casper/initrd
}

おすすめ記事