내 디스크에는 Alpine과 Debian이라는 2개의 운영 체제가 있고 /home은 별도의 파티션에 있습니다.
부트로더는 MBR(BIOS)에 설치된 Debian의 grub입니다.
공간을 절약하기 위해 다른 운영 체제를 제거할 수 있도록 Alpine과 해당 extlinux 부트로더를 사용하고 싶습니다.
알파인은 sda3에 있습니다
sda 8:0 0 465.8G 0 disk
├─sda1 8:1 0 300M 0 part
├─sda2 8:2 0 47.5G 0 part /mnt
├─sda3 8:3 0 78.4G 0 part /
└─sda4 8:4 0 335.6G 0 part /home
Alpine에 syslinux를 설치했습니다. syslinux의 경우 아래와 같이 MBR의 시작 부분을 덮어씁니다.
doas dd bs=440 count=1 conv=notrunc if=/usr/share/syslinux/mbr.bin of=/dev/sda
/boot 디렉토리는 다음과 같습니다
System.map-lts extlinux.conf.old ldlinux.sys mboot.c32 vmlinuz-lts
config-lts initramfs-lts libcom32.c32 menu.c32
extlinux.conf ldlinux.c32 libutil.c32 vesamenu.c32
extlinux.conf
DEFAULT menu.c32
PROMPT 0
MENU TITLE Alpine/Linux Boot Menu
MENU HIDDEN
MENU AUTOBOOT Alpine will be booted automatically in # seconds.
TIMEOUT 10
LABEL lts
MENU DEFAULT
MENU LABEL Linux lts
LINUX /boot/vmlinuz-lts
INITRD /boot/initramfs-lts
APPEND root=UUID=b0bd16c2-3546-4392-a7b2-fb8206933a47 modules=sd-mod,usb-storage,ext4 quiet rootfstype=ext4
MENU SEPARATOR
그럼 난 달렸어
doas extlinux --install /boot
컴퓨터를 다시 시작했을 때 "인텔 부트 에이전트"가 만족스럽지 않아 BIOS 디스크 선택 화면으로 이동했습니다.
USB 스틱의 Alpine 라이브 ISO는 정상적으로 부팅되며 extlinux를 사용하는 것으로 보입니다. 그래서 하드웨어가 호환된다고 가정합니다. 이 설정에 문제가 있나요?
답변1
Freddy가 언급한 것처럼 부팅 디렉터리가 포함된 파티션은 "부팅"으로 표시되지 않습니다.
부팅 플래그는 루트 권한으로 fdisk 도구를 사용하여 활성화할 수 있습니다. sda1의 인스턴스로서 다음과 같을 수 있습니다. fdisk /dev/sda
그런 다음 파티션 번호에 a
응답 하고 변경 사항을 기록합니다. 이제 sda1 파티션이 부팅 파티션으로 표시되어야 합니다.1
w