부팅되지 않는 Linux PC를 수정하는 방법

리눅스 PC가 갑자기 켜지지 않아 당황스러우신가요? PC가 부팅되지 않는 문제는 해결하기가 까다롭습니다. 우선, 운영체제나 하드웨어 자체에서 오류 검사를 진행할 수 없는 상황에 놓이게 됩니다. 하지만 먼저 모든 연결이 올바르게 되어 있는지 확인하는 것이 중요합니다. PC가 부팅되지 않는다고 해서 PC 자체에 심각한 문제가 생겼거나 운영체제를 재설치해야 하는 것은 아닙니다. 성급하게 리눅스를 다시 설치하기 전에, 이 가이드에서 제시하는 방법들을 시도해 보세요.

본 튜토리얼에서는 디스크 이미지를 다운로드하고 USB에 굽는 과정이 포함되어 있으므로, 작동하는 다른 PC가 필요합니다.

Super Grub 디스크를 이용한 Grub 복구

부트로더에 문제가 생긴 리눅스 PC를 복구하는 가장 쉬운 방법 중 하나는 Grub 복구 프롬프트를 직접 조작하지 않고, Super Grub Disk를 사용하는 것입니다. 다른 컴퓨터에서 Super Grub Disk를 다운로드하거나 미리 준비해 두세요. 이 디스크는 컴퓨터에 설치된 모든 운영체제를 감지하여 부팅할 수 있도록 도와주는 라이브 디스크입니다. 특히 Grub이 갑자기 정상적으로 로드되지 않을 때 매우 유용합니다.

먼저, 디스크 이미지를 다운로드하세요. 그 다음, Super Grub Disk를 CD/DVD에 굽거나 부팅 가능한 USB 플래시 드라이브를 만듭니다. USB 이미징 도구로는 사용하기 쉽고 다양한 플랫폼에서 작동하는 Etcher를 추천합니다.

Super Grub Disk를 준비했다면, 이제 PC를 켜서 해당 디스크로 부팅해야 합니다. PC의 BIOS 설정으로 들어가서 부팅 순서를 변경하여 USB 스틱이나 구운 CD/DVD를 먼저 로드하도록 설정하세요.

Super Grub Disk가 로드되면 메뉴가 나타납니다. 여기서 “부팅 방법 감지 및 표시” 옵션을 선택하고 키보드의 엔터 키를 누르세요. 그러면 라이브 디스크가 로드 가능한 모든 운영체제를 검색합니다.

검색 결과로 다양한 운영체제 목록이 나타납니다. 화살표 키를 사용하여 부팅이 안 되던 운영체제를 선택하세요.

참고: Super Grub Disk는 Grub 설정 파일 대신 부팅 이미지와 같은 파일을 찾기 때문에 손상된 리눅스 배포판도 로드할 수 있습니다. 하지만 드물게 이 도구로도 손상된 운영체제를 로드할 수 없는 경우가 있습니다. 이럴 때는 운영체제를 재설치하거나 라이브 디스크 내의 다른 옵션을 시도해 보세요.

Grub 재설치하기

Super Grub Disk의 도움으로 Grub 오류에도 불구하고 리눅스 설치를 다시 로드하는 데 성공했다면, 이제 Grub을 다시 설치하여 정상적인 부팅 환경을 만들어야 합니다.

BIOS/MBR 스타일 파티션 레이아웃

하드 드라이브의 마스터 부트 레코드(MBR)에 Grub을 재설치하는 명령어는 다음과 같습니다.

sudo grub-install --recheck --target=i386-pc /dev/sda

다음으로, Grub 설정 파일을 다시 생성합니다. 이 과정은 부트로더가 변경 사항을 인식하도록 하기 위해 반드시 필요합니다.

sudo grub-mkconfig -o /boot/grub/grub.cfg

GPT/EFI 스타일 파티션 레이아웃

grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=grub
sudo grub-mkconfig -o /boot/grub/grub.cfg

USB 드라이브에 Grub을 설치하여 비상 복구하기

Grub이 자주 고장 나는 것은 아니지만, 한 번 문제가 생기면 많은 시간을 낭비하게 됩니다. 따라서 만약의 사태에 대비하여 복구 프로세스를 항상 준비해두는 것이 좋습니다. Super Grub Disk를 사용하는 것이 좋은 방법이지만, 다른 대안도 있습니다.

리눅스는 매우 유연한 운영체제이기 때문에 Grub 부트로더를 플래시 드라이브에 직접 설치할 수도 있습니다. 이렇게 하면 하드 드라이브의 부트로더로 부팅이 안 될 때 USB 드라이브를 연결하여 부팅할 수 있습니다. 설정 방법은 다음과 같습니다.

주의: 플래시 드라이브는 Fat32 포맷이어야 합니다!

먼저, /mnt 디렉토리에 usb 폴더를 만듭니다.

mkdir -p /mnt/usb

lsblk 명령을 사용하여 USB 드라이브를 찾습니다. 이 튜토리얼에서는 플래시 드라이브를 /dev/sdc로 가정합니다. 필요한 경우 다른 이름으로 설정할 수 있습니다.

USB 디스크를 /mnt/usb 폴더에 마운트합니다.

mount /dev/sdc1 /mnt/usb

이제 USB 플래시 드라이브에 Grub을 설치합니다.

grub-install --target=i386-pc --debug --boot-directory=/mnt/usb/boot /dev/sdc

마지막으로, USB 드라이브의 설정 파일을 생성합니다.

grub-mkconfig -o /mnt/usb/boot/grub/grub.cfg

Rescatux 활용

위에서 제시된 방법이 모두 효과가 없나요? 걱정하지 마세요. 리눅스에서 손상된 Grub 설치를 복구하는 방법은 더 있습니다. Rescatux를 사용해 보세요. Super Grub Disk와 마찬가지로 라이브 Grub 부트로더 복구 디스크입니다. Rescatux는 부팅 방법을 자동으로 감지하고 사용자가 직접 부팅하는 대신, Grub/Grub2 문제를 자동으로 수정해주는 기능을 제공합니다.

이 도구는 명령줄을 통해 Grub을 다시 설치하는 것이 어렵다고 느끼는 사용자에게 적합합니다. Rescatux 디스크 이미지를 다운로드하고, 앞서 설명한 Super Grub Disk 설치 방법과 동일하게 라이브 디스크를 만드세요.

또한 다른 모든 방법이 실패할 경우 Grub 명령줄을 사용하여 수동으로 부팅하는 방법을 배워보는 것도 좋습니다. GNU grub 매뉴얼을 참고하세요. 복잡하고 어려운 과정이 될 수 있으며, Super Grub Disk가 더 쉽게 동일한 작업을 수행할 수 있지만, 다른 모든 방법이 안 될 경우에는 도움이 될 수 있습니다.

결론

Grub은 오랫동안 사용되어 왔지만 그만큼 많은 문제점을 안고 있습니다. 때로는 부팅에 실패하기도 하고, 설정 파일이 손상되거나 전체 로드를 거부하기도 합니다. 하지만 이 가이드에서 제시된 팁과 방법들을 통해 대부분의 부팅되지 않는 리눅스 PC를 복구할 수 있기를 바랍니다.