Microsoft MVP성태의 닷넷 이야기
Windows: 80. 윈도우 서버 백업의 복원하는 옵션 설명 [링크 복사], [링크+제목 복사],
조회: 25027
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

윈도우 서버 백업의 복원하는 옵션 설명

그동안 윈도우 서버의 백업만 해오다가 지난번 사태로 인해 처음으로 (시스템) 복원을 시도해봤습니다. ^^;

Hyper-V 서비스 시작 오류 - Not enough storage is available to complete this operation.
; https://www.sysnet.pe.kr/2/0/1568

"Windows Server Backup" MMC 도구를 실행하면 "Recovery..." 옵션을 선택해 복원을 진행할 수 있는데요. 이때 Recovery 마법사는 다음과 같이 백업이 저장된 위치를 먼저 물어봅니다.

recover_backup_1.png

제 경우에는 같은 컴퓨터에 HDD 하나를 백업 전용으로 달아 두었기 때문에 첫 번째 옵션을 선택해 진행했습니다. 참고로, 같은 머신일지라도 운영체제가 새로 설치되어 이전 운영체제의 백업본을 접근하는 경우라면 "This server(...)"에 해당하지 않습니다. 그런 경우에는 "A backup stored on another location"을 선택한 후에 현재 PC의 하드를 지정해야 합니다. 안 그러면 vhdx 백업본을 Raw 상태의 HDD로 인식하는 경우가 있어 그다음 단계에서 날짜를 선택할 때 아래의 오류 메시지가 뜨면서 진행되지 않습니다.

The disk New Volume (...) that contains the backup is either not online or is not accessible. Make sure this disk is connected to the computer and is accessible for the recovery to continue. Otherwise, choose a recovery date for which the disk is online and accessible, or choose a backup from another storage location.


정상적으로 진행하면 백업본이 생성된 날짜를 선택할 수 있고, (굵은 글씨체로 보이는 숫자입니다.)

recover_backup_2.png

해당 백업본을 대상으로 다음과 같이 5개의 옵션으로 복원을 할 수 있습니다.

recover_backup_3.png

  1. Files and folders: 말 그대로 파일 및 폴더를 복원하는 것으로 복원해야 할 대상이 명확할 때 사용하면 됩니다.
  2. Hyper-V: 아마도 서비스 정지로 인해 비활성화된 듯 싶고.
  3. Volumes: 백업에 저장된 "System Reserved" 및 특정 드라이브에 저장된 모든 데이터를 기존의 내용을 덮어쓰는 형식이 아닌, 운영체제가 설치되지 않은 일반 드라이브를 대상으로 풀어냅니다. 즉, 하드 디스크 볼륨 단위의 원복이 아닙니다.
  4. Applications: 현재 공식적으로 지원되는 것은 "Registry" 하나에 불과하므로 거의 쓸일이 없습니다. 게다가 "Volumes" 옵션과 마찬가지로 기존 설정에 덮어쓰는 형식이 아니고 새롭게 파일로 쓰는 형식입니다.
  5. System state: 기존 파일을 덮어쓰는 형식이긴 하지만 보안 접근이 불가능한 파일은 복원하지 못하고 실패합니다. 또는 "Volumes" 옵션처럼 기존 설정을 덮어쓰지 않고 특정 폴더에 풀어내는 것이 가능합니다.

이 중에서 운영체제의 구성 요소가 잘못되어 복원을 하는 경우라면 "System state" 옵션을 선택해야 하는데요. 아쉽게도 위에서 설명한 이유로 인해 대개의 경우 복원이 실패합니다. 왜냐하면 운영체제가 실행 중이기 때문에 복원이 불가능한 것입니다. (사실 운영체제가 실행된 상태에서의 "System state" 옵션은 거의 의미가 없습니다.) 대신 윈도우 설치 디스크를 이용해 부팅을 시키면 그제서야 제대로 된 "System state" 복원이 가능합니다. 이에 대해서는 다음의 글을 참고하세요.

Windows Recovery Environment overview
; https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2008-R2-and-2008/dd979562(v=ws.10)




"Files and folders" 복원 옵션을 선택한 경우 원본 위치로 쓰거나 별도의 폴더를 지정하는 것도 가능합니다. 그리고 원본 위치일지라도 다음과 같이 3개의 옵션을 선택할 수 있습니다.

recover_backup_4.png

  1. Create copies so that you have both versions: 예를 들어, "c:\temp\test.txt"라는 파일이 이미 있는 경우, 복원되는 파일을 해당 파일에 덮어쓰지 않고 "c:\temp\2014-01-05 13-49 Copy of test.txt"라는 식의 이름으로 새롭게 중복해서 복원합니다.
  2. Overwrite the existing versions with the recovered versions: 복원본에 있는 내용으로 기존 파일을 덮어씁니다.
  3. Do not recover the items that already exist on the recovery destination: 현재 존재하지 않는 파일에 대해서만 복원본으로부터 파일을 가져옵니다.

여기서 디스크 드라이브를 대상으로 "Create copies so that you have both versions" 옵션을 선택해 복원하게 되면 2배 가량의 디스크 공간이 점유될 것입니다. 물론, 복원하다가 용량이 부족하면 실패하고 거기서 작업은 멈춥니다. 참고로 "Security settings"의 "Restore access control list (ACL) permissions to the file or folder being recovered" 옵션을 주의해야 할 필요가 있습니다. 이 옵션은 기본 선택되어 있는데, 복원되는 ".... Copy of ..." 파일들의 보안도 원본 파일을 그대로 따라가게 되므로 "C:\Program Files"와 같은 식의 폴더/파일인 경우 "TrustedInstaller" 보안이 적용된다는 문제가 발생합니다.

그래도 당황하지 마시고 다음의 명령어로 일괄 삭제(또는 보안 변경)할 수 있으니 참고하세요. ^^ (그렇습니다. 제가 실수로 그 옵션을 선택해 시스템 드라이브 전체를 복원하려 했습니다.)

cd "C:\Windows"

takeown /f "2014-01-05 13-49 Copy of*" /skipsl /r /a /d n
takeown /f "2014-01-05 13-49 Copy of*" /skipsl /r /a /d y

icacls "2014-01-05 13-49 Copy of*"  /grant "Users":F /T /C

del "2014-01-05 13-49 Copy of*" /S
del /AH "2014-01-05 13-49 Copy of*" /S
del /AR "2014-01-05 13-49 Copy of*" /S
del /AA "2014-01-05 13-49 Copy of*" /S

dir /a/s "2014-01-05 13-49 Copy of*"




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 7/17/2021]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 136  137  138  [139]  140  141  142  143  144  145  146  147  148  149  150  ...
NoWriterDateCnt.TitleFile(s)
1639정성태2/23/201424332기타: 41. BBS 스토어 앱 개인정보 보호 정책 안내
1638정성태2/18/201447171Windows: 90. 실행 파일로부터 관리자 요구 권한을 제거하는 방법(부제: 크랙 버전을 보다 안전하게 실행하는 방법) [8]
1637정성태2/14/201427998Windows: 89. 컴퓨터를 껐는데도 어느 순간 자동으로 켜진다면? - 두 번째 이야기
1636정성태2/14/201424128Windows: 88. Hyper-V가 설치된 컴퓨터의 윈도우 백업 설정
1635정성태2/14/201424910오류 유형: 221. SharePoint - System.InvalidOperationException: The farm is unavailable.
1634정성태2/14/201425270.NET Framework: 424. C# - CSharpCodeProvider로 컴파일한 메서드의 실행이 일반 메서드보다 더 빠르다? [1]파일 다운로드1
1633정성태2/13/201428207오류 유형: 220. 2014년 2월 13일 이후로 Visual Studio 2010 Macro가 동작하지 않는다면? [3]
1632정성태2/12/201446094.NET Framework: 423. C#에서 DirectShow를 이용한 미디어 재생 [2]파일 다운로드1
1631정성태2/11/201424733개발 환경 구성: 217. Realtek 사운드 장치에서 재생되는 오디오를 GraphEditor로 녹음하는 방법
1630정성태2/5/201425402개발 환경 구성: 216. Hyper-V에 올려진 윈도우 XP VM에서 24bit 컬러 및 ClearType 활성화하는 방법
1629정성태2/5/201434934개발 환경 구성: 215. DOS batch - 하나의 .bat 파일에서 다중 .bat 파일을 (비동기로) 실행하는 방법 [1]
1628정성태2/4/201436501Windows: 87. 윈도우 8.1에서 .NET 3.5 설치가 안된다면? [2]
1627정성태2/4/201431555개발 환경 구성: 214. SQL Server Reporting Services를 이용해 간단한 리포트 제작하는 방법
1626정성태2/4/201423817Windows: 86. 윈도우 8.1의 Skydrive 내용이 동기화가 안된다면?
1625정성태2/2/201430521.NET Framework: 422. C++과 C#의 Event 공유파일 다운로드1
1624정성태2/2/201426250.NET Framework: 421. ASP.NET에서 Server.CreateObject와 COM Interop 클래스 생성의 차이점
1623정성태2/1/201431096개발 환경 구성: 213. x86/x64별로 나뉘어진 어셈블리를 한 프로젝트에서 참조하는 방법 [1]파일 다운로드1
1622정성태1/31/201431249VC++: 74. 어떤 것을 쓰면 좋을까요? wvnsprintf, _vsnwprintf_s, StringCbVPrintfW [4]
1621정성태1/31/201423056.NET Framework: 420. 베트남의 11학년(한국의 고2)이 45분만에 푼다는 알고리즘 문제파일 다운로드1
1620정성태1/30/201433443.NET Framework: 419. C# - BigDecimal파일 다운로드1
1619정성태1/30/201429980VS.NET IDE: 85. T4를 이용한 INotifyPropertyChanged 코드 자동 생성파일 다운로드1
1618정성태1/29/201445460Linux: 2. 우분투에서 Active Directory 계정을 이용한 파일 공유
1617정성태1/29/201426980.NET Framework: 418. Thread.Abort 호출의 hang 현상 [1]
1616정성태1/29/201427649디버깅 기술: 63. windbg 디버깅 사례: AppDomain 간의 static 변수 사용으로 인한 crash
1615정성태1/29/201429200.NET Framework: 417. WPF WebBrowser 컨트롤에서 SHDocVw.IWebBrowser2 인터페이스를 구하는 방법 및 순수 WPF 웹 브라우저 컨트롤 소개
1614정성태1/29/201426382.NET Framework: 416. System.Net.Sockets.NetworkStream이 Thread-safe할까?파일 다운로드1
... 136  137  138  [139]  140  141  142  143  144  145  146  147  148  149  150  ...