다른 distro 파티션을 삭제한 후 재부팅 시 Grub 메뉴

다른 distro 파티션을 삭제한 후 재부팅 시 Grub 메뉴

방금 맥북에어를 구매했습니다. Ubuntu를 사용하여 Mac 운영 체제를 이중 부팅합니다. Mac에서 다중 부팅을 수행하는 것은 이번이 처음입니다. 다른 우분투로 세 번 부팅했습니다. 세 번째 배포판을 제거한 후 몇 가지 그럽 문제가 발생했습니다.

먼저 다음과 같이 분할합니다.

$ lsblk
sda
  sda1  200M    /boot/efi
  sda2  47.3GB              # Mac os
  sda3  620MB               # Mac rescue
  sda4  2GB                 # Swap partition
  sda5  50GB                # Ubuntu 1
  sda6  50GB                # Ubuntu 2
  sda10 100GB               # ext4 file system

sda5완료되면 Ubuntu를 직접 부팅합니다. 정말 좋습니다 . 나중에 sda6테스트를 위해 다른 ditro를 사용하고 싶었고 이것을 쉽게 할 수 있는지 확인하고 싶어서 다른 우분투를 설치했습니다 . Ubuntu 버전은 다른 파티션에 설치한 버전과 정확히 동일합니다. 두 번째 Ubuntu를 설치한 후 재부팅했고 grub 화면에서 두 Ubuntu 중 하나를 선택하라는 메시지를 표시했습니다. 정돈된. 그런 다음 두 번째 우분투는 쓸모가 없었기 때문에 sda6다음을 사용하여 제거했습니다 gdisk.

$ gdisk /dev/sda
> d  # delete partition
> 6  # delete partition 6
> w  # write changes
> Y  # confirmation of writing changes.
> q  # quit gdisk

$ lsblk
sda
  sda1  200M    /boot/efi
  sda2  47.3GB              # Mac os
  sda3  620MB               # Mac rescue
  sda4  2GB                 # Swap partition
  sda5  50GB                # Ubuntu 1
  sda10 100GB               # ext4 file system

이제 재부팅 후 검은 화면에 grub 명령줄이 표시됩니다. 내 우분투가 있는 디스크를 지정해야 합니다. Ubuntu에서 부팅하려면 이 스레드의 몇 가지 지침을 따랐습니다. https://askubuntu.com/questions/159846/tried-to-boot-ubuntu-but-the-grub-rescue-shows-up-instead 그리고 다음을 시도해 보세요:

grub> ls (hd2,gpt5)  # That's my Ubuntu partition
grub> root=(hd2,gpt5)
grub> configfile /boot/grub/grub.cfg

이제 우분투를 성공적으로 부팅했습니다. 로그인한 후 grub 업데이트 지침을 따랐습니다.

$ sudo update-grub

아아, 재부팅하면 그럽 화면이 다시 나타납니다. 따라서 grub을 업데이트해도 문제가 해결되지 않았습니다. 나는 또한 다음과 같은 경우에 grub 2를 사용해 보았습니다.

$ sudo update-grub2

아무것도 바뀌지 않습니다.

또한 sda6에 Ubuntu의 두 번째 버전을 다시 설치해 보았습니다. 동일한 시나리오에서 재부팅했을 때 grub 메뉴에서 두 개의 Ubuntu 버전 중 하나를 선택하라는 메시지가 표시되어 문제가 해결되었습니다. 그러나 두 번째 Ubuntu 파티션을 삭제하면 grub 명령줄 화면에서 지정하지 않는 한 첫 번째 파티션이 직접 부팅되지 않습니다.

이것이 도움이 될지는 모르겠지만 이것은 내 fstab입니다.

$ cat /etc/fstab
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/sda2 during installation
UUID=85ab4560-729a-4f7d-91d9-69af89ea1219 /               ext4    errors=remount-ro 0       1
# /boot/efi was on /dev/sda1 during installation
UUID=DAC6-DEC2  /boot/efi       vfat    defaults        0       1
# swap was on /dev/sda4 during installation
UUID=9c76739a-5996-43d8-a14e-fe690c06870f none            swap    sw              0       0

이 문제를 해결하려면 어떻게 해야 합니까? EFI 문제인가요? 두 번째 Ubuntu 파티션을 삭제하면 grub에서 첫 번째 파티션을 인식할 수 없는 이유는 무엇입니까?

저는 깨끗한 해결책을 찾고 싶기 때문에 문제를 해결하기 위해 Ubuntu를 다시 설치하는 것을 피하고 싶습니다.

답변1

grub.cfg다음 명령을 사용하여 다시 생성 해야 합니다 .

grub2-mkconfig -o /boot/grub2/grub.cfg

또는

grub-mkconfig -o /boot/grub/grub.cfg

답변2

나는 이 스레드에서 팁을 얻어 문제를 해결했습니다.https://superuser.com/questions/376470/how-to-reinstall-grub2-efi

라이브 설치를 사용할 필요가 없으며 grub 창을 통해 우분투 세션으로 부팅하기만 하면 됩니다. 그런 다음 grub을 다시 설치했습니다.

$ apt-get install --grub-efi-amd64 다시 설치

그러면 update-grub도 자동으로 실행됩니다. /boot/efi/EFI/ubuntu/grub.cfg의 grub.cfg 파일을 올바른 파티션으로 업데이트하여 우분투를 부팅합니다.

$ cat /boot/efi/EFI/ubuntu/grub.cfg 
search.fs_uuid 17441147-6b9d-45fe-bccd-bed2451f43f8 root hd0,gpt5 
set prefix=($root)'/boot/grub'
configfile $prefix/grub.cfg

예전에는 달리던 중

$ 업데이트 그럽

uuid나 파티션은 모두 업데이트되지 않으며 이전 파티션은 hd0, gpt6이라는 최신 우분투 파티션입니다. 그래서 grub 재설치가 필요한 것 같습니다.

관련 정보