Grubを使用して、ハードドライブ上のISOイメージ(SHA256検証済み)からFedora 14 LiveCDを起動しようとしました。
Fedora-14-x86_64-Live-Desktop.isoをFAT32パーティションDのルートディレクトリに配置します:(sda5)次に、このISOからisolinuxを抽出し、Dに配置します:
Isolinux.cfgファイルに従い、menu.lstを次のように記述しました。
title Fedora 14 Live CD
root (hd0,4)
kernel (hd0,4)/isolinux/vmlinuz0 root=live:CDLABEL=Fedora-14-x86_64-Live-Desktop rootfstype=auto ro liveimg quiet rhgb
initrd (hd0,4)/isolinux/initrd0.img
しかし、グラブは私に言った:
ルートデバイスが見つかりません。
起動に失敗しました。永遠に眠る。
Isolinux.cfgの内容は次のとおりです。
[...]
label linux0
menu label Boot
kernel vmlinuz0
append initrd=initrd0.img root=live:CDLABEL=Fedora-14-x86_64-Live-Desktop rootfstype=auto ro liveimg quiet rhgb rd_NO_LUKS rd_NO_MD rd_NO_DM
menu default
label linux0
menu label Boot (Basic Video)
kernel vmlinuz0
append initrd=initrd0.img root=live:CDLABEL=Fedora-14-x86_64-Live-Desktop rootfstype=auto ro liveimg quiet rhgb rd_NO_LUKS rd_NO_MD rd_NO_DM xdriver=vesa nomodeset
label check0
menu label Verify and Boot
kernel vmlinuz0
append initrd=initrd0.img root=live:CDLABEL=Fedora-14-x86_64-Live-Desktop rootfstype=auto ro liveimg quiet rhgb check
label memtest
menu label Memory Test
kernel memtest
label local
menu label Boot from local drive
localboot 0xffff
これは、ここに投稿されたバグに関連する問題である可能性があります: netbootinルートのバグ515008がFedora 12ハードディスクインストールのmenu_lstで正しくありません
ISOイメージのすべてのコンテンツをFAT32パーティションに抽出しました。また、「ルート」のCDLABELを、ISOファイルが存在するパーティションのUUIDに置き換えました。次に、menu.lstのエントリを次のように変更しました。
title Fedora 14 Live CD
root (hd0,4)
kernel (hd0,4)/isolinux/vmlinuz0 root=UUID=My_UUID_of_the_partition rootfstype=auto ro liveimg quiet rhgb
initrd (hd0,4)/isolinux/initrd0.img
ただし、ハードドライブでISOイメージを直接起動することはできません。何か案は?
私にとってうまくいったのは、/LiveOS
、/isolinux/vmlinuz0
、および/isolinux/initrd0.img
ファイルを抽出し、それらを起動元のパーティションのルートにコピーすることでした。次に、ブートローダーでカーネルパラメーターを次のように設定します。
root=live:LABEL=disklabel rootfstype=auto ro liveimg quiet rhgb rd.luks=0 rd.md=0 rd.dm=0 rd.live.check
ここで、disklabelはパーティションのラベルです(つまり、e2labelなどで設定されたもの)。あなたの例では、UUIDを使用しているにもかかわらず、rootの後にlive:
の部分がありません。
おそらく、ブートローダーの「実行」に失敗しました。ブート構成をハードディスクのMasterBootRecord(MBR)に保存する場合は、ブートローダーを実行する必要があります。通常、IsoLinux/Grubの場合、これはLinuxシェルから実行されます。ブートローダーは、付随する構成ファイルを解釈し、MBRにコードを書き込みます。
CD/LiveUSB上のSysRescueCDを使用して、CD/USBからLinuxシェルを起動し、LinuxシェルからGrubまたはsyslinuxを実行できます。それがオプションではなく、Windowsから実行したい場合は、WindowsでGrubを実行する方法として GRUB4DOS を参照するか、 ここ for Windows上のSysLinux (Zipを抽出し、DOSからsyslinuxを実行します-コマンドラインだと思いますか?)。
Syslinux.cfgファイルはIsoLinuxに関連しており、menu.lstはGrubに関連していることに注意してください。 2つのうち1つだけが必要です。どちらが、個人的な選択と利便性の問題です。
Isolinuxは、ISOファイルシステム(CD-ROM)から起動することを目的としていることに注意してください。ただし、私が正しく理解していれば、ファイルをWindowsパーティション(おそらくFAT)にコピーしました。 FATから起動するには、(isolinuxではなく)syslinuxが必要です。これを行うには、ファイルの名前を「isolinux.cfg」から「syslinux.cfg」に変更し、「isolinux」ディレクトリの名前を「syslinux」に変更するだけです。