노트북에 Antergos를 설치한 다음 Ubuntu를 설치했습니다. Ubuntu는 다른 Linux 설치가 있음을 감지하여 Antergos를 grub 메뉴에 추가했습니다. grub은 부팅할 때마다 Ubuntu 파티션에서 로드됩니다. 다른 grub 파일을 기본값으로 설정하는 방법은 무엇입니까?
내 파티션은 다음과 같습니다
- Antergos 부팅 파티션(여기에서 grub.cfg를 로드하려고 함) - /dev/sda1
- Antergos 루트 파티션 - /dev/sda2
- Ubuntu 파티션(grub은 여기에서 로드됨) - /dev/sda6
답변1
기존 BIOS 시스템에서 BIOS는 부팅하도록 설정된 디스크의 MBR(마스터 부트 레코드)을 찾습니다. 이것은 부트로더 프로세스의 첫 번째 단계를 포함하는 디스크의 처음 512바이트이며, 귀하의 경우 grub이 됩니다. 이 단계의 유일한 작업은 /boot가 포함된 드라이브에서 일반적으로 두 번째 단계를 찾아서 로드하는 것입니다. MBR에는 이러한 경로가 하드코딩되어 있으며 이를 변경하려면 MBR이 가리키도록 하려는 시스템(또는 시스템의 chroot)에서 MBR을 다시 설치해야 합니다 grub-install
. 시스템을 부팅할 수 있으면 간단하지만 그렇지 않은 경우 시스템에 livecd 및 chroot를 사용해야 합니다. 지침을 참조하세요.여기이를 수행하는 방법에 대해.
그러나 귀하의 경우 antergos grub 구성에는 우분투 배포판이 포함되지 않으므로 추가하기 전까지는 부팅할 수 없습니다. 이것이 의도된 목표라면 기본적으로 antergos를 시작하도록 ubuntu grub 구성을 구성할 수도 있습니다. 어느 접근 방식이든 허용되며 달성하려는 목표에 따라 다릅니다.
답변2
grub을 설치하는 데 사용됩니다 grub-install
(/dev/sda
grub
/dev/sda1
@SHW 설명대로boot
) 플래그를 사용하거나 설정합니다 ./dev/sda1
fdisk
parted
boot
태그를 제거해야 할 수도 있습니다 ( 또는 다시 /dev/sda6
사용 ).fdisk
parted
답변3
UEFI 시스템(이전 BIOS에 대해서는 잘 모르겠습니다):
다음 명령을 사용하여 efi 파티션을 찾고 해당 UUID를 기록해 둡니다( 수백 Mb의 파티션
sudo lsblk -f
이어야 함 ).vfat
이 예에서는 이 파티션을 UUID로 간주해 보겠습니다/dev/mmcblkx
.XXXX-XXXX
/boot/efi/
폴더를 생성하고 명령을 사용하여 EFI 파티션을 마운트합니다./boot/efi
sudo mount /dev/mmcblkx /boot/efi
올바른 EFI 파티션을 설치했는지 확인하고 해당 파티션에
/boot/efi/EFI
폴더가 있는지, 그리고 해당 EFI 폴더 내에 시스템에 설치된 운영 체제가 있는지 확인하십시오.내 /boot/efi/EFI는 다음과 같습니다.
user@user-mypc:~> sudo ls /boot/efi/EFI/ BOOT GRUB linux opensuse ubuntu
/boot/efi
에 마운트할 EFI 파티션 항목을 추가합니다/etc/fstab
.UUID=XXXX-XXXX /boot/efi vfat utf8 0 2
다음을 통해 GRUB 설치
sudo grub2-install --target=i386-efi --efi-directory=/boot/efi/ --bootloader-id=GRUB
sudo update-bootloader --refresh
.sudo grub2-mkconfig -o /boot/grub/grub.cfg
재시작