저는 Ubuntu를 기본 OS로 사용하고 있으며, 게임 및 기타 용도로는 Windows 7을 대안으로 사용하고 있습니다. 일부 Live CD ISO를 부팅하는 메뉴를 갖고 싶습니다. CD처럼 ISO 파일을 부팅하기 위해 Grub2/Burg에서 메뉴 항목을 만드는 방법이 있습니까?
이를 가능하게 하는 몇 가지 방법이 있지만 거의 모든 방법에는 지정된 부팅 매개변수(커널 매개변수)가 필요합니다. 하지만 Linux, Unix, DOS(복구 목적) 등 부트로더를 사용하여 부팅할 수 있는 라이브 OS가 여러 개 있습니다.
저는 메뉴 프로필을 쉽게 찾고 추가할 수 있는 보다 일반적인 방법을 찾고 있습니다.
답변1
저는 이미 SysLinux, Grub4Dos 및 Grub2가 포함된 완벽한 체인로더를 가지고 있습니다. 이것이 제 구성입니다.
시스템리눅스
LABEL DSL
KERNEL memdisk
INITRD /iso/dsl.iso
APPEND iso raw
LABEL GRUB4DOS
KERNEL /boot/grub.exe
Grub4Dos
title Paragon Partition Manager
map (hd0,0)/iso/paragon-bootable-media.iso (hd32)
map --hook
chainloader (hd32)
boot
title Syslinux
chainloader /boot/syslinux/syslinux.bin
title GRUB2 Chainload
root (hd0,0)
kernel /boot/grub/core.img
boot
GRUB2
menuentry "Ubuntu 13.10 Desktop ISO" {
loopback loop /iso/ubuntu-desktop-amd64-13.10.iso
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/iso/ubuntu-desktop-amd64-13.10.iso noeject noprompt splash --
initrd (loop)/casper/initrd.lz
}
menuentry "Tinycore ISO" {
loopback loop /iso/tinycore.iso
linux (loop)/boot/bzImage --
initrd (loop)/boot/tinycore.gz
}
menuentry "GRUB4DOS" {
linux16 /boot/grub.exe
}
menuentry "SYSLINUX" {
chainloader=/boot/syslinux/syslinux.bin
}
답변2
일반 Linux 배포판의 경우 ISO 이미지의 절대 경로와 디스크는 물론 커널을 로드하기 위한 매개변수도 지정해야 합니다. 아래 예를 참조하세요.
loopback loop (hd0,msdos0)/linux.iso
linux (loop)/vmlinuz parameters
initrd (loop)/initrd.img
다른 운영 체제에서는 성공한 적이 없습니다.
답변3
우분투/민트와 같은 데비안 버전의 경우 apt-get install grub-imageboot
iso 파일을 일부 폴더(기본값은 /boot/images/)에 넣으면 실행할 때마다 sudo update-grub
해당 폴더에서 부팅 가능한 모든 iso 파일에 부팅 메뉴 항목이 추가됩니다. (mbr-windows 컴퓨터에서 easybcd가 ISO를 부팅하는 방법과 유사합니다).
sudo apt-get install grub-imageboot
# do df -h /boot and make sure you have 300meg free on /boot partition
cd /tmp; wget http://ftp.sh.cvut.cz/slax/Slax-9.x/slax-32bit-9.11.0.iso
sudo cp /tmp/slax-32bit-9.11.0.iso /boot/images/
sudo grub-update
예를 들어, 부팅 파티션이 작은 경우 boot-isos
큰 파티션에 /home/이라는 폴더를 만들고 아래와 같이 /etc/default/grub-imageboot 파일을 편집할 수 있습니다.
$ sudo mkdir /home/boot-isos/
$ cat /etc/default/grub-imageboot
# Where to find the iso/floppy images
#IMAGES="/boot/images"
IMAGES="/home/boot-isos"
# You can override the boot options for iso/floppy images here
# see http://syslinux.zytor.com/wiki/index.php/MEMDISK for details
#IMAGEOPTS="rawimg"
#ISOOPTS="iso"