Kali Linux를 여러 번 설치했지만 항상 grub으로 부팅했습니다. 그런 다음 OS에 들어가려면 다음 코드를 사용해야 합니다.
set prefix=(hd0,gpt2)/boot/grub
set boot=(hd0,gpt2)
insmod normal
normal
이것이 불편해서, 실행 구성을 변경하는 방법을 구글링하여 다음과 같은 해결책을 찾았습니다.
sudo nano /etc/default/grub은
GRUB_CMDLINE_LINUX_DEFAULT
필요에 따라 부팅 매개변수를 찾아 설정합니다. "insmod"를 사용하여 모듈을 로드해야 하는 경우 다음을 수행할 수 있습니다.GRUB_CMDLINE_LINUX_DEFAULT="조용함"
그 다음에
sudo update-grub
세미콜론으로 구분된 접두사와 부팅 명령을 추가하려고 시도했지만 다시 grub에 빠져 수동으로 부팅해야 했습니다. 다행히 복구가 성공했습니다. 그런 다음 insmod 일반 및 일반 명령도 추가했지만 시작되지 않습니다(복구 중에도).
그래서 내가 어디로 잘못 가고 있는지, 누군가 나에게 올바른 코드 문자열을 제공할 수 있는지 궁금합니다.
성공하지 못한 채 재설치를 시도했지만 BIOS의 부팅 파티션에서 계속 Ubuntu라고 말하는 것을 발견했습니다. Grub에서 수동으로 부팅할 수 있기 때문에 그것이 중요한지 확실하지 않습니다.
내 코드가 어떻게 생겼는지 잊어버렸는데 조용한 괄호 안에 있었던 것 같아요.
답변1
grub이 제대로 설치되지 않은 것 같습니다. Grub은 명확하게 구성되어 있습니다. 그렇지 않으면 normal
별 도움이 되지 않습니다. 따라서 update-grub
구성을 다시 작성하는 것뿐이므로 별로 도움이 되지 않습니다.
EFI로 부팅한다고 가정하면, grub은 스텁 구성 파일과 함께 ESP(EFI) 파티션에 설치되어야 합니다. 그렇지 않으면 구성 파일이 grub 바이너리 자체에 미리 패키지화될 수 있습니다.
아직 OS에 들어갈 수 있다고 하셨는데, 이 문제를 해결하려면 Kali를 실행하세요.
그런 다음 시스템이 레거시가 아닌 EFI를 사용하여 부팅한다고 가정하면 먼저 /etc/fstab
ESP(EFI) 파티션을 /boot/efi
. 존재하지 않는 경우 추가하십시오.
그런 다음 시스템에 실제로 파티션이 마운트되어 있는지 확인하십시오.
mount | grep /boot/efi
grub을 다시 설치해 보세요...
ESP 파티션이 올바르게 마운트되었음을 알게 되면 인수 없이 실행하여 ESP 파티션에 grub-install
올바른 파일을 추가 할 수 있습니다 .grub.cfg
grub-install
그렇지 않으면 수동으로 설치하고 구성하십시오...
그래도 문제가 해결되지 않으면 수동으로 수행해야 할 수도 있습니다. Kali에 대한 나의 지식은 약간 제한되어 있으므로 정확한 디렉토리가 무엇인지 잘 모르겠습니다. 동일한 디렉터리에 grub의 구성 파일이 있는지 확인해야 합니다. 예: 부트로더가 이면 구성 파일 /boot/efi/EFI/debian/grubx64.efi
도 있어야 합니다 ./boot/efi/EFI/debian/grub.cfg
이 구성 파일을 편집하고 질문에서 언급한 정확한 명령을 복사할 수 있습니다.
set prefix=(hd0,gpt2)/boot/grub
set boot=(hd0,gpt2)
insmod normal
normal
더 나은 것, 루트 파일 시스템(또는 /boot 디렉토리가 포함된 파일 시스템)의 UUID를 찾을 수 있고 찾아야 합니다.search
. UUID를 검색하는 데 사용할 수 있습니다 blkid
. 예를 들어 구성 파일은 다음과 같이 보일 수 있습니다.
search --fs-uuid 917afb23-5bb6-4537-b985-3bc2a6416de0 --set boot
set prefix=${boot}/boot/grub
insmod normal
normal