리눅스 부트로더를 USB 드라이브에 백업하는 방법

GRUB 설정과 부팅 파일을 USB에 저장하세요. UEFI 시스템의 경우 EFI 파일과 펌웨어 항목 목록도 저장해야 합니다. 이는 전체 디스크 이미지가 아니라 복구 참조용 파일입니다. 시작 코드가 누락된 경우 Linux 복구 미디어를 사용하여 GRUB을 다시 설치하여 실제 부팅 레이아웃을 구성하세요.

GRUB 백업이 포함하는 내용

배포판은 일반적으로 /etc/default/grub` / /etc/grub.d/etc/ config /boot/grub.../boot/grub2grub.cfg

GRUB 백업 파일을 USB 드라이브에 저장하세요.

1. USB를 마운트하고 부팅 모드를 확인합니다.

USB 드라이브를 연결하고 파일 관리자에서 열어 마운트 위치를 확인하세요. 그런 다음 디스크 목록을 표시하고 현재 시스템이 어떻게 부팅되었는지 확인하십시오.

lsblk -o NAME,SIZE,FSTYPE,LABEL,UUID,MOUNTPOINTS
findmnt /
if [ -d /sys/firmware/efi ]; then echo UEFI; else echo BIOS; fi
Linux 파일 관리자에서 백업 폴더 및 기타 파일이 있는 마운트된 USB 드라이브를 보여줍니다.
마운트된 USB 볼륨이 백업 파일의 저장 위치입니다.

크기, 파일 시스템, 레이블 및 마운트 지점을 사용하여 USB 디스크와 내장 디스크를 구분하세요. 이름은 /dev/sda변경될 수 있으며, 루트 파티션이 항상 BIOS 부트로더의 대상 디스크는 아닙니다.

lsblk 명령어를 실행한 터미널 출력 결과입니다. EFI 파티션, Linux 루트 파티션, 그리고 별도의 USB 드라이브가 나열되어 있습니다.
장치 세부 정보를 사용하여 ESP와 이동식 드라이브를 찾으십시오.

UEFI 시스템에서는 출력에서 ​​EFI 시스템 파티션(ESP)을 확인하십시오. ESP는 대개 FAT32 형식이며, 마운트 지점은 /boot/efi, /efi, 또는 와 같습니다 /boot. 일반적으로 ESP에는 EFI디렉터리가 포함되어 있습니다.

2. GRUB 설정 및 지원 파일 아카이브

예시로 제시된 USB 경로를 찾은 마운트 지점으로 바꾸세요. 경로에 공백이 포함되어 있으면 따옴표로 묶어주세요.

USB="/media/$USER/USB_LABEL"
BACKUP="$USB/grub-backup"
sudo mkdir -p "$BACKUP"

paths=(etc/default/grub etc/grub.d)
for p in etc/default/grub.d boot/grub boot/grub2; do
  [ ! -e "/$p" ] || paths+=("$p")
done
sudo tar -C / -czf "$BACKUP/grub-files.tar.gz" "${paths[@]}"
리눅스 터미널 화면에 GRUB 설정 파일이 USB 백업 폴더로 복사되는 모습이 표시됩니다.
GRUB 설정, 메뉴 스크립트 및 기존 부팅 파일을 함께 저장하세요.

이 아카이브는 USB 파일 시스템에서도 Linux 권한을 유지합니다. 또한 이 설치에 포함된 선택적 GRUB 디렉터리도 포함합니다.

3. UEFI에서 EFI 파일과 펌웨어 항목을 저장합니다.

ESP지정한 마운트 지점으로 설정하십시오 . 이 예에서는 를 사용합니다 /boot/efi. 아카이브에는 해당 EFI디렉터리를 공유하는 다른 공급업체의 파일도 포함됩니다.

ESP="/boot/efi"
sudo tar -C "$ESP" -czf "$BACKUP/esp-files.tar.gz" EFI
sudo efibootmgr -v | sudo tee "$BACKUP/uefi-boot-entries.txt" >/dev/null
Linux 파일 관리자에서 BOOT 폴더와 운영 체제 공급업체 폴더가 포함된 EFI 시스템 파티션을 보여줍니다.
공유 ESP에는 둘 이상의 운영 체제용 부팅 파일이 포함될 수 있습니다.
GRUB 및 EFI 아카이브와 UEFI 부팅 항목이 포함된 텍스트 파일이 들어 있는 USB 백업 폴더
펌웨어 항목 목록을 저장된 부팅 파일 옆에 보관하십시오.

efibootmgr -v부팅 항목 세부 정보를 출력하며, 모든 펌웨어 설정을 출력하는 것은 아닙니다. BIOS만 사용하는 시스템에서는 이 명령을 건너뛰십시오.

4. 백업을 확인하고 드라이브를 꺼냅니다.

tar -tzf "$BACKUP/grub-files.tar.gz" | head
[ ! -f "$BACKUP/esp-files.tar.gz" ] || tar -tzf "$BACKUP/esp-files.tar.gz" | head
ls -lh "$BACKUP"
sync

압축 파일 이름과 크기가 적절한지 확인한 후, USB를 분리하기 전에 USB 드라이브에서 파일을 꺼내십시오. 부팅 미디어를 생성하는 동안 지워질 수 있는 라이브 설치 프로그램 USB와는 별도로 백업 파일을 보관하십시오.

부팅 실패 시 백업을 사용하십시오.

5. 설치된 시스템의 부팅 모드에서 라이브 세션을 시작합니다.

가능하다면 동일한 UEFI 또는 레거시 BIOS 모드로 Linux 라이브 또는 복구 USB를 부팅하십시오. 루트, 별도 /boot파티션 및 ESP를 다시 확인하십시오. 장치 이름은 다를 수 있습니다.

라이브 세션 옵션이 선택된 일반적인 Linux 라이브 USB 부팅 메뉴
실시간 세션을 통해 설치 상태를 점검하고 수리하는 데 필요한 도구를 제공합니다.

설치된 시스템을 와 같은 임시 위치에 마운트하고 /mnt/target, 각 부트 파티션을 해당 경로에 마운트합니다. 정확한 파티션 및 chroot 명령은 사용 중인 배포판의 지침을 따르십시오.

라이브 리눅스 터미널에서 루트 및 EFI 파티션을 마운트하고 chroot를 사용하여 설치된 시스템에 진입합니다.
chroot 환경에서 복구 명령을 실행하기 전에 설치된 파티션을 마운트하십시오.

6. 설정을 선택적으로 복원한 다음 GRUB을 복구합니다.

설치된 루트 파티션과 별도의 /boot파티션을 마운트한 후에는 해당 설치 및 릴리스에서 가져온 아카이브인 경우에만 복원하십시오.

sudo tar -xzf "/path/to/grub-backup/grub-files.tar.gz" -C /mnt/target

예시 경로를 USB의 실제 위치로 바꾸십시오. 공유 ESP에 EFI 아카이브를 압축 해제하지 마십시오. 배포판의 재설치 단계를 따라 부팅 파일과 펌웨어 항목을 다시 생성하십시오. 보안 부팅을 사용하려면 서명된 shim 및 GRUB 패키지가 필요할 수 있습니다.

chroot 환경에서 배포판의 명령줄과 출력 경로를 사용하여 메뉴를 다시 생성하십시오. Debian과 Ubuntu는 일반적으로 `<configuration>`을 사용하며 update-grub, 다른 배포판은 `<configuration>` grub-mkconfig또는 grub2-mkconfig`<configuration>`을 사용합니다. 시작 코드가 누락된 경우, 올바른 BIOS 디스크 또는 UEFI 파티션에 맞게 GRUB을 다시 설치하십시오. 실행 전에 대상을 확인하십시오 grub-install.

대상 chroot 환경 내부의 터미널에서 GRUB 메뉴를 재생성하고 발견된 Linux 커널을 보고합니다.
설정을 복원한 후 복구된 설치본에서 메뉴를 다시 생성하십시오.

처음 512바이트만 복원하면 안 될까요?

단일 섹터 복사본을 사용하면 BIOS GRUB의 내장 이미지 또는 BIOS 부팅 파티션이 누락됩니다. 첫 번째 섹터에는 파티션 테이블 데이터도 포함되어 있으므로 이전 복사본으로 복원하면 변경된 디스크가 손상될 수 있습니다. UEFI 파일과 펌웨어 항목은 별개입니다. 이 아카이브는 복구 정보로 사용하고, 완벽한 롤백을 위해 테스트를 거친 전체 디스크 이미지를 보관하십시오.

공식 참조

댓글 남기기

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

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

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을 통해 날짜별 할 일을 관리하세요.