grub-install: 오류: efi 디렉터리를 찾을 수 없습니다

grub-install: 오류: efi 디렉터리를 찾을 수 없습니다

최근에 듀얼부팅했는데칼리-리눅스-2016.2-amd64윈도우 10을 사용합니다. 얼마 후 Windows 10을 업데이트했기 때문에 Windows가 부팅 메뉴에서 grub을 제거했을 수 있습니다. 이제 부팅 메뉴에 kali-linux가 더 이상 나타나지 않기 때문에 부팅할 수 없습니다.

그래서 USB(영구)에서 Live-kali를 부팅하여 grub을 다시 설치하기로 결정했습니다. 터미널에 다음 명령을 입력했습니다.

fdisk -l
sudo mount /dev/sda* /mnt
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt
grub-install /dev/sda

CTRL+D

sudo umount /mnt/dev
sudo umount /mnt/proc
sudo umount /mnt/sys
sudo umount /mnt

7번째 명령줄 이후에 다음 오류가 발생합니다. 여기에 이미지 설명을 입력하세요.

답변1

기본적인 명령어를 모르셔서 도와드리기는 힘들지만... 한번 해볼께요, 알겠죠?

  • fdisk -l이미지와 마찬가지로 현재 파티션을 나열하십시오 .
  • 이미지에서 /dev/sda1은 EFI 시스템으로, /dev/sda10은 Linux 파일 시스템으로, /dev/sda11은 Linux 스왑 영역으로 표시됩니다. 이 정보를 보관하세요.
  • 라이브 CD로 부팅할 때 시스템에 액세스하려면 다음을 수행해야 합니다 chroot. 즉, 이 작업은 현재 실행 중인 프로세스와 그 하위 프로세스의 명백한 루트 디렉터리를 변경합니다. 갑시다:

  • /mnt에 시스템을 마운트합니다. 기억하다? 리눅스 파일 시스템? 예. /dev/sda10입니다. 따라서 다음 명령을 실행하십시오:

             sudo mount /dev/sda10 /mnt.

    sudo이 작업을 수행하려면 관리자 권한이 있어야 하기 때문에 사용하고 있습니다 .

  • 따라서 프로그램이 작동하는 데 필요한 임시 파일 시스템을 마운트하려면 다음 명령을 사용하십시오.

             sudo mount --bind /dev /mnt/dev
             sudo mount --bind /dev/pts /mnt/dev/pts
             sudo mount --bind /proc /mnt/proc
             sudo mount --bind /sys /mnt/sys

  • 부팅을 수정 중이므로 /boot 파티션도 필요합니다. 일부 시스템에서는 /boot 디렉토리와 시스템 루트(/)에 동일한 파티션을 사용합니다. 현재 상황이 무엇인지 모른다면 이 시점에서 /mnt/boot/ 폴더에서 파일을 확인하십시오(커널 이미지, 구성 등을 찾을 수 있습니다).

       -/mnt/boot 폴더가 비어 있으면 /boot 파티션을 마운트해야 합니다. 귀하의 상자에서 사용할 수 있는 유일한 파티션은 /dev/sda1이므로 그렇게 될 것입니다. /mnt/boot에 마운트됩니다.

       -이러한 파일을 찾으면 /dev/sda1의 다른 파티션은 실제로 EFI 파일 시스템이어야 하며 /mnt/boot/EFI에 마운트되어야 합니다.

  • 모든 것이 설치된 후 다음 명령을 사용하여 루트 디렉터리를 변경합니다.

             sudo chroot /mnt /bin/bash

  • 이제 chroot에서 grub을 설치할 수 있습니다.

    sudo grub-install /dev/sda

관련 정보