GRUB 2 복구 모드에서 Linux 부팅 실패 복구

GRUB 2 복구 모드에서 Linux 부팅 실패 복구

2022-10-19 last update

7 minutes reading centos fedora linux suse debian ubuntu
GRUB 2의 부팅 문제 수정 기능이 원래 GRUB 부트로더보다 크게 향상되었습니다. 이 문서에서는 GRUB 2 부팅 문제를 복구하는 데 사용할 수 있는 옵션에 대한 정보와 GRUB 2 터미널을 사용하는 방법에 대한 특정 지침을 제공합니다. 지침은 GRUB 2용으로 작성되었습니다.

어떻게 생겼나요?


GRUB가 부팅에 실패할 때 기본적으로 세 가지 오류 메시지 또는 화면이 있습니다. grub>: GRUB이 configurationn 파일을 제외한 모든 것을 찾았을 때 표시되는 화면 모드입니다. 이 파일은 아마도 grub.conf일 것입니다. grub 구조>: GRUB 2가 GRUB 폴더를 찾을 수 없거나 그 내용이 누락/손상된 경우의 모드입니다. GRUB 2 폴더에는 메뉴, 모듈 및 저장된 환경 데이터가 들어 있습니다. GRUB: "GRUB"만 표시되면 GRUB 2가 시스템을 부팅하는 데 필요한 가장 기본적인 정보조차 찾지 못했다는 의미입니다. 부팅 중 발생할 수 있는 기본 오류입니다. 정지된 스플래시 화면, Busybox 또는 Initramfs: GRUB 2 started....와 같이 화면에서 볼 수 있는 몇 가지 오류가 더 있지만 GRUB 2 실패 모드 각각은 GRUB 2 터미널 또는 라이브 부팅에서 수정할 수 있습니다. 배포판의 CD 또는 DVD, 타사 구조 도구도 사용할 수 있습니다.

기본 명령을 사용할 수 있습니다.


"c"를 눌러 GRUB 2 터미널 모드로 들어갈 때 사용할 수 있는 명령입니다.
boot (Initiate the boot, also F10 or CTRL-x)
cat (view the contents of config or txt files; cat (hd0,1)/boot/grub/grub.cfg)
configfile (Load a GRUB 2 configuration file such as grub.cfg; configfile (hd0,5)/boot/grub/grub.cfg.)
initrd (Loads the initrd.img, necessary for booting; initrd (hd0,5)/initrd.img.)
insmod (Loads a module; insmod (hd0,5)/boot/grub/normal.mod, or insmod normal.)
linux (Loads the kernel; insmod /vmlinuz root=(hd0,5) ro.)
loop (Mount a file as a device; loopback loop (hd0,2)/iso/my.iso.)
ls (lists the contents of a partition/folder; ls, ls /boot/grub, ls (hd0,5)/, ls (hd0,5)/boot.)
lsmod (List loaded modules.)
normal (Activate the normal module, if loaded.)
search (Search for a device. Type help search for the available options.)
set (Review current settings, or set XXX to set a variable such as colors, prefix, root.)
vbeinfo (Display GRUB 2 available resolutions.)

구조 쉘.


복구 쉘을 얻는다면 이는 일반적으로 GRUB가 어떤 이유로 "정상"모듈을 로드하지 못했음을 의미합니다. 일시적으로 이 문제를 해결할 수 있습니다. 예를 들어, 실패의 원인이 "접두사"가 잘못된 경우(아마도 잘못된 장치를 참조하거나 "/boot/grub"에 대한 경로가 올바르게 만들어지지 않았을 수 있습니다. 장치에 상대적인 경우), 이를 수정하고 수동으로 일반 모드로 들어갈 수 있습니다. 현재 접두사(및 기타 사전 설정 변수)를 검사합니다.
set
아마도 다음과 같은 결과가 나올 것입니다. 출력은 다를 수 있지만 필요한 정보를 얻습니다. 사용 가능한 장치를 확인하십시오.
ls
다음과 같은 올바른 값으로 설정합니다.
set prefix=(hd0,1)/grub
(이것은 자신의 드라이브 이름에 따라 수행해야 합니다)
set root=(hd0,1)
(이것은 자신의 드라이브 이름에 따라 수행해야 합니다.)
insmod normal
normal
위의 명령을 실행하면 복구 모드에서 일반 터미널 모드로 전환됩니다. 터미널 모드에서는 기능이 향상된 더 많은 명령을 사용할 수 있습니다. 위의 명령 후에 나머지 설정을 시작할 수 있습니다.
insmod linux 
* linux /vmlinuz root=/dev/sdXY ro
(이 방법이 작동하지 않으면 이것을 시도하십시오)
linux /boot/vmlinuz-3.2.0-14-generic root=/dev/sda1 ro
(선택 과목)
initrd /initrd.img
(초기화 이미지를 선택합니다.)
boot

시스템 부팅 후.


GRUB 구성 파일을 업데이트합니다.
sudo update-grub
장치에 Grub 재설치:
sudo grub-install /dev/sdX
이것은 구조 부분을 위한 것이어야 하며 시스템이 양호하고 실행 중이어야 합니다. 그렇지 않은 경우 부트 복구를 사용하여 모든 문제를 저장할 수 있습니다. 이것은 전체 부팅 메뉴를 복구하는 데 사용되는 도구입니다. 직접 다운로드하여 Live Boot CD 또는 DVD로 사용할 수 있습니다. Here 다운로드 링크입니다.