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/vmlinuz이나 ISO를 찾을 수 없습니다 /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/

부팅 파티션 유형을 원하는 대로 변경하는 것을 잊지 마세요.

관련 정보