탑재된 폴더 및 재문 분석 지점 작업
구성 요소의 파일 집합 중 하나를 처리하려면 요청자가 디렉터리 트리를 재귀적으로 트래버스해야 할 수 있습니다. 그러면 요청자가 탑재된 폴더를 처리하고 현재 볼륨에 없는 데이터를 가리키는 지점(예: 링크)을 재분석해야 할 수 있습니다.
요청자는 디렉터리 트리를 트래버스할 때 탑재된 폴더 및 재분석 지점을 따라야 하며 VSS에는 백업 및 복원 작업에 대해 처리하기 위한 잘 정의된 지침이 있습니다.
이러한 지침을 설명하려면 다음 예제를 고려하세요.
- 볼륨 \\?\Volume{GUID_1}에 드라이브 문자 C:\가 있습니다.
- 파일 집합의 경로는 C:\WriterData입니다.
- 파일 집합에서 *.dat 파일 사양을 사용합니다.
- 파일 집합의 재귀가 TRUE로 설정됩니다.
- 디렉터리 C:\WriterData는 \\?\Volume{GUID_1} 볼륨에 있습니다.
- C:\WriterData\Archive 디렉터리가 탑재된 폴더입니다.
- 볼륨 \\?\Volume{GUID_2}은(는) 탑재된 폴더 C:\WriterData\Archive와 연결됩니다.
백업 중에 탑재된 폴더 및 재문 분석 지점 처리
재귀 백업을 수행할 때 VSS에서 탑재된 폴더 및 재분석 지점을 처리하기 위한 기본 규칙은 다음과 같이 요약할 수 있습니다.
- 탑재된 폴더 및 재분석 지점에서 경로가 수행됩니다.
- 탑재된 폴더 또는 재분석 지점이 볼륨을 가리키는 경우 해당 볼륨은 섀도 복사되어야 합니다.
- 볼륨에 탑재된 폴더 또는 재분석 지점이 포함된 경우 볼륨의 섀도 복사본에 표시됩니다.
- 탑재된 폴더 또는 재분석 지점 아래에 있는 데이터는 탑재된 폴더 또는 재분석 지점이 가리키는 볼륨의 섀도 복사본에 캡처됩니다.
위의 예제를 사용하여 설명하기 위해 재귀 플래그가 설정되었기 때문에 요청자는 C:\WriterData\Archive 이하의 모든 데이터를 검사해야 합니다.
요청자는 드라이브 문자 C:\를 사용하여 볼륨을 모두 추가해야 합니다. (\\?\Volume{GUID_1}) 및 탑재된 폴더 C:\WriterData\Archive(\\?\Volume{GUID_2})와 연결된 볼륨이 IVssBackupComponents::AddToSnapshotSet을 사용하여 섀도 복사본 집합에 연결됩니다.
탑재된 폴더 C:\WriterData\Archive는 deviceObject1이라는 디바이스 개체가 있는 \\?\Volume{GUID_1}의 섀도 복사본에 나타납니다.
그러나 VSS는 탑재된 폴더 아래의 데이터(\\?\Volume{GUID_2}의 데이터)를 deviceObject1에서 참조하는 섀도 복사본에 복사하지 않습니다. 대신 해당 데이터는 deviceObject2라는 디바이스 개체가 있는 \\?\Volume{GUID_2}의 섀도 복사본에 캡처됩니다.
따라서 C:\WriterData에서 섀도 복사된 파일을 백업하는 요청자는 deviceObject1\WriterData의 경로를 사용하여 C:\WriterData\*.dat와 일치하는 파일을 검색합니다.
C:\WriterData\Archive에서 섀도 복사된 파일을 백업하기 위해 요청자는 deviceObject2의 경로를 사용합니다(\\?\Volume{GUID_2}의 루트 디렉터리가 탑재된 폴더 C:\Writer\Archive와 연결되었으므로)는 C:\WriterData\Archive\*.dat와 일치하는 파일을 검색합니다.
재분석 지점은 탑재된 폴더와 동일한 방식으로 처리됩니다. 재분석 지점이 첫 번째 볼륨의 섀도 복사본에 나타납니다. 재분석 지점 아래의 데이터는 두 번째 볼륨의 섀도 복사본에 표시됩니다.
백업하는 동안 요청자는 탑재된 폴더 및 연결된 볼륨에 대한 정보와 재분석 지점 및 대상을 저장하여 모든 데이터가 올바르게 백업 및 복원되도록 해야 합니다.
복원하는 동안 탑재 및 재문 분석 지점 처리
파일을 복원할 때 요청자는 백업 중에 사용된 지침과 약간 다른 지침을 따라야 합니다( 대체 위치 매핑 및 새 대상 위치와 같은 문제 무시).
- 이전과 마찬가지로 재귀가 필요한 경우 탑재된 폴더 및 재분석 지점에서 경로가 수행됩니다.
- 탑재된 폴더를 복원해야 합니다.
- 탑재된 폴더 및 재분석 지점의 복원 위치는 원래 경로에 따라 결정됩니다.
백업과 복원 사이에 볼륨 이름이 유지되는 경우( 즉, 볼륨을 다시 만들지 않음) 복원된 탑재된 폴더 및 재분석 지점은 올바른 볼륨을 가리킵니다.
따라서 위에서 설명한 예제에서 탑재된 폴더 C:\WriterData\Archive가 (\\?\Volume{GUID_1})로 복원되고 이전에 연결된 볼륨이 (\\?\Volume{GUID_2})로 복원된 경우 복원된 파일 및 파일 구조가 올바르고 일관됩니다.
볼륨 이름이 변경된 시스템으로 데이터가 복원될 수 있습니다. 이는 수동 시스템 복구를 수행하고 볼륨을 다시 만들어야 할 수 있는 디스크 크래시 때문일 수 있습니다. 이러한 유형의 상황에서는 복원 후에 탑재된 폴더 및 재분석 지점이 더 이상 유효하지 않습니다. 복원된 볼륨에서 파일 및 파일 구조를 다시 만들려면 복원된 탑재된 폴더를 삭제하고 지점을 다시 분석하고 디스크에 다시 만들어야 합니다. 이것이 적절한지 여부를 결정하는 것은 백업 애플리케이션의 입니다.
탑재된 폴더의 복원 대상이 이미 점유되어 있는 것일 수 있습니다. 예를 들어 C:\WriterData\Archive에는 이미 일부 파일이 포함되어 있을 수 있습니다. 이 상황을 처리하는 방법은 백업 애플리케이션에서 결정해야 합니다.