Ubuntu GRUB 복구: 라이브 USB를 이용한 GRUB 재설치

GRUB이 없거나 손상되었거나 다른 부트로더로 교체되어 Ubuntu가 더 이상 부팅되지 않는 경우, 일반적으로 운영 체제를 다시 설치하지 않고도 Ubuntu 라이브 USB를 사용하여 복구할 수 있습니다. 가장 안전한 수동 방법은 라이브 세션으로 부팅하여 설치된 시스템을 마운트하고, 해당 시스템에 진입한 다음 chroot, GRUB을 다시 설치하고 부팅 메뉴를 다시 생성하는 것입니다.

중요: 아래 장치 이름은 예시입니다. /dev/sda2또는 와 같은 파티션 이름은 해당 파티션 /dev/nvme0n1p3이 Ubuntu 설치에 속하는지 확인하기 전까지 복사하지 마십시오. 잘못된 디스크를 선택하면 다른 운영 체제가 부팅되지 않을 수 있습니다.

GRUB을 수리하기 전에

문제가 발생한 컴퓨터에서 부팅할 수 있는 Ubuntu 라이브 USB가 필요합니다. Canonical의 최신 부팅 가능한 USB 관련 문서에서는 8GB 이상의 USB 드라이브를 권장하며, 이미지를 기록하면 드라이브의 데이터가 모두 지워진다고 경고합니다. 이미 작동하는 Ubuntu 설치 미디어가 있는 경우, 해당 미디어를 재사용할 수 있습니다.

이 가이드는 접근 가능한 Linux 파티션이 있는 표준 Ubuntu 설치를 기준으로 작성되었습니다. 전체 디스크 암호화, 복잡한 LVM, 소프트웨어 RAID 또는 특이한 Btrfs 레이아웃을 사용하는 경우 chroot 절차 전에 추가적인 잠금 해제 또는 마운트 단계가 필요할 수 있습니다.

1. USB로 부팅하고 "Ubuntu 체험하기"를 선택하세요.

Ubuntu USB로 컴퓨터를 부팅하고 설치 대신 "Ubuntu 체험하기"를 선택하세요. Canonical의 Ubuntu Desktop 설치 가이드에 따르면 "Ubuntu 체험하기" 옵션은 내장 드라이브에 설치하지 않고 라이브 환경을 시작하는 옵션입니다.

UEFI 시스템의 경우, 가능하면 USB를 UEFI 모드로 부팅하십시오. 다음 명령으로 라이브 세션을 확인할 수 있습니다.

[ -d /sys/firmware/efi ] && echo UEFI || echo BIOS

우분투의 UEFI 문서에서는 특히 듀얼 부팅 PC에서 펌웨어 모드가 설치된 시스템과 일치해야 하는 이유를 설명합니다.

"Ubuntu 체험하기"가 선택된 Ubuntu 라이브 세션 시작 화면입니다.
라이브 USB로 부팅하여 "Ubuntu 체험" 세션에 들어가면 시스템을 재설치하지 않고도 설치된 시스템을 복구할 수 있습니다.

2. Ubuntu 및 EFI 파티션을 확인합니다.

Ctrl+Alt+T 를 눌러 터미널을 열고 파일 시스템 목록을 확인하세요.

lsblk -f

Ubuntu 설치 파일이 있는 Linux 루트 파티션을 찾으세요. 일반적으로 `.js`로 포맷되어 있습니다 ext4. UEFI 설치의 경우, EFI 시스템 파티션도 확인하세요. 이 파티션은 보통 작은 FAT32 형식의 `/` vfat파티션입니다. 별도의 파티션이 있는 경우 /boot, 그 이름도 기록해 두세요.

EFI, ext4 Ubuntu, 스왑 및 라이브 USB 파일 시스템에서 lsblk -f 명령어를 실행하는 Ubuntu 터미널 화면입니다.
lsblk -f우분투 루트 파일 시스템을 EFI 시스템 파티션 및 라이브 USB와 구분하는 데 도움이 됩니다.

3. 우분투를 마운트하고 chroot 환경으로 들어갑니다.

예시로 제시된 장치 이름을 확인한 파티션 이름으로 바꾸세요. 먼저 우분투 루트 파일 시스템을 마운트합니다.

sudo mount /dev/ROOT_PARTITION /mnt

설치 /boot에 별도의 파티션이 있는 경우 해당 파티션을 마운트하십시오 /mnt/boot. UEFI의 경우 EFI 시스템 파티션을 마운트하십시오.

sudo mkdir -p /mnt/boot/efi
sudo mount /dev/EFI_PARTITION /mnt/boot/efi

실행 중인 시스템의 런타임 파일 시스템을 설치된 시스템에 바인딩한 다음 시스템에 접속합니다.

for i in /dev /dev/pts /proc /sys /run; do sudo mount --bind "$i" "/mnt$i"; done
sudo chroot /mnt

이제 명령이 설치된 우분투 시스템을 대상으로 실행됨을 나타내는 프롬프트로 변경될 것입니다.

우분투 터미널에서 루트 및 EFI 파티션을 마운트하고, 시스템 디렉터리를 바인드 마운트하고, chroot 환경으로 진입하는 방법
설치된 파일 시스템을 마운트한 후, chrootGRUB 도구가 라이브 USB가 아닌 Ubuntu 설치본에서 작동하도록 합니다.

4. GRUB을 재설치하고 메뉴를 다시 구성합니다.

UEFI 시스템과 기존 BIOS 시스템에서 명령어가 약간 다릅니다.

부팅 모드GRUB 설치 명령
UEFIgrub-install
레거시 BIOSgrub-install /dev/DISK

레거시 BIOS의 경우, 번호가 매겨진 파티션이 아닌 전체 디스크 (예: /dev/sda또는 ) 를 사용하십시오 /dev/nvme0n1. UEFI의 경우, EFI 시스템 파티션이 이미 에 마운트되어 있어야 합니다 . 이는 현재 GNU GRUB 설명서/boot/efi 에 설명된 설치 동작과 일치합니다 .

GRUB 설치가 성공적으로 완료되면 Ubuntu의 부팅 메뉴를 다시 생성하십시오.

update-grub

우분투에서는 Ubuntu man 페이지 에 설명된 대로 update-grub를 생성하는 래퍼가 있습니다 . 작업이 완료될 때까지 기다린 후 최소한 하나의 Linux 커널을 찾았는지 확인하십시오./boot/grub/grub.cfg

grub-install 및 update-grub 명령이 성공적으로 완료된 Ubuntu 터미널 화면입니다.
복구가 성공적으로 완료되면 GRUB이 설치되고 설치된 Linux 커널이 포함된 새 구성 파일이 생성됩니다.

5. chroot 환경에서 나와 재부팅합니다.

설치된 시스템을 종료하고, 복구 환경을 마운트 해제한 다음 시스템을 다시 시작하십시오.

exit
sudo umount -R /mnt
sudo reboot

컴퓨터가 재시작되면 라이브 USB를 제거하십시오. 그러면 GRUB이 내장 드라이브에서 다시 로드될 것입니다.

GRUB이 여전히 나타나지 않으면

  • 펌웨어 부팅 순서를 확인하십시오. UEFI PC의 경우 Ubuntu 항목 또는 올바른 내부 드라이브가 다른 부팅 항목보다 앞에 있는지 확인하십시오.
  • 라이브 USB 부팅 모드를 확인하십시오. 설치된 Ubuntu 시스템이 UEFI 방식이지만 복구 USB가 레거시 모드로 시작된 경우, USB를 명시적으로 UEFI 모드로 재부팅한 후 복구를 다시 수행하십시오.
  • 파티션을 다시 확인하십시오. 잘못된 Linux 루트 또는 EFI 파티션을 마운트하는 것은 복구가 성공적으로 보이지만 부팅되지 않는 가장 일반적인 원인 중 하나입니다.
  • Secure Boot를 자동으로 비활성화하지 마십시오. 지원되는 Ubuntu 릴리스는 서명된 shim 및 GRUB 구성 요소를 사용합니다. Secure Boot 변경은 문제 해결의 일환으로 간주하고, 첫 번째 복구 단계로 사용하지 마십시오.
  • 디스크 오류에 주의하십시오. 반복적인 I/O 오류, 파티션 누락 또는 파일 시스템 손상은 GRUB 자체의 문제가 아니라 저장 장치 문제일 가능성이 높습니다. 추가 변경 작업을 진행하기 전에 복구 가능한 데이터를 백업하십시오.

재부팅 후 시스템이 우분투에 진입하면 GRUB 복구가 완료된 것이므로 우분투를 다시 설치하거나 타사 부팅 복구 소프트웨어를 설치할 필요가 없습니다.

댓글 남기기

손실된 파티션과 하드 디스크 데이터를 안전하게 복구하는 방법

손실된 파티션과 하드 디스크 데이터를 안전하게 복구하는 방법

TestDisk와 PhotoRec을 사용하여 손실된 파티션과 파일을 복구하는 방법을 알아보세요. 원본 드라이브를 보호하고 안전하게 스캔한 다음 복구된 데이터를 다른 디스크에 저장하세요.

리눅스 데스크톱에서 QR 코드를 스캔하는 방법

리눅스 데스크톱에서 QR 코드를 스캔하는 방법

웹캠이나 이미지 파일을 사용하여 CoBang으로 Linux에서 QR 코드를 스캔하세요. Flatpak 카메라 접근 관련 설치 옵션, 설정 단계 및 문제 해결 방법을 참조하세요.

Cameractrls를 사용하여 Linux에서 웹캠 설정을 변경하는 방법

Cameractrls를 사용하여 Linux에서 웹캠 설정을 변경하는 방법

Cameractrls를 사용하여 Linux에서 웹캠 설정을 변경하세요. 노출, 색상, 깜빡임 감소 및 기타 지원되는 제어 기능을 조정하고 호환되는 비디오 모드를 확인하세요.

Linux에 PhpStorm을 설치하는 방법: Toolbox, Tar.gz, Snap 및 AUR

Linux에 PhpStorm을 설치하는 방법: Toolbox, Tar.gz, Snap 및 AUR

Linux에 PhpStorm을 설치하려면 JetBrains Toolbox 또는 독립 실행형 tar.gz 아카이브를 사용하세요. Snap 및 Arch AUR 옵션도 제공됩니다. Java는 이미 포함되어 있습니다.

리눅스에 Cisco Packet Tracer를 설치하는 방법

리눅스에 Cisco Packet Tracer를 설치하는 방법

Cisco Packet Tracer 9.0.1 for Ubuntu 64비트 버전을 다운로드하고, APT를 사용하여 DEB 패키지를 설치한 다음, 터미널에서 라이선스에 동의하고 로그인하여 실습을 시작하십시오.

XFCE 4에서 듀얼 패널을 설정하는 방법

XFCE 4에서 듀얼 패널을 설정하는 방법

각 디스플레이마다 별도의 XFCE 4 패널을 생성하고, 두 번째 패널을 올바른 출력에 할당하고, 위치와 크기를 조정한 다음, 필요한 실행기와 상태 항목을 추가합니다.

리눅스에서 CD-ROM을 ISO 파일로 백업하는 방법

리눅스에서 CD-ROM을 ISO 파일로 백업하는 방법

GNOME Disks 또는 dd 명령어를 사용하여 Linux에서 CD-ROM ISO 파일을 생성합니다. 광학 드라이브를 식별하고, 복사 과정을 모니터링하고, 이미지 유효성을 검사하고, 손상된 디스크나 오디오 디스크에 다른 도구가 필요한 경우를 알 수 있습니다.

리눅스에서 GIMP를 사용하여 이미지를 잘라내는 방법

리눅스에서 GIMP를 사용하여 이미지를 잘라내는 방법

GIMP를 사용하여 Linux에서 사진 배경 제거하기: 피사체를 따라 그리고, 선택한 배경을 삭제하고, 투명도를 유지한 다음, 재사용 가능한 PNG 파일로 내보낼 수 있습니다.

FlightGear 무료 다운로드: 공식 설치 가이드

FlightGear 무료 다운로드: 공식 설치 가이드

FlightGear를 공식 사이트에서 무료로 다운로드하세요. Windows, macOS, Linux 패키지를 비교하고, 데이터 파일을 설치한 후 첫 비행을 시작하세요.

Google Tasks 데스크톱 애플리케이션: 컴퓨터에서 사용하는 방법

Google Tasks 데스크톱 애플리케이션: 컴퓨터에서 사용하는 방법

브라우저에서 Google Tasks를 열거나, Chrome 바로가기 또는 앱 스타일 실행을 추가하고, 캘린더 및 Gmail을 통해 날짜별 할 일을 관리하세요.