파일 만들기

Create File 작업에서는 새 파일을 만들거나 파일을 바꿉니다. 를 호출 Create File할 때는 파일만 초기화합니다. 파일에 콘텐츠를 추가하려면 작업을 호출합니다 Put Range .

프로토콜 가용성

파일 공유 프로토콜 사용 사용 가능
SMB Yes
NFS 아니요

요청

다음을 Create File 수행하여 요청을 생성할 수 있습니다. HTTPS를 사용하는 것이 좋습니다.

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

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

경로 구성 요소 설명
myaccount 사용자 스토리지 계정의 이름입니다.
myshare 파일 공유 이름입니다.
mydirectorypath 선택 사항입니다. 파일을 만들 디렉터리의 경로입니다. 디렉터리 경로가 생략되면 지정된 공유 내에 파일이 생성됩니다.

디렉터리가 지정된 경우 파일을 만들려면 먼저 공유 내에 이미 있어야 합니다.
myfile 만들 파일의 이름입니다.

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

URI 매개 변수

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

매개 변수 설명
timeout 선택 사항입니다. timeout 매개 변수는 초 단위로 표시됩니다. 자세한 내용은 파일 서비스 작업에 대한 시간 제한 설정을 참조하세요.

요청 헤더

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

요청 헤더 Description
Authorization 필수 사항입니다. 권한 부여 체계, 계정 이름 및 서명을 지정합니다. 자세한 내용은 Azure Storage에 대한 요청 권한 부여를 참조하세요.
Date 또는 x-ms-date 필수 사항입니다. 요청의 UCT(협정 세계시) 시간을 지정합니다. 자세한 내용은 Azure Storage에 대한 요청 권한 부여를 참조하세요.
x-ms-version 모든 권한 있는 요청에 필요합니다. 이 요청에 사용할 작업의 버전을 지정합니다. 자세한 내용은 Azure Storage 서비스에 대한 버전 관리를 참조하세요.
Content-Length 선택 사항입니다. 있는 경우 0이어야 합니다.
x-ms-content-length: byte value 필수 사항입니다. 이 헤더는 파일의 최대 크기(최대 4TiB)를 지정합니다.
Content-Type 또는 x-ms-content-type (선택 사항) 파일의 MIME 콘텐츠 형식입니다. 기본 형식은 application/octet-stream입니다.
Content-Encoding 또는 x-ms-content-encoding (선택 사항) 파일에 적용된 콘텐츠 인코딩을 지정합니다. 이 값은 파일 리소스에서 파일 가져오기 작업을 수행할 때 클라이언트에 반환되며 이를 사용하여 파일 콘텐츠를 디코딩할 수 있습니다.
Content-Language 또는 x-ms-content-language (선택 사항) 이 리소스에서 사용되는 자연어를 지정합니다.
Cache-Control 또는 x-ms-cache-control (선택 사항) Azure Files 이 값을 저장하지만 사용하거나 수정하지는 않습니다.
x-ms-content-md5 선택 사항입니다. 파일의 MD5 해시를 설정합니다.
x-ms-content-disposition 선택 사항입니다. 파일의 헤더를 Content-Disposition 설정합니다.
x-ms-type: file 필수 사항입니다. 이 헤더를 file로 설정합니다.
x-ms-meta-name:value 선택 사항입니다. 파일과 메타데이터로 연결된 이름-값 쌍입니다. 메타데이터 이름은 C# 식별자에 대한 명명 규칙을 준수해야 합니다.

참고: Azure Files 통해 지정된 파일 메타데이터는 SMB(서버 메시지 블록) 클라이언트에서 액세스할 수 없습니다.
x-ms-file-permission: { inherit ¦ <SDDL> } 버전 2019-02-02~2021-04-10에서는 이 헤더가 지정되지 않은 경우 x-ms-file-permission-key 필요합니다. 버전 2021-06-08을 기준으로 두 헤더는 모두 선택 사항입니다. 이 권한은 SDDL(보안 설명자 정의 언어)에 지정된 파일의 보안 설명자입니다. 사용 권한 크기가 8kibibytes(KiB) 이하인 경우 이 헤더를 사용할 수 있습니다. 그렇지 않으면 를 사용할 x-ms-file-permission-key수 있습니다. 헤더를 지정하는 경우 소유자, 그룹 및 DACL(임의 액세스 제어 목록)이 있어야 합니다. 부모 디렉터리에서 상속할 값을 inherit 전달할 수 있습니다.
x-ms-file-permission-key: <PermissionKey> 버전 2019-02-02~2021-04-10에서는 이 헤더가 지정되지 않은 경우 x-ms-file-permission 필요합니다. 버전 2021-06-08을 기준으로 두 헤더는 모두 선택 사항입니다. 두 헤더를 모두 지정하지 않으면 의 기본값 inherit 이 헤더에 x-ms-file-permission 사용됩니다.

API를 호출 Create Permission 하여 키를 만들 수 있습니다.
x-ms-file-attributes 필수: 버전 2019-02-02~2021-04-10. 선택 사항: 버전 2021-06-08 이상. 이 헤더에는 파일에 설정할 파일 시스템 특성이 포함되어 있습니다. 자세한 내용은 사용 가능한 특성 목록을 참조하세요. 기본값은 None입니다.
x-ms-file-creation-time: { now ¦ <DateTime> } 필수: 버전 2019-02-02~2021-04-10. 선택 사항: 버전 2021-06-08 이상. 파일에 대한 UTC(협정 세계시) 생성 시간 속성입니다. 의 값을 now 사용하여 요청 시간을 나타낼 수 있습니다. 기본값은 now입니다.
x-ms-file-last-write-time: { now ¦ <DateTime> } 필수: 버전 2019-02-02~2021-04-10. 선택 사항: 버전 2021-06-08 이상. 파일에 대한 UTC(협정 세계시) 마지막 쓰기 속성입니다. 값을 now 사용하여 요청 시간을 나타낼 수 있습니다. 기본값은 now입니다.
x-ms-lease-id: <ID> 파일에 활성 임대가 있는 경우 필요합니다. 버전 2019-02-02 이상에 사용할 수 있습니다.
x-ms-client-request-id 선택 사항입니다. 로깅이 구성될 때 로그에 기록되는 1키비바이트(KiB) 문자 제한으로 클라이언트에서 생성된 불투명 값을 제공합니다. 이 헤더를 사용하여 클라이언트 쪽 활동과 서버가 수신하는 요청의 상관 관계를 지정하는 것이 좋습니다. 자세한 내용은 Azure Files 모니터링을 참조하세요.
x-ms-file-change-time: { now ¦ <DateTime> } 선택 사항입니다. 버전 2021-06-08 이상. ISO 8601 형식으로 파일에 대한 UTC(협정 세계시) 변경 시간 속성입니다. 값을 now 사용하여 요청 시간을 나타낼 수 있습니다. 기본값은 now입니다.
x-ms-file-request-intent 헤더가 OAuth 토큰을 지정하는 경우 Authorization 필수입니다. 허용되는 값은 입니다 backup. 이 헤더는 헤더를 Microsoft.Storage/storageAccounts/fileServices/readFileBackupSemantics/action 사용하여 Authorization 권한이 부여된 ID에 할당된 RBAC 정책에 포함되는 경우 또는 Microsoft.Storage/storageAccounts/fileServices/writeFileBackupSemantics/action 를 부여하도록 지정합니다. 버전 2022-11-02 이상에 사용할 수 있습니다.
x-ms-allow-trailing-dot: { <Boolean> } 선택 사항입니다. 버전 2022-11-02 이상. 부울 값은 요청 URL에 있는 후행 점을 잘라내야 하는지 여부를 지정합니다. 자세한 내용은 공유, 디렉터리, 파일 및 메타데이터 이름 지정 및 참조를 참조하세요.

요청 본문

없음

샘플 요청

Request Syntax:  
PUT https://myaccount.file.core.windows.net/myshare/myfile HTTP/1.1  
  
Request Headers:  
x-ms-version: 2020-02-10
x-ms-date: Mon, 27 Jan 2014 22:41:55 GMT  
Content-Type: text/plain; charset=UTF-8  
x-ms-content-length: 1024  
Authorization: SharedKey myaccount:YhuFJjN4fAR8/AmBrqBz7MG2uFinQ4rkh4dscbj598g=  
  

응답

응답에는 HTTP 상태 코드 및 응답 헤더 집합이 포함되어 있습니다.

상태 코드

작업에 성공하면 상태 코드 201(만들어짐)이 반환됩니다.

상태 코드에 대한 자세한 내용은 상태 및 오류 코드를 참조하세요.

응답 헤더

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

응답 헤더 Description
ETag ETag에는 파일의 버전을 나타내는 값이 포함되어 있습니다. 값은 따옴표로 묶입니다.
Last-Modified 파일이 마지막으로 수정된 날짜와 시간을 반환합니다. 날짜 형식은 RFC 1123을 따릅니다. 자세한 내용은 머리글의 날짜/시간 값 표시를 참조하세요.

디렉터리 또는 해당 속성을 수정하는 모든 작업을 수행하면 마지막 수정 시간이 업데이트됩니다. 파일에 대한 작업은 디렉터리의 마지막으로 수정된 시간에 영향을 주지 않습니다.
x-ms-request-id 만들어진 요청을 고유하게 식별하며 요청 문제 해결에 사용할 수 있습니다. 자세한 내용은 API 작업 문제 해결을 참조하세요.
x-ms-version 요청을 실행하는 데 사용되는 Azure Files 버전을 나타냅니다.
Date 서비스에서 생성된 UTC 날짜/시간 값으로, 응답이 시작된 시간을 나타냅니다.
x-ms-request-server-encrypted: true/false 버전 2017-04-17 이상. 지정된 알고리즘을 true 사용하여 요청 내용을 성공적으로 암호화한 경우 이 헤더의 값이 로 설정됩니다. 암호화에 실패하면 값은 입니다 false.
x-ms-file-permission-key 파일 사용 권한의 키입니다.
x-ms-file-attributes 파일의 파일 시스템 특성입니다. 자세한 내용은 사용 가능한 특성 목록을 참조하세요.
x-ms-file-creation-time 파일의 생성 시간 속성을 나타내는 UTC 날짜/시간 값입니다.
x-ms-file-last-write-time 파일의 마지막 쓰기 시간 속성을 나타내는 UTC 날짜/시간 값입니다.
x-ms-file-change-time 파일의 변경 시간 속성을 나타내는 UTC 날짜/시간 값입니다.
x-ms-file-file-id 파일의 파일 ID입니다.
x-ms-file-parent-id 파일의 부모 파일 ID입니다.
x-ms-client-request-id 요청 및 해당 응답의 문제를 해결하는 데 사용됩니다. 이 헤더의 값 x-ms-client-request-id 은 요청에 있고 값에 표시되는 ASCII 문자가 1,024자 이하인 경우 헤더 값과 같습니다. 헤더가 x-ms-client-request-id 요청에 없는 경우 응답에 없습니다.

응답 본문

없음

샘플 응답

Response Status:  
HTTP/1.1 201 Created  
  
Response Headers:  
Transfer-Encoding: chunked  
Date: Mon, 27 Jan 2014 23:00:12 GMT  
ETag: "0x8CB14C3E29B7E82"  
Last-Modified: Mon, 27 Jan 2014 23:00:06 GMT  
x-ms-version: 2014-02-14  
Server: Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0  

권한 부여

계정 소유자만 이 작업을 호출할 수 있습니다.

파일 시스템 특성

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

설명

새 파일을 만들려면 먼저 를 호출 Create File 하고 최대 크기(최대 4TiB)를 지정하여 초기화합니다. 이 작업을 수행하는 경우 요청 본문에 콘텐츠를 포함하지 마세요. 파일을 만든 후 를 호출 Put Range 하여 파일에 콘텐츠를 추가하거나 수정합니다.

Set File Properties을 호출하여 파일의 크기를 변경할 수 있습니다.

공유 또는 부모 디렉터리가 없으면 상태 코드 412(사전 조건 실패)로 인해 작업이 실패합니다.

참고

파일 속성 cache-control, content-type, content-md5, content-encodingcontent-language 는 SMB 클라이언트에서 사용할 수 있는 파일 시스템 속성과 별개입니다. SMB 클라이언트는 이러한 속성 값을 읽거나 쓰거나 수정할 수 없습니다.

파일을 만들려면 기존 파일에 활성 임대가 있는 경우 클라이언트는 요청에 유효한 임대 ID를 지정해야 합니다. 클라이언트가 임대 ID를 지정하지 않거나 잘못된 임대 ID를 지정하는 경우 Azure Files 상태 코드 412(사전 조건 실패)를 반환합니다. 클라이언트가 임대 ID를 지정하지만 파일에 활성 임대가 없는 경우 Azure Files 이 instance 상태 코드 412(사전 조건 실패)를 반환합니다. 클라이언트가 아직 존재하지 않는 파일에 임대 ID를 지정하는 경우 Azure Files 버전 2019-02-02 이상에 대해 수행된 요청에 대해 상태 코드 412(사전 조건 실패)를 반환합니다.

활성 임대가 있는 기존 파일을 작업에 의해 Create File 덮어쓰는 경우 임대는 릴리스될 때까지 업데이트된 파일에 유지됩니다.

Create File는 공유의 읽기 전용 복사본인 공유 스냅샷 지원되지 않습니다. 공유 스냅샷 이 작업을 수행하려는 시도가 상태 코드 400(InvalidQueryParameterValue)으로 인해 실패합니다.

추가 정보

Azure Files 작업