기술 가이드

RAID로 부팅 가능 시스템 복제 및 fstab/GRUB 업데이트 가이드

5 min read 시스템 관리 업데이트됨 23 Sep 2025
RAID로 부팅 가능한 시스템 복제 및 fstab/GRUB 업데이트
RAID로 부팅 가능한 시스템 복제 및 fstab/GRUB 업데이트

개요

이 문서는 이미 RAID를 사용해 파일시스템을 복제한 후, 새 RAID 복사본으로부터 시스템을 부팅하도록 설정하고, 이후 오래된 디스크를 RAID 구성에 다시 추가하여 동기화하는 절차를 설명합니다. 주요 작업은 UUID 수집, /etc/fstab 업데이트, GRUB 설정 변경, 그리고 두 번째 디스크에 부트레코드를 설치하는 것입니다.

정의: UUID — 파일시스템을 고유하게 식별하는 문자열입니다.

중요: 모든 명령은 루트 권한으로 실행하세요. 실수로 잘못된 디스크에 조작하면 데이터 손실이 발생합니다.

단계별 절차

14. 새 콘솔에서 UUID 확인

새 콘솔 창을 열고 다음을 실행해 md 디바이스들의 UUID를 확인합니다.

  blkid | grep /dev/md

여기서 각 md 타입 파일시스템의 UUID를 볼 수 있습니다. 예시 출력은 다음과 같습니다.

/dev/md0: UUID=”0b0fddf7-1160-4c70-8e76-5a5a5365e07d” TYPE=”ext2”
/dev/md1: LABEL=”/ROOT” UUID=”36d389c4-fc0f-4de7-a80b-40cc6dece66f” TYPE=”ext4”
/dev/md2: UUID=”47fbbe32-c756-4ea6-8fd6-b34867be0c84” TYPE=”ext4”
/dev/md3: LABEL=”/VAR” UUID=”f92cc249-c1af-456b-a291-ee1ea9ef8e22” TYPE=”ext4”

설명: 위 예시에서 /dev/md0와 /dev/md1 등의 UUID를 기억하거나 복사해둡니다.

다음으로 새로 만든 md 장치를 마운트합니다.

mount /dev/md1 /mnt/raid

/mnt/raid/etc/fstab 파일에서 /boot 마운트 지점이 위치한 줄을 찾아 새 /dev/md0 파일시스템의 UUID로 바꿉니다. 예:

UUID=0b0fddf7-1160-4c70-8e76-5a5a5365e07d /boot ext2 defaults 1 1

같은 방식으로 루트 파일시스템(/)의 UUID도 찾아서 /etc/fstab의 루트 항목에 붙여넣습니다.

UUID=36d389c4-fc0f-4de7-a80b-40cc6dece66f / ext4 defaults 1 1

참고: 추후에 사용할 UUID 줄은 잠시 주석 처리한 채로 두어도 됩니다.

/var와 /home의 기존 마운트 라인은 그대로 유지합니다. 새로 추가할 /var 및 /home 항목 예시는 아래와 같습니다.

/dev/sdb5 /var ext4 defaults 1 2
#UUID=47fbbe32-c756-4ea6-8fd6-b34867be0c84 /var ext4 defaults 1 2
/dev/sdb6 /home ext4 defaults 1 2
#UUID=f92cc249-c1af-456b-a291-ee1ea9ef8e22 /home ext4 defaults 1 2

수정이 끝나면 마운트를 해제합니다.

  umount /mnt/raid

15. /dev/md0 재마운트 및 GRUB 설정 변경

/dev/md0를 다시 /mnt/raid에 마운트합니다.

/mnt/raid/grub/menu.lst 파일에서 커널 항목을 다음처럼 수정하세요.

kernel PATH-TO-KERNEL ro root=/dev/md1 SOME OPTIONS

중요: GRUB 설정에서 더 이상 md 디바이스를 제외(EXCLUDE)하도록 하는 옵션이 없어야 합니다.

시스템이 RAID 복사본으로부터 부팅되도록 다음 파일들을 복사합니다.

cp /mnt/raid/grub/menu.lst /boot/grub/menu.lst
cp /mnt/raid/etc/fstab /etc/fstab

참고: 안전을 위해 백업본을 만들어둘 수 있지만, 그 방법은 보수적인 접근입니다.

16. 재부팅 및 BIOS 설정

시스템을 재부팅합니다.

reboot

BIOS 설정에 들어가 새 디스크(복사본이 들어있는 디스크)를 부팅 디스크로 선택합니다. 변경사항을 저장하고 재부팅하세요.

17. 옛(구) 드라이브 파티션을 RAID 파티션으로 변경 및 추가

재부팅이 정상적으로 완료되었다면, 기존(구) 드라이브의 파티션을 RAID 파티션 타입으로 바꿉니다.

현재 디스크들을 확인하려면:

  fdisk -l

출력에서 파티션 타입이 83(Linux)로 되어 있는 디스크가 기존 시스템 디스크입니다. 이 디스크(예시: /dev/sdb)의 sdb1, sdb2, sdb5, sdb6 파티션 타입을 0xfd(raid)로 변경합니다. fdisk, cfdisk 또는 parted를 사용하세요.

변경 후 파티션 정보를 커널에 알립니다.

partprobe

이제 수정한 파티션들을 RAID에 추가합니다. 예시(여기서도 옛 디스크가 /dev/sdb라고 가정):

mdadm /dev/md0 -a /dev/sdb1
mdadm /dev/md1 -a /dev/sdb2
mdadm /dev/md2 -a /dev/sdb5
mdadm /dev/md3 -a /dev/sdb6

진행 상황을 모니터링하려면 새 콘솔 창에서 다음을 실행하세요.

  watch -n 5 cat/proc/mdstat

예상되는 출력 예시는 다음과 같습니다.

Personalities : [raid1]
md1 : active raid1 sdb3[1] sda3[0]
473792 blocks [2/2] [UU]
[===>……………..] recovery 25.0% (118448/473792) finish=2.4min speed=2412

md2 : active raid1 sdb5[1] sda5[0]
4980032 blocks [2/2] [UU]
resync=DELAYED

md3 : active raid1 sdb6[1] sda6[0]
3349440 blocks [2/2] [UU]
resync=DELAYED

md0 : active raid1 sdb1[1] sda1[0]
80192 blocks [2/2] [UU]

unused devices: 

설명: 모든 md 디바이스의 리커버리가 완료되면 시스템은 RAID로 정상 동작합니다.

성능 및 중복성 향상 단계(권장)

리커버리 완료 후 다음을 고려하세요.

  • /etc/fstab에서 noatime 옵션을 사용하는 것이 읽기 성능에 도움이 될 수 있습니다. 다만 애플리케이션 요구사항을 확인하세요.
  • RAID1 읽기 성능을 더 활용하려면 mdadm과 읽기 밸런싱 설정을 검토하세요.
  • 정기적인 mdadm –detail 및 SMART 검사로 디스크 상태를 모니터링하세요.

18. 두 번째 하드디스크에 부트 레코드 생성

목표: 첫 번째 하드디스크가 실패해도 시스템이 두 번째 하드디스크로부터 부팅되게 합니다.

중요: 아래 지침은 구형 GRUB(legacy/grub-legacy)를 사용하는 경우에 해당합니다. GRUB2인 경우 별도 절차가 필요합니다.

grub 셸을 시작합니다.

# grub

프롬프트가 뜹니다.

  grub>

두 번째 디스크(예시: hd1)의 루트 파티션을 임시로 설정합니다.

grub> root (hd1,0)

다음과 유사한 메시지가 보일 수 있습니다.

  Filesystem type is ext2fs, partition type is 0xfd

이제 부트레코드를 설치합니다.

grub> setup (hd1)

출력 예시는 다음과 같습니다(메시지는 시스템마다 다를 수 있습니다).

Checking if “/boot/grub/stage1” exists … no
Checking if “/grub/stage1” exists … yes
Checking if “/grub/stage2” exists … yes
Checking if “/grub/e2fs_stage1_5” exists … yes
Running “embed /grub/e2fs_stage1_5 (hd1)” … 16 sectors embedded.
succeeded
Running “install /grub/stage1 (hd1) (hd1)1+16 p (hd1,0)/grub/stage2 /grub/grub.conf”… succeeded
Done.

첫 번째 디스크에도 반복합니다.

  grub> root (hd0,0)
grub> setup (hd0)

설치가 끝나면 grub를 종료합니다.

grub> quit

시스템을 재부팅합니다.

reboot

부팅이 정상적으로 완료되는지 확인하세요. 정상이라면 첫 번째 디스크(sda)를 분리해 시도해보고, 다시 연결 후 두 번째 디스크(sdb)를 분리해 재부팅하여 두 디스크 각각에서 부팅되는지 확인합니다.

중요: 만약 한 디스크에서만 부팅이 되지 않는다면, 해당 디스크의 GRUB 설치, 파티션 유형, /boot 파티션의 존재 여부를 확인하세요.

점검 및 문제 해결 요약

  • blkid로 UUID가 올바른지 확인하세요.
  • /etc/fstab에 잘못된 UUID가 들어가면 부팅 실패가 발생합니다. 항상 복사/붙여넣기 후 다시 확인하세요.
  • GRUB이 올바른 root= 옵션으로 커널을 가리키는지 점검하세요.
  • 리커버리 진행 중이면 mdstat을 주시하세요.

중요: 부팅 관련 작업을 수행하기 전 전체 디스크 이미지 백업을 권장합니다. 라이브 시스템에서의 파티션/부트레코드 조작은 데이터 손실 위험이 있습니다.

빠른 점검 체크리스트

  • blkid 출력에서 /dev/md* UUID 확보
  • /mnt/raid/etc/fstab의 /boot 및 / 항목을 UUID로 수정
  • /mnt/raid/grub/menu.lst의 kernel 라인 수정
  • /boot/grub/menu.lst와 /etc/fstab에 복사
  • BIOS 부팅 디스크 설정 변경 후 재부팅
  • 옛 드라이브 파티션 타입을 0xfd로 변경
  • mdadm로 파티션을 md 디바이스에 추가
  • mdstat에서 리커버리 완료 확인
  • grub를 사용해 두 디스크에 부트레코드 설치

테스트 케이스 및 수용 기준

  1. 부팅: BIOS에서 새 디스크로 부팅 시 시스템이 정상적으로 부팅되어야 함.
  2. 디스크 장애 시 부팅: 한 디스크를 물리적으로 분리해도 다른 디스크로부터 부팅되어야 함.
  3. RAID 동기화: mdstat에서 모든 md 디바이스가 [UU] 상태로 표시되어야 함.
  4. fstab 일관성: /etc/fstab의 UUID가 blkid 출력과 일치해야 함.

간단 복구/롤백 절차

  1. 부팅 불가시 라이브 미디어로 부팅합니다.
  2. /mnt/raid로 파일시스템을 마운트하고 /etc/fstab, /boot/grub/menu.lst 파일을 원래대로 복원합니다.
  3. grub 셸에서 문제가 되는 디스크에 setup을 다시 실행합니다.

의사결정 흐름: 부팅 실패 시 우선 점검 항목

flowchart TD
  A[시스템 부팅 실패] --> B{BIOS 부팅 디스크 확인}
  B -- 잘못됨 --> C[BIOS에서 올바른 디스크 선택 후 재부팅]
  B -- 정상 --> D{GRUB 로더 문제 확인}
  D -- GRUB 없음 --> E[grub 설치 및 setup 재실행]
  D -- GRUB 있음 --> F{/etc/fstab UUID 일치 여부}
  F -- 불일치 --> G[UUID 수정 후 재부팅]
  F -- 일치 --> H[mdstat 확인 및 md 복구 상태 점검]

FAQ

Q: GRUB2를 사용하면 어떻게 해야 하나요?

A: GRUB2는 grub-install과 update-grub 명령을 사용합니다. 각 디스크에 grub-install /dev/sdX를 실행하여 부트레코드를 심고 update-grub로 설정을 갱신하세요.

Q: fstab에 UUID 대신 /dev/mdX를 사용해도 되나요?

A: 부트 시 장치 이름이 바뀔 위험을 줄이려면 UUID 사용을 권장합니다. /dev/mdX를 사용하면 md 디바이스 순서가 바뀌는 상황에서 문제가 생길 수 있습니다.

Q: 파티션 타입을 0xfd로 변경하면 데이터가 지워지나요?

A: 파티션 타입 변경 자체는 데이터에 영향을 주지 않으나, 이후 잘못된 조작으로 데이터가 손실될 수 있으므로 주의하세요.


요약

  • RAID 복사본의 UUID를 fstab에 반영하고 GRUB 설정을 새로 구성해야 합니다.
  • 옛 드라이브의 파티션을 RAID 파티션으로 바꾸고 mdadm으로 추가하면 동기화가 시작됩니다.
  • 두 디스크에 부트레코드를 모두 설치해 디스크 장애에 대비합니다.

참고: GRUB 버전이 다르면 절차가 달라집니다. GRUB2 사용 환경이라면 별도 안내를 참고하세요.

공유하기: X/Twitter Facebook LinkedIn Telegram
저자
편집

유사한 자료

온라인에서 사람 연락처 찾는 방법
검색

온라인에서 사람 연락처 찾는 방법

크롬북 업데이트 확인 및 설치 가이드
가이드

크롬북 업데이트 확인 및 설치 가이드

동영상 역검색 가이드 — 클립으로 원본 찾는 법
검색도구

동영상 역검색 가이드 — 클립으로 원본 찾는 법

FAU-G 연결 서비스 오류 해결 가이드
모바일 게임

FAU-G 연결 서비스 오류 해결 가이드

휴대폰 피싱 공격 유형과 실전 대응 가이드
사이버보안

휴대폰 피싱 공격 유형과 실전 대응 가이드

RAID로 부팅 가능한 시스템 복제 및 fstab/GRUB 업데이트
시스템 관리

RAID로 부팅 가능한 시스템 복제 및 fstab/GRUB 업데이트