GRUB 부트로더에는 부트 문제를 해결하는 데 사용할 수 있는 강력한 명령줄 인터페이스가 있습니다. GRUB 구조라고 합니다.
이 기사에서는 GRUB의 GRUB Rescue 명령줄 인터페이스를 사용하는 방법을 보여줍니다. 데모를 위해 Ubuntu 18.04 LTS를 사용하고 있습니다. 시작하자.
GRUB Rescue 명령줄 인터페이스에 들어가기:
기본적으로 모든 것이 정상이면 컴퓨터를 시작할 때 설치한 운영 체제로 바로 부팅되어야 합니다. 제 경우에는 Ubuntu 18.04 LTS 운영 체제입니다.
문제가 발생하여 부팅 문제가 발생하면 GRUB 복구 명령줄 인터페이스가 표시될 것입니다. 아래 주어진 스크린 샷과 같습니다.
때때로 아래 스크린샷과 같이 GRUB 메뉴를 볼 수 있습니다. 여기에서 GRUB Rescue로 이동하려면 다음을 누르십시오. 씨 .
아래 스크린샷에서 볼 수 있듯이 GRUB Rescue 명령줄 모드로 이동할 수 있어야 합니다.
다음 섹션에서는 GRUB Rescue를 사용하는 방법을 보여드리겠습니다. 먼저 제가 설치한 우분투 18.04 LTS 운영체제로 부팅하는 방법을 보여드리겠습니다. 그런 다음 몇 가지 일반적인 GRUB Rescue 명령에 대해 설명하겠습니다.
GRUB Rescue를 사용하여 Ubuntu 18.04 LTS로 부팅:
GRUB Rescue 명령줄 인터페이스에서 다음 명령을 사용하여 설치한 하드 드라이브 및 파티션을 나열할 수 있습니다.
애벌레 > ls당신이 볼 수 있듯이, 나는 (hd0) , (hd0, gpt1) 그리고 (hd0,gpt2) 사용 가능. (hd0) 원시 하드 드라이브를 나타냅니다. (hd0,gpt1) 그리고 (hd0,gpt2) 의 첫 번째 및 두 번째 GPT 파티션입니다. (hd0) 각기.
UEFI 하드웨어에 Ubuntu 18.04 LTS를 설치했습니다. 그래서 첫번째 파티션 (hd0,gpt1) EFI 파티션과 두 번째 파티션 (hd0,gpt2) 루트 파티션입니다. 운영 체제로 부팅하는 데 필요한 파일은 다음 위치에 있습니다. /신병 디렉토리 (hd0,gpt2) 내 경우에는 파티션. 당신은 가질 수 있습니다 /신병 별도의 파티션에 있는 디렉토리, 이 경우 적합하다고 판단되는 명령을 변경하십시오.
다음을 사용하여 특정 파티션에 있는 파일을 나열할 수 있습니다. ls GRUB Rescue 명령줄 인터페이스의 명령.
루트 파티션의 파일 및 디렉토리 나열 (hd0,gpt2) 다음 명령으로:
애벌레 > ls ( hd0, gpt2 ) /
보시다시피 파일과 디렉토리가 나열됩니다.
우리는 우리가 가지고 있는 파일에 관심이 있습니다. /신병 디렉토리.
애벌레 > ls ( hd0, gpt2 ) / 신병다음에서 두 개의 파일을 찾아야 합니다. /신병 예배 규칙서, vmlinuz 그리고 초기화 아래 스크린샷에 표시된 대로. 올바르게 부팅하려면 이러한 파일이 필요합니다.
이제 설정 뿌리 루트 파티션을 가리키는 변수 (hd0,gpt2) 다음 명령으로:
애벌레 > 세트 뿌리 = ( hd0, gpt2 )
이제 당신은 리눅스 상대 경로를 만드는 명령 vmlinuz GRUB 부트로더에 알려진 파일.
다음 명령으로 그렇게 할 수 있습니다.
애벌레 > 리눅스 / 신병 / vmlinuz-4.15.0- 이십 -일반적인 뿌리 = / 개발자 / sda2
여기 루트=/dev/sda2 필요합니다. 그렇지 않으면 부팅하지 못할 수 있습니다. /dev/sda2 즉, 첫 번째 하드 드라이브의 두 번째 파티션입니다. 작동 방식을 이해하는 데 도움이 되는 표를 추가했습니다.
GRUB 식별자 | 하드 드라이브 | 분할 | 리눅스 식별자 |
(hd0) | 첫 번째 | /dev/sda | |
(hd0,gpt1) | 첫 번째 | 첫 번째 | /dev/sda1 |
(hd0,gpt2) | 첫 번째 | 초 | /dev/sda2 |
(hd1) | 초 | /개발/sdb | |
(hd1,gpt2) | 초 | 초 | /dev/sdb2 |
(hd1,gpt5) | 초 | 다섯 | /dev/sdb5 |
또한 다음을 사용하여 파일 및 디렉토리 자동 완성 <탭> key는 Linux 터미널에서와 마찬가지로 GRUB 명령줄 인터페이스에서도 작동합니다. 따라서 GRUB 명령줄 인터페이스를 탐색하는 데 어려움을 겪지 않아도 됩니다.
이제 다음을 실행해야 합니다. 초기화 initrd 이미지를 GRUB 부트로더에 알리는 명령입니다.
다음 명령으로 그렇게 할 수 있습니다.
애벌레 > 초기화 / 신병 / initrd.img-4.15.0- 이십 -일반적인
이제 모든 것이 설정되었으므로 다음 GRUB 명령을 실행하여 Ubuntu 18.04 LTS 운영 체제로 부팅할 수 있습니다.
애벌레 > 신병
아래 스크린샷에서 볼 수 있듯이 부팅 프로세스가 시작되어야 합니다.
나중에 로그인 화면이 표시됩니다. Ubuntu 18.04 LTS 시스템에 로그인합니다.
이제 로그인했으므로 다음 명령을 실행하여 GRUB 2 구성 파일을 업데이트합니다.
$ 스도 업데이트-grub2
GRUB 2 구성을 업데이트해야 합니다.
다음 명령을 사용하여 GRUB 부트로더를 다시 설치해야 할 수도 있습니다.
$ 스도 그럽 설치 / 개발자 / sda여기 /dev/sda GRUB 부트로더를 설치하려는 하드 드라이브입니다. 일반적으로 루트 파티션이 있는 하드 드라이브입니다.
이제 모든 것이 작동하므로 정상적으로 부팅할 수 있습니다. 여전히 수정해야 할 사항이 있으면 지금 바로 할 수 있습니다.
추가 모듈 로드:
때때로 GRUB 명령줄 인터페이스 프롬프트는 땅벌레 구조> 대신에
애벌레 >이 경우 2개의 추가 명령을 실행해야 합니다. 기본적으로 로드되지 않은 GRUB 모듈을 로드하는 데 사용됩니다. 그러나 시스템을 부팅하는 것은 매우 중요합니다.
명령은 다음과 같습니다.
땅벌레 구조 > 인스모드 노멀땅벌레 구조 > 인스모드 리눅스
유용한 GRUB 복구 명령:
이 섹션에서는 부팅 문제를 해결하기 위해 필요할 수 있는 몇 가지 일반적인 GRUB 복구 명령을 나열할 것입니다.
호출기=1로 설정 – 명령의 출력이 화면에 맞지 않을 정도로 길면 이 명령은 다음과 같이 호출기에 출력을 표시합니다. 더 적은 리눅스 터미널에서.
lsmod – 로드된 모든 GRUB 모듈을 나열합니다.
고양이 – 파일 읽기에 사용됩니다.
USB – 시스템에 연결된 모든 USB 장치를 나열합니다.
분명한 – GRUB 명령줄 창에서 모든 텍스트를 지웁니다.
구성 파일 grub.cfg_filePath – 추가할 수 있습니다. grub.cfg 이 명령을 사용하여 파일.
인스모드 – GRUB 모듈을 로드합니다.
lspci – 연결된 모든 PCI 장치를 나열합니다.
ls – 컴퓨터의 파일, 디렉토리 및 블록 장치를 나열합니다.
이 문서는 Ubuntu 18.04 LTS를 대상으로 하지만 GRUB 부트로더를 사용하는 다른 최신 Linux 배포판에서도 작동해야 합니다. 이 기사를 읽어 주셔서 감사합니다.