나는 데비안을 이해하려고 노력하고 있습니다"하드 드라이브에서 부팅"설치 매뉴얼.
프로세스는 다음과 같습니다. 설치 프로그램과 함께 a kernel image
, a ramdisk initrd
및 ISO
설치 프로그램을 하드 드라이브에 복사한 다음 커널과 램디스크를 부팅하도록 GRUB를 구성하고 루트 파일 시스템이 어디에 있는지 GRUB에 알려야 합니다(ISO에 있어야 함). ) 커널이 루트 파일 시스템을 부팅할 수 있도록 이를 켜십시오. 하지만데비안에서 제공하는 grub 구성하드 드라이브 내의 ISO 파일이 아닌 전체 하드 드라이브가 루트 파일 시스템으로 지정된 것 같습니다.
GRUB1:
title New Install
root (hd0,0)
kernel /boot/newinstall/vmlinuz
initrd /boot/newinstall/initrd.gz
GRUB2:
menuentry 'New Install' {
insmod part_msdos
insmod ext2
set root='(hd0,msdos1)'
linux /boot/newinstall/vmlinuz
initrd /boot/newinstall/initrd.gz
}
그게 왜 효과가 있을까요? GRUB은 ISO 파일을 전체 하드 드라이브 대신 루트 파일 시스템으로 하드 드라이브에 마운트할 만큼 스마트합니까? 아니면 dd
ISO 내용을 하드 드라이브에 직접 복사 해야 합니까 ? 데비안은 이것에 대해 수줍어합니다.
답변1
Frostshutz 댓글에서 복사됨:
initrd.gz(initramfs)에는 busybox 사용자 영역과 이 목적으로 작성된 Debian 스크립트가 포함되어 있습니다. GRUB2는 ISO의 직접 루프 설치도 지원하지만 일반적으로 ISO 자체에서 커널/initrd를 가져오고 다시 로드되면 커널/initrd가 ISO를 찾아 설치를 루프해야 합니다.