답변:
예, GRUB
부트 로더 메뉴에 메뉴 항목을 추가하면 됩니다.
당신은 편집하여 사용자 정의 GRUB 메뉴 항목을 추가 할 수 있습니다 /etc/grub.d/40_custom
,
맞춤 메뉴 항목의 예 :
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 "Trisquel ISO" {
set isofile="/Operating_Systems/Trisquel_7.0_i686/trisquel_7.0_i686.iso"
loopback loop (hd0,5)$isofile
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile quiet splash
initrd (loop)/casper/initrd
}
지시 및 설명 :
이 명령 set
은 ISO 파일의 경로를 변수에 저장하는 데 사용됩니다 (here) isofile
.
loopback
파일 시스템 이미지에서 장치를 만드는 데 사용됩니다. 그러기 위해서는 장치와 이미지 파일을 지정해야합니다. 여기서 우리 는 디스크 의 다섯 번째 파티션 (hd0,5)$isofile
을 (hd0,5)
나타냅니다 .
linux
명령은 파일에서 Linux 커널 ( vmlinuz ) 을로드하는 데 사용 됩니다. 리눅스 커널의 경로를 ISO에 넣으십시오.
커널의 경로를 얻기 위해 ISO의 내용을 읽거나 추출하십시오.
$ 7z l trisquel_7.0_i686.iso | grep vmlinu
2014-10-29 21:41:43 ..... 5841680 5841680 casper/vmlinuz
2014-11-03 00:45:09 ..... 5844176 5844176 casper/vmlinuz.netinst
그래서 /casper/vmlinuz
여기에 사용되었습니다.
initrd
명령은 Linux 커널 이미지의 초기 램 디스크를로드하고 메모리의 Linux 설정 영역에서 적절한 매개 변수를 설정하는 데 사용됩니다.
initrd
ISO에 경로를 넣습니다 .경로를 얻으려면 ISO의 내용을 읽거나 추출하십시오 initrd
.
$ 7z l trisquel_7.0_i686.iso | grep initrd
2014-11-03 00:45:19 ..... 16851900 16851900 casper/initrd
2014-11-03 00:45:09 ..... 9398592 9398592 casper/initrd.netinst
추가 매개 변수 (예 : boot=casper iso-scan/filename=$isofile noprompt noeject
GNU / Linux 배포판에 따라 다를 수 있으며 다른 Linux 제품군에 따라 다름) 여기 에서 다른 제품군 / 배포에 대한 일부 구성을 찾을 수 있습니다 .
참고 : 일부 배포판을 사용 initrd.gz
또는 initrd.lz
사용되는 알고리즘 / 압축에 따라.
를 편집 한 후 /etc/grub.d/40_custom
GRUB을 update-grub2
명령 으로 업데이트해야합니다 . 재부팅하면 GRUB 화면에 추가 한 사용자 정의 메뉴 항목이 나타납니다. 그리고 GNU / Linux 배포판의 라이브 환경을 사용할 수도 있습니다.
ISO에서 설치하려면 설치 프로그램이 마운트 된 파티션을 마운트 해제해야합니다. 즉, 다른 시스템이에 장착되어 /isodevice
있다면 가능 umount -l /isodevice
합니다.