Kali Linux는 항상 grub으로 부팅됩니다.

Kali Linux는 항상 grub으로 부팅됩니다.

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/fstabESP(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

관련 정보