grub2を使用したISOブート

grub2を使用したISOブート

にインストールされているLinux Mint 10を使用していますsda8

私は編集します/etc/grub.d/40_custom

#!/bin/sh
echo "Adding 40_custom.">&2
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.

menuentry "fedora ISO" {
    loopback loop (hd0,8)/boot/iso/Fedora-14-i386-DVD.iso
    linux  (loop)/isolinux/vmlinuz boot=isolinux iso-scan/filename=/boot/iso/Fedora$
    initrd (loop)/isolinux/initrd.img
}

それから私は走ったsudo update-grub2。再起動後、「Fedora ISO」を選択しました。コンピュータが再起動します。

追いかけようとするこのガイドしかし、成功しませんでした。

bootフォルダのファイル権限を変更する必要がありますか、casperそれとも別の問題がありますか?

答え1

この行が正しいファイルの場所を指していることを確認する必要があります。たとえば、Fedora ISOがあり、そのファイルまたは/boot/vmlinuzISOが見つかりません/boot/initrd.img。少なくとも、次のことを行う必要があります。

menuentry "Fedora ISO" {
    loopback loop (hd0,8)/path/to/Fedora-14-i386-DVD.iso
    linux (loop)/isolinux/vmlinuz0 boot=isolinux iso-scan/filename=/Fedora13.iso splash --
    initrd (loop)/isolinux/initrd0.img
}

誤解されている可能性がありますが、linux上記initrdはハードドライブの項目ではなくISO内の項目を指しています。

答え2

Grub2を使用してFedoraとCentOS Live CDを使用して.isoファイルから直接起動しようとしましたが、失敗しました。私の考えでは、ルートデバイスを検出するためにCDラベルを使用しているようです。 FedoraのISOコンテンツをフォルダに抽出し、次のようにリンクしました。

menuentry "Fedora 16 [GNOME] (x86_64)" --class fedora --class os {
  linux /boot/iso/Fedora-16-x86_64-Live-GNOME/isolinux/vmlinuz0 root=UUID=DB92-7E14 rootfstype=vfat ro liveimg quiet  rhgb rd.luks=0 rd.md=0 rd.dm=0
  initrd /boot/iso/Fedora-16-x86_64-Live-GNOME/isolinux/initrd0.img
}

次のコマンドラインを使用して、ブートパーティションUUIDを見つけることができます。

ls -lh /dev/disk/by-uuid/

ブートパーティションの種類を必要に応じて変更することを忘れないでください。

関連情報