×

    로컬 백업 구축기 (feat. Kopia)

    배경

    회사에서 업무를 하다 보면 백업의 중요성을 느끼게 된다. 하지만 RAID와 같이 우수하지만 복잡한 방식을 사용하여 백업을 하게 되면, 백업 데이터를 되살릴 때 어려움을 겪을 수 있다. 그래서 나는 단순한 복사 방법을 선호하는 편이다. 이를 위해 FreeFileSync를 사용하여 물리적으로 독립된 저장매체(HDD)에 데이터 사본을 복사하는 방식으로 백업을 하고 있었다. 설정이 간단하고 빠르게 백업할 수 있는 방법이다.

    그러다 회사 컴퓨터에 설치된 개인정보 감시 프로그램(DLP)이 문제를 발생시켰다. 이 프로그램은 주기적으로 PC의 모든 파일을 스캔하여 열어보고 검사한다. 이 과정에서 백업 HDD에 저장된 문서까지 계속 읽어대서 HDD가 쉴 새 없이 돌아가게 되었다. 백업 HDD는 수명과 안정성이 가장 큰 미덕인데, 현재 상황에서 백업 HDD가 계속해서 감시 프로그램의 타겟이 되어 시스템이 버벅일 뿐만 아니라 HDD의 수명이 감소하거나 물리적 오류가 생겨날 가능성도 증가하였다. HDD가 돌아가는 소리가 계속 들리다보니 이러다가 HDD가 고장 나서 백업 데이터가 날아가는 건 아닌지 걱정이 되었다.

    결국 나는 오랫동안 사용하던 백업 방식을 바꾸기로 마음 먹고 방법을 찾기 시작했다.

    요구조건

    나에게 맞는 방법을 찾기 위해 원하는 조건을 정리해 봤다.

    1. 감시 프로그램 우회: 백업본이 일반적인 문서 파일(PDF 등) 형태가 아니어야 함.
    2. HDD 물리 손상 대비 (리커버리): 감시 프로그램에 시달린 HDD에 일부 배드 섹터가 생겨도 데이터를 복구할 수 있어야 함.
    3. 이식성: PC가 고장 나면 HDD만 빼서 다른 머신에 마운트(Mount)하여 바로 복원 가능해야 함.
    4. 빠른 자동화: 매번 전체 백업을 하지 않고, 백그라운드에서 매일 1회 ‘변경된 부분만’ 조용히 백업해야 함.

    옵션 비교: 어떤 방법들이 있을까?

    이 조건을 만족시키기 위해 여러 가지 방법을 테스트하고 비교해 보았다.

    옵션 1. 단순 동기화 툴 (FreeFileSync 등)

    옵션 2. 압축 프로그램 활용 (WinRAR CLI 등)

    옵션 3. RAID 방식

    옵션 4. Kopia (오픈소스 블록 증분 백업)


    Kopia 하이브리드 구축법 (CLI + GUI)

    이렇게 Kopia를 선택했다. Kopia는 Windows를 위한 GUI를 지원한다. 하지만 GUI에서는 ‘오류 정정(ECC) 옵션’을 설정할 수 없었기 때문에 다소 번거로운 방법을 쓸 수 밖에 없었다.

    먼저 최초 저장소 생성은 명령어(CLI)로 수행하였다. 그리고 이후 자동 백업 관리는 KopiaUI(GUI)로 진행하였다.

    기록을 위해 그 방법을 단계별로 정리해 보았다.

    1단계 : 기존 백업 지우기 (초기화)

    선택사항이댜. 기존에 일반 파일이 필요 없다면 지운다. 백업할 공간을 마련해 둔다.

    2단계 : Kopia 다운로드 및 준비

    Kopia 공식 홈페이지 또는 GitHub에 접속한다. CLI용 버전과 GUI 설치용 버전을 모두 다운로드한다.

    3단계 : 최초 저장소 생성 (오류 정정 적용)

    Windows에서 키보드의 Windows 키 + R을 누르고 cmd를 입력해 명령 프롬프트 창을 연다. 그리고 아래 명령어를 실행시킨다.

    물론 자신의 환경에 맞게 kopia cli path(C:\Kopia\kopia.exe)와 --path 옵션(F:\KopiaBackup)을 수정한다.

    이렇게 하면 F: 드라이브에 KopiaBackup이라는 저장소를 만들고, 복구용 추가 데이터(패리티)를 20%로 할당하게 된다.

    C:\Kopia\kopia.exe repository create filesystem --path F:\KopiaBackup --ecc=REED-SOLOMON-CRC32 --ecc-overhead-percent=20
    

    4단계 : Backup 스케줄링

    이제 GUI 프로그램을 실행시킨다.

    1. 백업 대상 선택: 상단의 [+ New Snapshot] 버튼을 누르고, 원본 데이터가 있는 드라이브 전체 (또는 폴더)를 선택한다.
    2. 자동화 시간 설정: 추가된 경로 우측 끝에 있는 톱니바퀴 [Policies] 아이콘을 클릭한다.
      • Scheduling 탭에서 Time of day를 선택하고 매일 점심시간 등 원하는 시간을 지정한다.
      • Files 탭에서 휴지통($RECYCLE.BIN) 등을 백업 제외 폴더로 지정할 수 있다.
      • 우측 상단 [Save Policy] 클릭한다.
    3. 최초 백업 시작: 경로 우측의 [Snapshot Now] 아이콘(재생 버튼)을 누르면 첫 백업이 시작된다.
    4. 백그라운드 설정: 좌측 하단 톱니바퀴(Settings)를 눌러 [Launch at Startup](윈도우 시작 시 실행)과 [Minimize to Tray](트레이로 최소화)를 켜둔다.

    구축 결과 및 복원 방법

    만약 백업 데이터를 복원하고 싶다면 어떻게 해야 할까. Kopia GUI에서 원하는 날짜의 스냅샷 옆에 있는 [Mount as Local Drive] 버튼을 누르기만 하면 된다. Kopia가 마치 USB를 꽂은 것처럼 가상의 Z: 드라이브를 띄워준다. 탐색기에서 원하는 파일을 복사해 온 다음 연결을 해제하면 끝이다.

    ... ... ... ...
    Back