Share via


IVssHardwareSnapshotProvider::OnLunEmpty 메서드(vsprov.h)

VSS가 섀도 복사본 LUN에 흥미로운 데이터가 없다고 판단할 때마다 OnLunEmpty 메서드가 호출됩니다. 모든 섀도 복사본이 삭제되었습니다(LUN 삭제도 발생함). LUN 리소스는 공급자가 회수하고 다른 용도로 재사용할 수 있습니다. VSS는 영향을 받는 볼륨을 분리합니다. 공급자는 OnLunEmpty 중에 다시 검사를 실행해서는 안 됩니다. VSS는 이 정리를 처리합니다.

참고 하드웨어 공급자는 Windows Server 운영 체제에서만 지원됩니다.
 

구문

HRESULT OnLunEmpty(
  [in] VSS_PWSZ            wszDeviceName,
  [in] VDS_LUN_INFORMATION *pInformation
);

매개 변수

[in] wszDeviceName

삭제할 섀도 복사본이 포함된 LUN에 해당하는 디바이스입니다.

[in] pInformation

삭제할 섀도 복사본이 포함된 LUN에 대한 정보를 포함하는 VDS_LUN_INFORMATION 구조체에 대한 포인터입니다.

반환 값

이 메서드는 이러한 값 중 하나를 반환할 수 있습니다.

반환 코드/값 설명
S_OK
0x00000000L
작업이 성공적으로 완료되었습니다.
E_OUTOFMEMORY
0x8007000EL
메모리 부족 또는 기타 시스템 리소스.
E_INVALIDARG
0x80070057L
매개 변수 값 중 하나가 잘못되었습니다.
VSS_E_PROVIDER_VETO
0x80042306L
예기치 않은 공급자 오류가 발생했습니다. 공급자는 사용자에게 문제를 resolve 방법에 대한 정보를 제공하는 이벤트를 애플리케이션 이벤트 로그에 보고해야 합니다.

설명

하드웨어 공급자는 섀도 복사본을 삭제하고, 경우에만 LUN을 회수해야 합니다.
OnLunEmpty 가 호출되고 있습니다. 하드웨어 섀도 복사본을 백업 미디어 자체로 사용할 수 있으므로 스토리지 배열이 일반 디스크에 사용되는 LUN을 처리하는 것과 동일한 주의로 LUN을 처리해야 합니다. OnLunEmpty에 대한 처리 외부의 LUN 회수는 긴급 또는 관리자가 명시적 작업을 수동으로 수행하는 것으로 제한되어야 합니다.

영구 섀도 복사본의 경우 요청자는 더 이상 필요하지 않은 경우 섀도 복사본을 삭제합니다. 존재하지 않는 자동 릴리스 섀도 복사본의 경우 요청자가 IVssBackupComponents 개체에서 IUnknown::Release를 호출할 때 VSS 서비스는 섀도 복사본을 삭제합니다. 비자동 해제 섀도 복사본이 없는 경우 컴퓨터를 다시 시작할 때 VSS 서비스가 섀도 복사본을 삭제합니다. 모든 경우에 VSS 서비스는 각 섀도 복사본 LUN에 필요한 대로 공급자의 OnLunEmpty 메서드를 호출합니다.

OnLunEmpty는 최상의 노력으로 호출됩니다. VSS는 LUN이 비어 있는 경우에만 메서드를 호출합니다. LUN이 비어 있지만 오류 또는 외부 상황으로 인해 VSS에서 이를 검색할 수 없는 경우가 많을 수 있습니다. 이 경우 사용자는 스토리지 관리 소프트웨어를 사용하여 이 상태를 지워야 합니다.

몇 가지 예는 다음과 같습니다.

  • 섀도 복사본 LUN이 다른 호스트로 이동되지만 실제로 VSS를 통해 전송되거나 가져오지 않은 경우 해당 LUN은 다른 LUN으로 표시되며 VSS 알림 없이 볼륨을 단순히 삭제할 수 있습니다.
  • 섀도 복사본을 만드는 도중에 충돌 또는 예기치 않은 다시 부팅
  • 취소된 가져오기입니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 지원되는 버전 없음
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 vsprov.h

추가 정보

IVssHardwareSnapshotProvider