Linux에서 GRUB를 복구하려고했습니다. 이 튜토리얼에 따라 OS에 로그인 할 수있었습니다.

https://www.lisenet.com/2014/grub2-rescue-mode-error-unknown-filesystem/

문제를 해결하려면 GRUB를 업그레이드해야합니다. 그러나 grub-install를 실행하면 오류가 발생합니다.

$ grub-install /dev/sda grub-install: error: cannot find EFI directory. 

내 파일 시스템에 sda4, sda5sda6 (각각 EFI 시스템, Linux 스왑 및 Linux 파일 시스템 용)

마운트 또는 기타 명령 사용 경험이별로 없습니다.

답변

grub-install 기본적으로 EFI 시스템이 / boot / efi로 마운트되었다고 가정합니다.

배포에 따라 다름 EFI 시스템이 마운트되고 일부 배포에서는 “부팅 후 마운트되지 않습니다.

먼저 / boot / efi가 다음으로 마운트되었는지 확인합니다.

mount | grep /boot/efi 

그래도 작동하지 않으면 먼저 다음을 시도하여 다른 위치에 마운트되었는지 확인하세요.

mount | grep /dev/[efi device] 

둘 다 작동하지 않는 경우 :

mount /dev/[efi device] /mnt 

이제 실행 :

grub-install --efi-directory=[efi dir] grub-mkconfig -o /boot/grub/grub.cfg 

여기서 [efi dir]은 / boot / ef입니다. i 또는 / mnt 및 [efi device]는 EFI 시스템 파티션이있는 장치입니다. 모르는 경우 lsblk -o NAME,PARTTYPE,MOUNTPOINT | grep -i "C12A7328-F81F-11D2-BA4B-00A0C93EC93B"

댓글

  • 감사합니다. grub-install --efi-directory=/boot/EFI 내가 /mnt로 chroot 할 때.
  • 아마 어리석은 Q 일 수 있지만 나는하지 않습니다 ' EFI 디렉토리가 없습니다. 어디서 얻을 수 있습니까? 파일을 포함해야한다는 뜻입니다. 어떤 명령으로 다시 만들 수 있습니까?
  • @LennartRolland UEFI 호환 시스템이있는 경우 시스템 드라이브는 GPT 파티션이고 " UEFI 시스템 파티션을 포함합니다. " 일반적으로 첫 번째 파티션이며 EF00 유형입니다. 많은 배포가 마운트됩니다. 기본적으로 / boot / efi로 설정되어 GRUB 부트 로더가 파일을 업데이트 할 수 있습니다. 그렇지 않은 경우 ' 직접 마운트하여 fstab에 추가해야합니다. UEFI 시스템이있을 수도 있지만 레거시 모드를 사용하고 있습니다. 즉, 파티션이 msdos 유형이되고 ' / boot / efi. 이상한 구성이 존재하지만 대부분을 포함합니다.
  • EFI가 마운트되지 않은 경우 지침이 잘못되었습니다. 내 편집을 참조하십시오. mount | grep /dev/sda6 작동하지 않습니다 '. EFI가 마운트되지 않은 경우 파티션 유형을 확인해야합니다.
  • @giusti 특정 장치 이름을 참조하지 않는 것이 좋습니다.

답변

Grub 복구 모드는 다음과 같이 처리 될 수 있습니다.

set root=(hd0,gpt6) set prefix=(hd0,gpt6)/boot/grub insmod normal normal 

로그인하면

.

댓글

  • grub-install가 완료되지 않아야합니다. update-grub?
  • 첫 번째 명령을 입력 할 때 " bash : 구문 오류가 발생했습니다. 예상치 못한 토큰`(' "
  • @ Another.Chemist : 주어진 명령은 가야합니다. GRUB 대화 형 콘솔로 이동합니다. 커널이 부팅되기 전일 것입니다. 오류는 Bash에 명령을 입력 한 것 같습니다.

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다