AI 탐구노트

[우분투] 우분투 24.04 부팅 오류 해결 방법 본문

기술 팁

[우분투] 우분투 24.04 부팅 오류 해결 방법

42morrow 2025. 4. 8. 09:58

 

우분투를 사용하다가 부팅이 되지 않는 오류가 가끔 발생합니다. 정상적으로 사용했을 때가 아니라 이래저래 뭔가를 바꿔보는 시행착오를 하다가 발생하는 경우가 대부분이죠. 제 경우는 특히 그래픽카드 드라이버 관련 사항을 건드리면서 맞딱뜨리게 되는 경우가 많았습니다. AI 사용을 위해 CUDA 환경 구성을 이 버전 저 버전을 막 굴리다 보니 그렇게 되더라구요.

 

어찌됐건... 그럴 때마다 이유를 모르고 맨땅에 헤딩하며 복구에 전념하기 일쑤였는데, 한번은 정리를 해놓고 가야할 것 같아서 조사를 해 봤습니다. 


 

Ubuntu 24.04 부팅 실패 원인

워낙 다양한 원인이 가능합니다. 이건 우분투라서 그런 것도 아니고 버전 문제도 아니죠. 윈도우에서도 가끔씩 겪게 되는 일이니 말입니다. 대략적인 부팅 실패 원인은 다음과 같은 것들이 있었습니다. 제 경우에도 한번씩은 겪어본 원인 같아서 공감이 갔습니다. 커널 패닉은 아주 예전 버전에서는 흔히 볼 수 있는 문제였지만 최근들어서는 거의 겪은 적이 없고 주로 GRUB 손상이나 그래픽 드라이버 충돌이 많았던 것 같습니다. 

 

원인 구분 설명 주요 증상 해결 방법 요약
GRUB(부트로더) 손상 GRUB이 덮여쓰기되거나 손상됨 grub rescue> 화면,
GRUB 미표시
GRUB 재설치
파일 시스템 오류 전원 차단, 디스크 오류 등으로
파티션 손상
initramfs 진입,
부팅 중 멈춤
fsck로 디스크 검사 및 복구
커널 업데이트 문제 새 커널과 드라이버 충돌
또는 커널 패닉 발생
부팅 중 에러 메시지
또는 커널 패닉
이전 커널로 부팅
그래픽 드라이버 충돌 NVIDIA/AMD 드라이버 문제 검은 화면,
로그인 화면 멈춤
nomodeset 부팅,
드라이버 재설치
UEFI/BIOS 설정 문제 Secure Boot, UEFI 설정 변경 부팅 항목 없음,
GRUB 안 뜸
BIOS 설정 확인 및 초기화
EFI/부트 파티션 손상 파티션 삭제 또는 손상 GRUB 부팅 실패,
부트로더 찾지 못함
EFI 마운트 및 GRUB 재설치
암호화 파티션 문제 LUKS 등의 복호화 실패 암호 입력 후 정지 수동 복호화 또는 키파일 확인
외부 장치 충돌 USB, SD카드 등이 부팅을 방해함 부팅 실패
또는 GRUB 미표시
외부 장치 제거 후 부팅
패키지/의존성 손상 강제 종료, 업데이트 실패 등 GUI 미출력,
로그인 실패
Recovery 모드
→ dpkg 복구 실행
하드웨어 문제 디스크 불량, 메모리 손상 등 무작위 에러,
부팅 실패
S.M.A.R.T 확인,
메모리 검사 등

 


Ubuntu 24.04 오류 원인 분석 방법

일반적으로는 로그를 이용해 어떤 서비스나 커널 단계에서 오류가 발생했는지 분석하게 됩니다. 하지만 부팅 자체가 안 되면 로그를 볼 수 있는 방법도 없겠죠. 이럴 경우에는 맨 마지막에 설명하게 될 설치 USB를 이용해 부팅한 후 주 컴퓨터의 로그를 확인하는 방법으로 접근할 수도 있습니다. 이때 확인해야 하는 로그 파일은 다음과 같습니다. 

  • /var/log/boot.log
  •  /var/log/syslog
  • journalctl -xb (chroot 또는 TTY 진입 시 가능)

Ubuntu 24.04 부팅 실패 시 복구 방법

일반적인 접근 방법입니다. 상황에 따라 진행하시면 됩니다. 

 

1. GRUB 메뉴 진입 및 복구

  • 증상 : 부팅 시 검은 화면 또는 GRUB 메뉴가 보이지 않음
  • 해결 방법 :
    • 부팅 시 부트 옵션 선택 창에서 Advanced options for Ubuntu 선택 → (recovery mode) 항목으로 진입합니다. 
    • 복구 모드에서 제공하는 fsck, dpkg, grub, network, root 등의 복구 메뉴를 사용할 수 있습니다. 

2. fsck로 파일 시스템 점검

  • 증상 : 파일 시스템 손상으로 부팅 불가
  • 해결 방법 :
    • 복구 모드에서 fsck 실행
sudo fsck {루트 파티션}
  •  

3. GRUB 부트로더 재설치

  • 증상 : GRUB 부팅 항목이 손상되었거나 사라짐
  • 해결 방법 : 라이브 USB로 부팅 후 터미널에서 다음 실행
sudo mount {루트 파티션} /mnt
sudo grub-install --root-directory=/mnt {디스크}
sudo update-grub

4. initramfs 복구

  • 증상 : 부팅 중 BusyBox 또는 initramfs 프롬프트에서 멈춤
    • 참고) initramfs (initial RAM File system)은 리눅스 커널이 부팅될 때 사용하는 임시 루트 파일 시스템으로 커널이 디스크의 실제 루트 파일 시스템을 마운트하기 전에 필요한 필수 파일만을 담고 있습니다. 즉, initramfs을 메모리에 올려 임시 환경을 구성한 후 디스크에 있는 루트 파티션을 마운트 하고 시스템을 넘겨주는 역할을 하는 것입니다. 
  • 해결 방법 :
    • fsck로 루트 디스크 검사
    • 필요한 경우 update-initramfs 수행 (라이브 환경에서 chroot 진입 후 가능)

5. 커널 문제로 인한 부팅 실패

  • 증상 : 최신 커널에서만 부팅 실패하는 경우
  • 해결 방법 :
    • GRUB 메뉴에서 이전 커널 선택하여 부팅 (이전 버전 커널로 동작하므로 간단히 끝날 수도 있습니다. ^^;)
    • 부팅 성공 시 문제 커널 제거
sudo apt remove linux-image-<문제커널버전>

 

6. 디스플레이/그래픽 드라이버 문제

  • 증상 : 부팅은 되나 화면이 검은 상태로 멈춤 현상. 일명 블랙스크린 무한부팅이라고도 하죠... GUI 기반 부팅이 되지 않는 것으로 터미널 접근은 가능한 상황입니다. 
  • 해결 방법 :
    • Ctrl + Alt + F3 등으로 터미널 진입
    • NVIDIA/AMD 드라이버 재설치 또는 nomodeset GRUB 옵션으로 부팅 시도 (참고: nomodeset은 리눅스 부팅 시 그래픽 관련 문제를 피하기 위해 사용하는 GRUB 부팅 파라미터로 강제로 기본 VESA 드라이버를 사용하도록 합니다)
    • GRUB에서 e 키 → linux 라인에 nomodeset 관련 부분 추가 (아래 초록색 표시)
      예) linux ... quiet splash nomodeset

7. chroot 환경에서 복구

  • 상황 : 루트 파티션을 마운트하고 OS 환경 진입 필요
  • 방법 :
    • 이후 필요한 복구 작업 수행 (apt update, update-grub, reinstall, 등)
sudo mount {루트 파티션} /mnt
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt

설치 USB를 이용한 우분투 부트 영역 복구 방법

지금부터는 최대한 간단하게 문제를 해결하는 방법입니다.(적어도 저한테는 많은 시행착오 끝에 정착한 결론입니다. ^^;) 우분투 설치 USB를 만들고 제공되는 GUI 기반 부트 영역 복구 도구 (boot-repair)를 사용하는 방법입니다. 

 

1.준비 사항

  • Ubuntu 24.04 이미지 다운로드 (링크)
  • 설치 USB 생성 : 윈도우에서는 rufus (링크)를 이용하면 됩니다. 

2.부트 USB로 부팅 

  • 부팅 옵션에서 'Try Ubuntu' 선택  (미설치)
  • 부팅 후 터미널에서 필요 프로그램 설치
sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt update
sudo apt install -y boot-repair
boot-repair

 

프로그램 실행 후 아래 그림과 같이 창이 뜨면  'Recommanded repair' 선택하고 진행합니다. 

그림 : Boot Repair 프로그램 화면 : 선택은 위 것으로