Data Protection**:** Windows Server 2008 R2 백업 기본 사항

Jeffery Hicks

Windows 전문가에게 데이터 보호는 항상 중요한 작업입니다. 많은 IT 전문가는 이를 위해 테이프 또는 디스크에 백업 작업을 실행합니다. 일반적으로 규모가 큰 IT 부서에는 전문적인 타사 백업 솔루션을 구비할 예산이 있지만 그렇지 않은 경우에는 Microsoft가 제공하는 것과 같은 무료 백업 도구를 사용합니다.

과거 Microsoft의 무료 도구는 유서 깊은 NTBackup이었습니다. 그러나 이 유틸리티는 이제 사용되지 않습니다. Windows Server 2008은 새로운 백업 도구 집합을 제공합니다. 새로운 Windows Server 2008 R2에서 이 도구를 얼마나 쉽게 사용할 수 있는지 살펴보고자 합니다. 타사 백업 도구가 있는 경우라도 간단한 임시 변통 백업 방법을 숙지하면 도움이 되는 경우가 있습니다. 단, NTBackup으로 만든 백업은 새로운 백업 기능으로 관리할 수 없습니다.

설치 요점

가장 먼저 백업 기능을 설치해야 합니다. 이 기능은 기본적으로 설치되지 않기 때문입니다. 서버 관리자의 기능 추가 마법사를 사용하여 Windows Server 백업 기능을 추가합니다(그림 1). Windows PowerShell을 사용할 수 있도록 명령줄 도구 하위 기능을 사용하겠습니다. 이 부분에 대해서는 기사 뒷부분에서 더 자세히 살펴보겠습니다. 다음과 같이 ServerManagerCMD.exe와 같은 명령줄 도구를 사용하여 기능을 설치할 수도 있습니다. C:\ servermanagercmd –install backup-features.

그림 1 기능 추가 마법사를 사용하여 Windows Server 백업 기능과 명령줄 도구 설치

다음 단계는 백업의 위치를 확인하는 것입니다. 네트워크 공유, 로컬 볼륨 또는 전용 디스크에 파일을 백업할 수 있습니다. 테이프에 데이터를 백업할 수 없지만 저렴한 USB 연결 저장소가 광범위하게 사용되는 요즘에는 이것이 큰 단점이 되지 않습니다. 다만 몇 가지 고려해야 할 요소가 있습니다.

Windows 백업은 인덱스, 카탈로그 및 기타 지원 파일 측면에서 상당한 오버헤드를 발생시킵니다. .zip 파일을 만드는 것과는 다릅니다. 100KB의 파일을 백업하기 위해 100KB의 공간만 있으면 된다고 생각하면 안 됩니다. 훨씬 더 많은 공간이 필요합니다.

네트워크 공유에 백업하는 경우 백업의 무결성과 보안을 지키기 위해 신중한 파일 수준 액세스 제어가 필요합니다. 또한 동일한 네트워크 공유에 파일을 백업하는 경우 이전 백업을 덮어쓰게 된다는 부분도 유의하십시오. 손쉬운 해결책은 각 백업에 대해 하위 폴더를 만드는 것입니다. 로컬 볼륨을 백업 대상으로 선택하는 경우에도 마찬가지입니다.

네트워크 공유 또는 볼륨을 사용할 때 얻는 이점 중 하나는 백업되는 모든 파일이 포함된 .vhd 파일이 생성된다는 것입니다. 백업 위치를 지정하면 WindowsImageBackup이라는 최상위 폴더가 만들어집니다. 이 폴더 안에 각 컴퓨터에 대한 백업 폴더가 위치합니다. 백업 버전은 날짜별로 지정되므로 Backup 2009-12-14 172606과 같은 형태의 폴더 이름이 사용됩니다. 이 폴더 안에 백업된 파일과 .vhd 파일이 위치합니다. 이 .vhd를 Windows 7과 Windows Server 2008 R2에 탑재할 수 있습니다. 백업 및 보관 요구 사항에 따라 이 파일을 장기간 보관되는 디스크 저장소로 이동하거나 DVD에 구울 수 있습니다.

가장 쉽고 빠른 방법은 연결된 전용 디스크를 사용하는 방법입니다. 내부적으로 연결된 디스크이거나 USB 또는 FireWire를 통해 외부로 연결된 디스크일 수 있습니다. Microsoft에서는 백업하는 데이터 크기의 2.5배에 해당하는 여유 공간을 확보할 것을 권장합니다. 드라이브는 포맷되어 일반적인 관리 도구에서는 볼 수 없지만 디스크 관리에서는 볼 수 있습니다. 최대 2TB의 디스크를 사용할 수 있습니다.

백업 작업 만들기

Windows 백업의 목적은 서버를 보호하기 위한 통합된 설정을 제공하는 것입니다. 예약된 작업을 사용하여 파일 및 시스템 상태를 백업하거나 BMR(Bare-Metal Restore)를 제공할 수 있습니다. Microsoft는 여러분이 이 목적을 위해 하나의 예약된 작업을 사용할 것으로 가정합니다. 여기서는 제한된 예산 때문에 Windows 백업 기능을 사용하며, 이 유틸리티의 제약 조건에서 최대한의 보호를 추구한다고 가정하겠습니다.

Windows 백업 기능을 설치한 후, 서버 관리자에서 저장소 노드를 확장하고 Windows Server 백업을 선택합니다. 작업 창에서 “백업 일정”을 선택하면 백업 일정 마법사가 시작됩니다. 시작 화면에서 다음을 클릭합니다.

2단계에서 원하는 백업 유형을 지정합니다. 전체 서버 백업을 수행해 봅니다. 사용자 지정 백업을 만들고 선택한 파일 및 시스템 상태와 같은 항목을 선택할 수도 있습니다. 신속한 파일 백업 방법은 잠시 후에 다루기로 하고, 지금은 전체적인 서버 보호를 원하는 경우를 가정해 보겠습니다.

3단계에서는 백업 작업을 실행할 시점을 지정합니다. 대부분의 경우 단일 백업으로 충분하지만 하루에 두 번 이상 실행할 수도 있습니다. 중요한 파일을 백업하는 경우에는 그렇게 하는 것이 좋을 수 있습니다.

4단계에서는 백업을 저장할 위치를 정합니다. 전용 하드 디스크를 사용하는 것이 좋습니다. 이 드라이브는 다시 포맷되고 다른 용도로는 사용할 수 없다는 점을 다시 한 번 유의하십시오. 볼륨 또는 네트워크 공유를 사용할 수도 있습니다. 경고 및 제한 사항을 주의 깊게 살펴보십시오. 디스크가 다시 포맷된다는 경고가 표시될 수 있습니다.

표시되지 않는 디스크가 있는 경우 사용 가능한 모든 디스크 표시 단추를 클릭하여 새로 고칩니다. 새 디스크를 선택하면 경고가 표시됩니다. 선택한 다음 백업 설정을 한 번 더 확인할 수 있습니다. 잘못된 부분이 있으면 이전 단추를 사용하여 뒤로 돌아간 다음 오류를 수정합니다. 모든 부분이 문제 없이 진행되면 요약 화면이 표시됩니다. 다음 날 Windows Server 백업 노드에서 결과 또는 오류를 확인할 수 있습니다.

Windows 백업을 사용하여 한 번 백업을 실행할 수도 있습니다. 작업 창에서 한 번 백업 옵션을 선택합니다. 예약된 작업과 동일한 설정을 사용하거나 전혀 다른 설정을 선택할 수 있습니다. 다른 설정을 선택하면 마법사가 다시 실행되고 새 매개 변수를 입력할 수 있습니다. 예를 들어 네트워크 공유에 파일을 복사할 수 있습니다. 동일한 폴더의 이전 백업을 덮어쓰게 된다는 점을 유의하십시오. 백업은 즉시 실행됩니다. 이 백업이 앞으로 자주 수행할 별도의 백업이라면 명령줄 또는 Windows PowerShell의 스크립트 솔루션을 활용하는 것이 좋습니다. 이 절차는 나중에 살펴보겠습니다.

데이터 복원

Windows 백업은 타임스탬프를 버전 정보로 사용합니다. 복구 작업을 사용하면 쉽게 진행할 수 있는 마법사가 시작됩니다. 적절한 백업 원본을 선택합니다. 복구 마법사에 사용 가능한 모든 백업의 datetime 컨트롤이 표시됩니다(그림 2 참조). 적절한 백업을 선택합니다. 백업 유형에 따라 선택할 수 있는 백업이 하나밖에 없는 경우도 있습니다.

그림 2 복구 마법사에서 사용 가능한 백업 선택

다음으로, 복구할 데이터 유형을 선택합니다. 파일 및 폴더를 선택하면 복구할 파일을 고를 수 있습니다. 아쉽게도 여러 디렉터리에서 파일을 선택하는 것은 사실상 불가능합니다. 간단히 전체를 복구하거나 하나의 디렉터리에서 선택한 파일을 복구할 수 있습니다. 백업 작업을 설정할 때 이 부분을 유의하십시오.

파일을 복구할 때 대상 폴더를 지정해야 합니다. 대상 폴더는 원래 폴더일 수도 있고 대체 위치일 수도 있습니다. 현재 버전이 존재하는 상태에서 현재 파일을 복원할 때의 처리 방법도 제어할 수 있습니다. 기존 버전이 탐지되는 경우 복사본을 만들어 두 버전을 두거나 기존 버전을 덮어쓰거나 복원을 건너뛸 수 있습니다. 복구 프로세스는 즉시 시작됩니다.

WBADMIN.EXE 사용

명령 백업 도구를 설치한 경우 몇 가지 옵션이 더 있습니다. 명령 프롬프트를 열고 WBADMIN.EXE 도움말을 보십시오. 이 도구를 사용하여 예약된 백업을 설정할 수 있지만 GUI가 훨씬 더 사용하기 쉽습니다. 이 도구는 한 번 백업 작업을 만드는 데 유용합니다. 구문 도움말을 보려면 다음 명령을 실행합니다.

C:\> wbadmin start backup /?

지면 관계로 모든 옵션을 다룰 수는 없지만 명령줄 도구를 사용하여 네트워크 공유에 정기적으로 파일을 백업하는 방법을 살펴보겠습니다.

@echo off
::Demo-Backup.bat
::demonstration script using WBADMIN.EXE on a Windows Server 2008 R2 Server

rem backup share UNC
set backupshare=\\mycompany-dc01\backup

rem files and folders to include
set include=c:\scripts,c:\files

rem define date time variables for building the folder name
set m=%date:~4,2%
set d=%date:~7,2%
set y=%date:~10,4%
set h=%time:~0,2%
set min=%time:~3,2%
set sec=%time:~6,2%

rem defining a new folder like \\mycompany-dc01\backup\RESEARCHDC\12152009_132532
set newfolder=%backupshare%\%computername%\%m%%d%%y%_%h%%min%%sec%
echo Creating %newfolder%

mkdir %newfolder%

rem run the backup
echo Backing up %include% to %newfolder%
wbadmin start backup -backuptarget:%newfolder% -include:%include% -quiet

rem Clear variables
set backupshare=
set include=
set m=
set d=
set y=
set h=
set min=
set sec=
set newfolder=

기존 백업을 덮어쓰지 않도록 컴퓨터 이름과 날짜/시간 스탬프를 파일 이름의 일부로 사용하는 새 폴더를 만들겠습니다. 배치 파일에 이 작업을 처리하는 코드가 있습니다. 스크립트의 주 기능은 WBADMIN.EXE를 호출하여 지정된 공유에 백업을 만드는 것입니다. 이 단계를 조정하려는 경우 구문 도움말을 살펴보십시오. 이 스크립트에서 마음에 드는 부분은 작업 스케줄러를 사용하여 직접 예약된 작업을 설정할 수 있다는 점입니다. 따라서 백업 마법사에서는 예약된 작업을 하나만 만들 수 있지만 WBADMIN.EXE를 사용하면 원하는 만큼 만들 수 있습니다. 또한 이 도구를 사용하여 시스템 상태 백업도 만들 수 있습니다.

실행된 백업 작업을 보려면 다음 명령을 실행합니다. C:\> wbadmin get versions.

버전 식별자를 잘 확인하십시오. 쉽게 복구 마법사를 사용할 수도 있지만 WBADMIN을 사용하여 파일을 복구할 경우에는 이 값이 필요합니다.

Windows PowerShell을 사용하여 백업

또 다른 명령줄 방식은 Windows 백업 PowerShell cmdlet을 사용하는 것입니다. 이러한 cmdlet에 액세스하려면 먼저 Windows 백업 스냅인을 로드해야 합니다.

PS C:\> add-pssnapin Windows.ServerBackup

포함된 cmdlet을 보려면 Get-Command를 사용합니다.

PS C:\> get-command -pssnapin windows.serverbackup

아쉬운 부분은 백업 작업을 만들려면 여러 단계의 프로세스를 거쳐야 한다는 점입니다. 프롬프트에서 필요한 명령을 그때그때 입력할 수 있지만 스크립트를 사용하는 편이 더 쉽습니다. 원본 배치 파일의 Windows PowerShell 버전은 다음과 같습니다.

#requires -version 2.0
#requires -pssnapin Windows.ServerBackup

#Demo-WBBackup.ps1

$policy = New-WBPolicy
$files=new-WBFileSpec c:\scripts,c:\files
Add-wbFileSpec -policy $policy -filespec $files
$backdir=("\\mycompany-dc01\backup\{0}\{1:MMddyyyy_hhmmss}" -f $env:computername,(get-date))

write-host "Creating $backdir" -foregroundcolor Green
mkdir $backdir | out-null

$backupLocation = New-WBBackupTarget -network $backdir 

Add-WBBackupTarget -Policy $policy -Target $backupLocation

write-host "Backing up $files to $backdir" -foregroundcolor Green
$policy
Start-WBBackup -Policy $policy

Windows PowerShell cmdlet의 기본은 정책을 만들고 실행하는 것입니다. 정책에는 포함하거나 제외할 파일 또는 볼륨, 파일을 백업할 위치 및 일부 선별된 옵션이 포함됩니다. 시스템 상태 및 BMR(Bare-Metal Recovery) 작업도 만들 수 있습니다. 데모에서는 몇 개의 디렉터리만 백업합니다. Start-WBBackup cmdlet이 백업 작업을 수행합니다.

Windows 백업 cmdlet 목록을 보면 한 가지 중요한 것이 빠졌음을 알 수 있습니다. 바로 데이터를 복원하는 cmdlet이 없습니다. 아마 이 단계를 자동화할 경우는 없다고 생각한 것 같지만 WBADMIN.EXE를 사용하면 가능합니다. 나중에 cmdlet이 추가될 수도 있습니다. 그때까지는 복구 마법사나 WBADMIN.EXE를 사용하여 파일을 복원할 수 있습니다.

정리

여기 나온 도구들을 사용해 보면 Windows 백업이 많은 이점을 제공한다는 사실을 알 수 있으리라 확신합니다. 다만 이러한 기능이 현재 실행 중인 전체적인 백업 전략과 비즈니스 연속성 계획에 얼마나 들어맞는지 평가해야 합니다. 어떤 측면에서 무료 Windows 백업 솔루션은 상당히 제한적이지만 스크립팅 옵션과 .vhd 파일 사용은 이러한 제한을 극복할 수 있는 가능성을 제공합니다. 단지 머리를 조금 더 써야 할 뿐입니다.

마지막으로, 여타 백업 소프트웨어와 마찬가지로 개발 및 테스트 환경에서 복원 프로세스를 연습해야 합니다. 상사의 재촉을 받으며 실제 데이터를 복구해야 하는 상황에서 프로세스를 익히고 싶지는 않을 테니까요. 프로세스를 미리 익혀두면 필요한 시점이 되었을 때 영웅이 될 수 있습니다.

Jeffery Hicks는 MCSE, MCSA, MCT, Microsoft MVP, 저자, 강사, 그리고 컨설턴트입니다. 17년 IT 경력의 스크립팅 및 자동화 전문 베테랑인 Hicks는 블로거와 컨퍼런스 발표자로도 왕성하게 활동합니다. 최근 저서는 “Windows PowerShell 2.0: TFM”(Sapien Press, 2009)입니다. 문의 사항이 있으면 저자의 웹 사이트 jdhitsolutions.com을 통해 연락하시기 바랍니다.

관련 콘텐츠