다음을 통해 공유


파일 복사

Copy File 작업은 Blob 또는 파일을 스토리지 계정 내의 대상 파일에 복사합니다. 이 작업은 SMB 프로토콜이 설정된 파일 공유에 대해 버전 2015-02-21 이상에서 지원되며, NFS 프로토콜을 사용하도록 설정된 파일 공유에 대해 버전 2025-05-05 이상에서 지원됩니다.

프로토콜 가용성

파일 공유 프로토콜 사용 이용할 수 있는
SMB 예
NFS 예

요청

Copy File 요청은 다음과 같이 생성됩니다. HTTPS를 사용하는 것이 좋습니다.

버전 2013-08-15부터 원본 파일과 동일한 계정에 있는 경우 대상 파일에 대한 공유 액세스 서명을 지정할 수 있습니다. 버전 2015-04-05부터 다른 스토리지 계정에 있는 경우 대상 파일에 대한 공유 액세스 서명을 지정할 수도 있습니다.

메서드 요청 URI HTTP 버전
놓다 https://myaccount.file.core.windows.net/myshare/mydirectorypath/myfile HTTP/1.1

요청 URI에 표시된 경로 구성 요소를 다음과 같이 사용자 고유의 경로 구성 요소로 바꿉니다.

경로 구성 요소 묘사
myaccount 스토리지 계정의 이름입니다.
myshare 파일 공유의 이름입니다.
mydirectorypath 선택적. 부모 디렉터리의 경로입니다.
myfile 파일의 이름입니다.

경로 명명 제한에 대한 자세한 내용은 공유, 디렉터리, 파일 및 메타데이터 명명 및 참조를 참조하세요.

URI 매개 변수

요청 URI에 다음 추가 매개 변수를 지정할 수 있습니다.

매개 변수 묘사
timeout 선택적. timeout 매개 변수는 초 단위로 표현됩니다. 자세한 내용은 Azure Files 작업대한 시간 제한 설정을 참조하세요.

요청 헤더

필수 및 선택적 요청 헤더는 다음 표에 설명되어 있습니다.

일반적인 요청 헤더

요청 헤더 묘사
Authorization 필수. 권한 부여 체계, 계정 이름 및 서명을 지정합니다. 자세한 내용은 Azure Storage대한 요청 권한 부여를 참조하세요.
Date 또는 x-ms-date 필수. 요청에 대한 UTC(협정 세계시)를 지정합니다. 자세한 내용은 Azure Storage대한 요청 권한 부여를 참조하세요.
x-ms-version 모든 권한 있는 요청에 필요합니다. 이 요청에 사용할 작업의 버전을 지정합니다. 이 작업은 SMB 프로토콜이 설정된 파일 공유에 대해 버전 2015-02-21 이상에서 지원되며, NFS 프로토콜을 사용하도록 설정된 파일 공유에 대해 버전 2025-05-05 이상에서 지원됩니다.

자세한 내용은 Azure Storage 서비스 대한버전 관리를 참조하세요.
x-ms-meta-name:value 선택적. 파일과 연결된 이름/값 쌍을 메타데이터로 지정합니다. 이름/값 쌍이 지정되지 않은 경우 작업은 원본 Blob 또는 파일의 메타데이터를 대상 파일로 복사합니다. 하나 이상의 이름/값 쌍을 지정하면 대상 파일이 지정된 메타데이터를 사용하여 만들어지고 메타데이터는 원본 Blob 또는 파일에서 복사되지 않습니다. 메타데이터 이름은 C# 식별자에 대한 명명 규칙을 준수해야 합니다.

Azure Files를 통해 지정된 파일 메타데이터는 SMB 클라이언트에서 액세스할 수 없습니다.
x-ms-copy-source:name 필수. 원본 파일 또는 Blob의 URL을 최대 2kibibytes(KiB)까지 지정합니다.

동일한 스토리지 계정 내의 다른 파일에 파일을 복사하려면 공유 키를 사용하여 원본 파일에 권한을 부여할 수 있습니다. 다른 스토리지 계정에서 파일을 복사하거나 동일한 스토리지 계정 또는 다른 스토리지 계정에서 Blob을 복사하는 경우 공유 액세스 서명을 사용하여 원본 파일 또는 Blob에 권한을 부여해야 합니다. 원본이 공용 Blob인 경우 복사 작업을 수행하기 위해 권한 부여가 필요하지 않습니다. 공유 스냅샷의 파일을 복사 원본으로 지정할 수도 있습니다.

다음은 원본 개체 URL의 몇 가지 예입니다.
  • https://myaccount.file.core.windows.net/myshare/mydirectorypath/myfile
  • https://myaccount.blob.core.windows.net/mycontainer/myblob?sastoken
  • http://myaccount.file.core.windows.net/myshare/mydirectorypath/myfile?sharesnapshot=<DateTime>
x-ms-lease-id:<ID> 대상 파일에 활성 임대가 있는 경우 필요합니다. 버전 2019-02-02 이상에서 사용할 수 있습니다. 이 헤더에 지정된 임대 ID는 대상 파일의 임대 ID와 일치해야 합니다. 요청에 임대 ID가 포함되지 않거나 ID가 유효하지 않으면 상태 코드 412(사전 조건 실패)로 작업이 실패합니다.

이 헤더를 지정하고 대상 파일에 현재 활성 임대가 없으면 상태 코드 412(사전 조건 실패)로 작업이 실패합니다.

대상 파일이 파일 임대를 지원하지 않는 NFS 프로토콜이 설정된 파일 공유에 있는 경우 이 헤더는 무시됩니다.
x-ms-file-creation-time 선택적. 버전 2019-07-07 이상에서 사용할 수 있습니다. 이 헤더는 대상 파일에 설정할 생성 시간(UTC)에 대한 속성을 지정합니다. source 값을 사용하여 원본 파일에서 대상 파일로 만든 시간을 복사할 수 있습니다.
x-ms-file-last-write-time 선택적. 버전 2019-07-07 이상에서 사용할 수 있습니다. 이 헤더는 대상 파일에 설정할 마지막 쓰기 시간(UTC)에 대한 속성을 지정합니다. source 값을 사용하여 원본 파일에서 대상 파일로 마지막 쓰기 시간을 복사할 수 있습니다.
x-ms-client-request-id 선택적. 로깅이 구성될 때 로그에 기록되는 1KiB 문자 제한으로 클라이언트에서 생성된 불투명 값을 제공합니다. 이 헤더를 사용하여 클라이언트 쪽 활동과 서버가 수신하는 요청의 상관 관계를 지정하는 것이 좋습니다. 자세한 내용은 Azure Blob Storage 모니터링을 참조하세요.
x-ms-file-request-intent Authorization 헤더가 OAuth 토큰을 지정하는 경우 필수입니다. 허용되는 값은 backup. 이 헤더는 Authorization 헤더를 사용하여 권한이 부여된 ID에 할당된 RBAC 정책에 포함된 경우 Microsoft.Storage/storageAccounts/fileServices/readFileBackupSemantics/action 또는 Microsoft.Storage/storageAccounts/fileServices/writeFileBackupSemantics/action 부여하도록 지정합니다. 버전 2022-11-02 이상에서 사용할 수 있습니다.
x-ms-allow-trailing-dot: { <Boolean> } 선택적. 버전 2022-11-02 이상. 부울 값은 요청 URL에 있는 후행 점이 잘려야 하는지 여부를 지정합니다.

대상이 NFS 프로토콜을 사용하도록 설정된 파일 공유에 있는 경우 이 헤더는 무시됩니다. 이 헤더는 기본적으로 후행 점을 지원합니다.

자세한 내용은 공유, 디렉터리, 파일 및 메타데이터 명명 및 참조를 참조하세요.
x-ms-source-allow-trailing-dot: { <Boolean> } 선택적. 버전 2022-11-02 이상. 부울 값은 원본 URL에 있는 후행 점이 잘려야 하는지 여부를 지정합니다. 이 헤더는 복사 원본이 Azure 파일 공유에 있는 경우에만 지정해야 합니다. 이 헤더는 다른 복사 원본 유형에 대해 지원되지 않습니다.

복사 원본이 기본적으로 후행 점을 지원하는 NFS 프로토콜이 설정된 파일 공유에 있는 경우 이 헤더는 무시됩니다.

자세한 내용은 공유, 디렉터리, 파일 및 메타데이터 명명 및 참조를 참조하세요.

SMB 전용 요청 헤더

요청 헤더 묘사
x-ms-file-change-time: { <DateTime> ¦ source } 선택적. 버전 2021-06-08 이상. ISO 8601 형식으로 서식이 지정된 파일의 UTC 변경 시간 속성입니다. source 값을 사용하여 원본 파일에서 대상 파일로 변경 시간을 복사할 수 있습니다. 기본 타임스탬프는 요청의 시간입니다.
x-ms-file-permission-copy-mode: { source ¦ override } 선택적. 버전 2019-07-07 이상에서 사용할 수 있습니다. 파일의 보안 설명자의 복사 동작을 결정합니다.
  • source: 대상 파일의 보안 설명자가 원본 파일에서 복사됩니다.
  • override: 대상 파일의 보안 설명자는 x-ms-file-permission 또는 x-ms-file-permission-key 헤더를 통해 결정됩니다.
x-ms-file-permission: { <SDDL> ¦ <binary> } x-ms-file-permission-copy-mode override 지정되고 x-ms-file-permission-key 지정되지 않은 경우 필요합니다. 버전 2019-07-07 이상에서 사용할 수 있습니다. 이 권한은 SDDL(보안 설명자 정의 언어) 또는 base64로 인코딩된 이진 보안 설명자 형식(버전 2025-01-05 이상)에 지정된 파일에 대한 보안 설명자입니다. x-ms-file-permission-format 헤더에 사용할 형식을 지정할 수 있습니다. 사용 권한 크기가 8kibibytes(KiB) 이하인 경우 이 헤더를 사용할 수 있습니다. 그렇지 않으면 x-ms-file-permission-key사용할 수 있습니다. 지정된 경우 소유자, 그룹 및 DACL(임의 액세스 제어 목록)있어야 합니다.

x-ms-file-permission 또는 x-ms-file-permission-key 중 하나만 지정할 수 있습니다.
x-ms-file-permission-key x-ms-file-permission-copy-mode override 지정되고 x-ms-file-permission 지정되지 않은 경우 필요합니다. 버전 2019-07-07 이상에서 사용할 수 있습니다. 이 헤더는 파일에 대해 설정할 사용 권한의 키를 지정합니다. Create Permission 작업을 사용하여 이 키를 만들 수 있습니다.

x-ms-file-permission 또는 x-ms-file-permission-key 중 하나만 지정할 수 있습니다.
x-ms-file-permission-format: { sddl ¦ binary } 선택적. 버전 2025-01-05 이상. x-ms-file-permission 전달된 값이 SDDL인지 아니면 이진 형식인지를 지정합니다. 이 헤더를 설정하지 않으면 sddl 기본값이 사용됩니다.
x-ms-file-attributes 선택적. 버전 2019-07-07 이상에서 사용할 수 있습니다. 이 헤더는 대상 파일에 설정할 파일 시스템 특성을 지정합니다. 사용 가능한 특성목록을 참조하세요. source 값을 사용하여 원본 파일에서 대상 파일로 특성을 복사할 수 있습니다. none 값을 사용하여 대상 파일의 모든 특성을 지울 수 있습니다.
x-ms-file-copy-ignore-readonly 선택적. 버전 2019-07-07 이상에서 사용할 수 있습니다. 이 부울 값은 기존 대상 파일의 ReadOnly 특성을 준수해야 하는지 여부를 지정합니다. true복사 작업이 성공합니다. 그렇지 않으면 ReadOnly 특성 집합이 있는 대상의 이전 파일로 인해 복사 작업이 실패합니다.
x-ms-file-copy-set-archive 선택적. 버전 2019-07-07 이상에서 사용할 수 있습니다. 이 부울 값은 Archive 헤더 값과 관계없이 x-ms-file-attributes 특성을 설정할지 여부를 지정합니다.

NFS만 요청 헤더

요청 헤더 묘사
x-ms-file-mode-copy-mode: { source ¦ override } 선택적. 버전 2025-05-05 이상. 복사 원본이 NFS 프로토콜을 사용하도록 설정된 파일 공유에 있는 파일인 경우에만 적용됩니다. 파일 모드 비트의 복사 동작을 결정합니다.
  • source: 대상 파일의 모드가 원본 파일에서 복사됩니다.
  • override: 대상 파일의 모드는 x-ms-mode 헤더를 통해 결정됩니다.
x-ms-mode 버전 2025-05-05 이상. x-ms-file-mode-copy-mode override지정하는 경우 필수입니다. 파일에 설정할 모드 비트입니다. 모드는 12비트 숫자 8진수 형식 또는 기호화된 'rwx' 형식으로 표시됩니다. POSIX 파일 사용 권한(모드)참조하세요.
x-ms-file-owner-copy-mode: { source ¦ override } 선택적. 버전 2025-05-05 이상. 복사 원본이 NFS 프로토콜을 사용하도록 설정된 파일 공유에 있는 파일인 경우에만 적용됩니다. 파일의 UID(소유자 사용자 식별자) 및 GID(그룹 식별자)의 복사 동작을 결정합니다.
  • source: 대상 파일의 UID(소유자 사용자 식별자) 및 GID(그룹 식별자)가 원본 파일에서 복사됩니다.
  • override: 대상 파일의 UID(소유자 사용자 식별자) 및 GID(그룹 식별자)는 각각 x-ms-ownerx-ms-group 헤더를 통해 결정됩니다.
x-ms-owner 버전 2025-05-05 이상. 파일에 설정할 파일 소유자의 UID(사용자 식별자)입니다. x-ms-file-owner-copy-mode override지정하는 경우 필수입니다.
x-ms-group 버전 2025-05-05 이상. 파일에 설정할 파일 소유자의 GID(그룹 식별자)입니다. x-ms-file-owner-copy-mode override지정하는 경우 필수입니다.

요청 본문

없음.

응답

응답에는 HTTP 상태 코드와 응답 헤더 집합이 포함됩니다.

상태 코드

작업이 성공하면 상태 코드 202(수락됨)가 반환됩니다. 상태 코드에 대한 자세한 내용은 상태 및 오류 코드참조하세요.

응답 헤더

이 작업에 대한 응답에는 다음 표의 헤더가 포함됩니다. 응답에는 추가 표준 HTTP 헤더도 포함될 수 있습니다. 모든 표준 헤더는 HTTP/1.1 프로토콜 사양준수합니다.

일반적인 응답 헤더

응답 헤더 묘사
ETag 복사 작업이 완료되면 대상 파일의 ETag 값이 포함됩니다. 복사 작업이 완료되지 않은 경우 작업 시작 시 생성된 빈 파일의 ETag 값이 포함됩니다.
Last-Modified 대상 파일에 대한 복사 작업이 완료된 날짜/시간을 반환합니다.
x-ms-request-id 만들어진 요청을 고유하게 식별합니다. 이 헤더를 사용하여 요청 문제를 해결할 수 있습니다. 자세한 내용은 API 작업문제 해결을 참조하세요.
x-ms-version 요청을 실행하는 데 사용되는 Azure Files의 버전을 나타냅니다.
Date 서비스에서 응답을 보낸 시간을 나타내는 UTC 날짜/시간 값입니다.
x-ms-copy-id: <id> 이 복사 작업에 대한 문자열 식별자를 제공합니다. Get File 또는 Get File Properties 사용하여 이 복사 작업의 상태를 확인하거나 Abort Copy File 전달하여 보류 중인 복사 작업을 취소합니다.
x-ms-copy-status: <success ¦ pending> 다음 값을 사용하여 복사 작업의 상태를 나타냅니다.

- success: 복사 작업이 성공적으로 완료되었습니다.
- pending: 복사 작업이 아직 진행 중입니다.
x-ms-client-request-id 요청 및 해당 응답 문제를 해결하는 데 사용할 수 있습니다. 이 헤더의 값은 요청에 있고 값이 최대 1,024개의 표시되는 ASCII 문자인 경우 x-ms-client-request-id 헤더의 값과 같습니다. 요청에 x-ms-client-request-id 헤더가 없으면 이 헤더가 응답에 표시되지 않습니다.

SMB 전용 응답 헤더

없음.

NFS만 응답 헤더

없음.

응답 본문

없음

샘플 응답

Response Status:  
HTTP/1.1 202 Accepted  
  
Response Headers:   
Last-Modified: <date>   
ETag: "0x8CEB669D794AFE2"  
Server: Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0  
x-ms-request-id: cc6b209a-b593-4be1-a38a-dde7c106f402  
x-ms-version: 2015-02-21  
x-ms-copy-id: 1f812371-a41d-49e6-b123-f4b542e851c5  
x-ms-copy-status: pending  
Date: <date>  

권한 부여

이 작업은 계정 소유자 또는 대상 파일 또는 해당 공유에 쓸 수 있는 권한이 있는 공유 액세스 서명을 소유한 클라이언트에서 호출할 수 있습니다. 요청에 지정된 공유 액세스 서명은 대상 파일에만 적용됩니다.

요청 헤더 x-ms-copy-source대한 세부 정보에 설명된 대로 원본 파일 또는 Blob에 대한 액세스 권한은 별도로 부여됩니다.

다음 표에서는 Copy File 작업의 대상 및 원본 개체에 권한을 부여하는 방법을 설명합니다.

파일 공유 키 또는 공유 키 라이트를 사용한 권한 부여 공유 액세스 서명을 사용한 권한 부여 권한 부여가 필요하지 않은 공용 개체
대상 파일 해당 없음
동일한 계정의 원본 파일 해당 없음
다른 계정의 원본 파일 아니요 해당 없음
동일한 계정 또는 다른 계정의 원본 Blob 아니요

파일 시스템 특성

속성 Win32 파일 특성 정의
ReadOnly FILE_ATTRIBUTE_READONLY 파일이 읽기 전용입니다. 애플리케이션은 파일을 읽을 수 있지만 파일을 읽거나 삭제할 수는 없습니다.
Hidden FILE_ATTRIBUTE_HIDDEN 파일이 숨겨져 있습니다. 일반 디렉터리 목록에는 포함되지 않습니다.
System FILE_ATTRIBUTE_SYSTEM 운영 체제는 파일의 일부를 사용하거나 파일을 단독으로 사용합니다.
None FILE_ATTRIBUTE_NORMAL 파일에 다른 특성 집합이 없습니다. 이 특성은 단독으로 사용되는 경우에만 유효합니다.
Archive FILE_ATTRIBUTE_ARCHIVE 파일이 보관 파일입니다. 애플리케이션은 일반적으로 이 특성을 사용하여 백업 또는 제거를 위해 파일을 표시합니다.
Temporary FILE_ATTRIBUTE_TEMPORARY 파일이 임시 스토리지에 사용되고 있습니다.
Offline FILE_ATTRIBUTE_OFFLINE 파일의 데이터는 즉시 사용할 수 없습니다. 이 파일 시스템 특성은 주로 Windows와의 호환성을 제공합니다. Azure Files는 오프라인 스토리지 옵션을 지원하지 않습니다.
NotContentIndexed FILE_ATTRIBUTE_NOT_CONTENT_INDEXED 콘텐츠 인덱싱 서비스는 파일을 인덱싱하지 않습니다.
NoScrubData FILE_ATTRIBUTE_NO_SCRUB_DATA 백그라운드 데이터 무결성 스캐너는 사용자 데이터 스트림을 읽지 않습니다. 이 파일 시스템 특성은 주로 Windows와의 호환성을 제공합니다.

POSIX 파일 권한(모드)

POSIX 파일 사용 권한은 숫자로 12비트 숫자 8진수 형식 또는 기호화된 "rwx" 형식으로 지정할 수 있습니다. 예제:

  • "0644" 또는 "rw-r--r--": 사용자(파일 소유자)에게 읽기, 쓰기 권한이 있습니다. 그룹에 읽기 권한이 있습니다. 다른 사용자에게는 읽기 권한이 있습니다.
  • "0755" 또는 "rwxr-xr-x": 사용자(파일 소유자)에게 읽기, 쓰기 및 실행 권한이 있습니다. 그룹에 읽기 및 실행 권한이 있습니다. 다른 사용자에게는 읽기 및 실행 권한이 있습니다.

숫자 8진수 형식

3개의 가장 낮은 순서 8진수는 소유자/사용자, 그룹 등에 대한 사용 권한을 나타내며 8진수(0-7)를 사용하여 '4'(읽기), '2'(쓰기), '1'(실행)의 비트 조합을 사용하여 구성됩니다. 가장 높은 순서의 8진수(0-7)는 '4'(SetUID), '2'(SetGID), '1'(StickyBit) 권한의 조합을 나타내는 데 사용됩니다.

허가
0700 사용자(파일 소유자)에게 읽기, 쓰기 및 실행 권한이 있습니다.
0400 사용자에게 읽기 권한이 있습니다.
0200 사용자에게 쓰기 권한이 있습니다.
0100 사용자에게 실행 권한이 있습니다.
0070 그룹에 읽기, 쓰기 및 실행 권한이 있습니다.
0040 그룹에 읽기 권한이 있습니다.
0020 그룹에 쓰기 권한이 있습니다.
0010 그룹에 실행 권한이 있습니다.
0007 다른 사용자에게는 읽기, 쓰기 및 실행 권한이 있습니다.
0004 다른 사용자에게는 읽기 권한이 있습니다.
0002 다른 사용자에게는 쓰기 권한이 있습니다.
0001 다른 사용자에게는 실행 권한이 있습니다.
4000 파일에 유효한 사용자 ID를 설정합니다.
2000 파일에 유효 그룹 ID를 설정합니다.
1000 파일 소유자, 디렉터리 소유자 또는 루트 사용자만 파일을 삭제하거나 이름을 바꿀 수 있음을 나타내도록 설정합니다.

기호화된 "rwx" 형식

소유자/사용자, 그룹 등에 대한 사용 권한은 'r'(읽기), 'w'(쓰기) 및 'x'(실행) 문자의 조합을 사용하여 표시됩니다.

허가
rwx------ 사용자(파일 소유자)에게 읽기, 쓰기 및 실행 권한이 있습니다.
r-------- 사용자에게 읽기 권한이 있습니다.
-w------- 사용자에게 쓰기 권한이 있습니다.
--x------ 사용자에게 실행 권한이 있습니다.
---rwx--- 그룹에 읽기, 쓰기 및 실행 권한이 있습니다.
---r----- 그룹에 읽기 권한이 있습니다.
----w---- 그룹에 쓰기 권한이 있습니다.
-----x--- 그룹에 실행 권한이 있습니다.
------rwx 다른 사용자에게는 읽기, 쓰기 및 실행 권한이 있습니다.
------r-- 다른 사용자에게는 읽기 권한이 있습니다.
-------w- 다른 사용자에게는 쓰기 권한이 있습니다.
--------x 다른 사용자에게는 실행 권한이 있습니다.

발언

Copy File 작업은 비동기적으로 완료할 수 있습니다. x-ms-copy-id 응답 헤더가 반환하는 복사 ID를 사용하여 복사 작업의 상태를 확인하거나 취소할 수 있습니다. Azure Files는 최상의 노력으로 파일을 복사합니다.

대상 파일이 있으면 덮어씁니다. 복사 작업이 진행 중인 동안에는 대상 파일을 수정할 수 없습니다.

Copy File 작업은 항상 전체 원본 Blob 또는 파일을 복사합니다. 바이트 범위 또는 블록 집합 복사는 지원되지 않습니다.

Copy File 작업의 원본은 공유 스냅샷에 있는 파일일 수 있습니다. Copy File 작업의 대상은 공유 스냅샷에 있는 파일이 될 수 없습니다.

복사 작업의 원본이 ETag 값을 제공하는 경우 작업이 진행되는 동안 원본에 변경 내용이 있으면 실패합니다. 복사 작업이 진행 중인 동안 대상 파일을 변경하려는 시도가 상태 코드 409(충돌)로 실패합니다.

대상 파일의 ETag 값은 Copy File 작업이 시작될 때 변경됩니다. 복사 작업 중에 자주 변경됩니다.

속성 및 메타데이터 복사

Blob 또는 파일이 복사되면 다음 시스템 속성이 동일한 값을 가진 대상 파일에 복사됩니다.

  • Content-Type
  • Content-Encoding
  • Content-Language
  • Content-Length
  • Cache-Control
  • Content-MD5
  • Content-Disposition

대상 파일은 항상 원본 Blob 또는 파일과 같은 크기입니다. 대상 파일의 Content-Length 헤더 값은 원본 Blob 또는 파일에 대한 해당 헤더의 값과 일치합니다.

임대된 Blob 또는 파일을 파일에 복사

Copy File 작업은 원본 Blob 또는 파일에서만 읽기 때문에 원본 개체에 대한 임대는 작업에 영향을 주지 않습니다. Copy File 작업은 작업이 시작될 때 원본 Blob 또는 파일의 ETag 값을 저장합니다. 복사 작업이 완료되기 전에 ETag 값이 변경되면 작업이 실패합니다. 복사 작업 중에 임대하여 파일의 원본 Blob에 대한 변경 내용을 방지할 수 있습니다.

대상 파일에 활성 무한 임대가 있는 경우 Copy File 작업에 대한 호출에서 해당 임대 ID를 지정해야 합니다. 복사 작업이 보류 중인 동안 대상 파일의 임대 작업은 상태 코드 409(충돌)로 실패합니다. 원본과 이름이 다른 대상 파일로 복사하거나 원본과 동일한 이름을 가진 대상 파일로 복사하는 경우 복사 작업 중에 대상 파일에 대한 무한 임대가 이 방식으로 잠깁니다. 클라이언트가 아직 존재하지 않는 파일에 임대 ID를 지정하는 경우 Azure Files는 상태 코드 412(사전 조건 실패)를 반환합니다.

보류 중인 복사 작업 작업

Copy File 작업은 파일 복사를 비동기적으로 완료할 수 있습니다. 다음 표를 사용하여 Copy File 반환하는 상태 코드를 기반으로 다음 단계를 결정합니다.

상태 코드 의미
202(수락됨), x-ms-copy-status: success 복사 작업이 성공적으로 완료되었습니다.
202(수락됨), x-ms-copy-status: 보류 중 복사 작업이 완료되지 않았습니다. 복사 작업이 완료되거나 실패할 때까지 Get File Properties 사용하여 대상 Blob을 폴링하여 x-ms-copy-status 검사합니다.
4xx, 500 또는 503 복사 작업이 실패했습니다.

Copy File 작업 중 및 후에 대상 파일의 속성에는 Copy File 작업의 복사 ID와 원본 Blob 또는 파일의 URL이 포함됩니다. 작업이 완료되면 Azure Files는 시간 및 결과 값(success, failed또는 aborted)을 대상 파일의 속성에 씁니다. 작업에 failed 결과가 있으면 x-ms-copy-status-description 헤더에 오류 세부 정보 문자열이 포함됩니다.

보류 중인 Copy File 작업에는 2주 제한 시간이 있습니다. 2주 후에 완료되지 않은 복사 시도이며 x-ms-copy-status 필드가 failed 설정되고 x-ms-status-description 필드가 500(OperationCancelled)으로 설정된 빈 파일을 남깁니다. 복사 작업 중에 발생할 수 있는 일시적인 치명적이지 않은 오류는 작업의 진행을 방해할 수 있지만 실패하지는 않을 수 있습니다. 이러한 경우 x-ms-copy-status-description 일시적인 오류를 설명합니다.

복사 작업 중에 대상 파일을 수정하려는 시도는 상태 코드 409(충돌), "진행 중인 파일 복사"로 실패합니다.

Abort Copy File 작업을 호출하면 x-ms-copy-status:aborted 헤더가 표시됩니다. 대상 파일에는 그대로 메타데이터와 파일 길이가 0바이트입니다. Copy File 원래 호출을 반복하여 작업을 다시 시도할 수 있습니다.

과금

Copy File 작업의 대상 계정은 작업을 시작하기 위해 하나의 트랜잭션에 대해 요금이 청구됩니다. 또한 대상 계정에는 복사 작업의 상태를 취소하거나 요청하는 각 요청에 대해 하나의 트랜잭션이 발생합니다.

원본 파일 또는 Blob이 다른 계정에 있는 경우 원본 계정에 트랜잭션 비용이 발생합니다. 또한 원본 및 대상 계정이 다른 지역(예: 미국 북부 및 미국 남부)에 있는 경우 요청을 전송하는 데 사용하는 대역폭은 송신으로 원본 계정에 청구됩니다. 동일한 지역 내의 계정 간 송신은 무료입니다.

참고 항목