강제 닫기 핸들
작업은 Force Close Handles
디렉터리 또는 파일에서 열린 핸들 또는 핸들을 닫습니다. 파일 또는 디렉터리의 핸들 ID로 지정된 단일 핸들을 닫을 수 있습니다. 또한 해당 리소스에서 열린 모든 핸들을 닫는 것도 지원합니다. 필요에 따라 리소스가 디렉터리일 때 하위 리소스에서 재귀적으로 핸들을 닫을 수 있습니다.
목록 핸들과 함께 이 작업을 사용하여 디렉터리 이름 바꾸기와 같은 작업을 차단하는 핸들을 강제로 닫습니다. SMB 클라이언트는 이러한 핸들의 추적이 유출되거나 손실되었을 수 있습니다. 이 작업은 파일 읽기 또는 쓰기 시도 실패로 인한 사용자 표시 오류를 포함하여 닫는 핸들에 클라이언트 쪽 영향을 줍니다. 이 작업은 SMB 세션을 닫기 위한 대체 또는 대안으로 사용되지 않습니다.
이 작업은 버전 2018-11-09 이상에서 사용할 수 있습니다.
프로토콜 가용성
파일 공유 프로토콜 사용 | 사용 가능 |
---|---|
SMB | |
NFS |
요청
다음과 같이 요청을 생성할 Force Close Handles
수 있습니다. HTTPS를 사용하는 것이 좋습니다.
메서드 | 요청 URI | HTTP 버전 |
---|---|---|
PUT |
https://myaccount.file.core.windows.net/myshare/mydirectorypath/myfileordirectory?comp=forceclosehandles |
HTTP/1.1 |
다음과 같이 요청 URI에 표시된 경로 구성 요소를 사용자 경로 구성 요소로 바꿉니다.
경로 구성 요소 | Description |
---|---|
myaccount |
사용자 스토리지 계정의 이름입니다. |
myshare |
파일 공유 이름입니다. |
mydirectorypath |
(선택 사항) 디렉터리 경로입니다. |
myfileordirectory |
파일 또는 디렉터리의 이름입니다. |
경로 명명 제한에 대한 자세한 내용은 공유, 디렉터리, 파일 및 메타데이터 명명 및 참조를 참조하세요.
URI 매개 변수
URI에 다음 추가 매개 변수를 지정할 수 있습니다.
매개 변수 | Description |
---|---|
timeout |
(선택 사항) 초 단위로 표현됩니다. 자세한 내용은 파일 서비스 작업에 대한 시간 제한 설정을 참조하세요. |
marker |
(선택 사항) 다음 Force Close Handles 작업으로 닫을 핸들의 위치를 식별하는 문자열 값입니다. 닫을 핸들이 더 있는 경우 작업은 응답 본문 내에서 표식 값을 반환합니다. 그런 다음, 후속 호출에서 표식 값을 사용하여 다음 핸들 집합을 닫을 수 있습니다.마커 값은 클라이언트에 불투명합니다. |
sharesnapshot |
(선택 사항) 불투명 날짜/시간 값입니다. 있는 경우 핸들 목록을 쿼리할 공유 스냅샷 지정합니다. |
요청 헤더
다음 표에서는 필수 및 선택적 요청 헤더에 대해 설명합니다.
요청 헤더 | Description |
---|---|
Authorization |
필수 요소. 권한 부여 체계, 계정 이름 및 서명을 지정합니다. 자세한 내용은 Azure Storage에 대한 요청 권한 부여를 참조하세요. |
Date 또는 x-ms-date |
필수 요소. 요청에 대한 UTC(협정 세계시)를 지정합니다. 자세한 내용은 Azure Storage에 대한 요청 권한 부여를 참조하세요. |
x-ms-version |
모든 권한 있는 요청에 필요하지만 익명 요청에는 선택 사항입니다. 이 요청에 사용할 작업의 버전을 지정합니다. 자세한 내용은 Azure Storage 서비스에 대한 버전 관리를 참조하세요. |
x-ms-client-request-id |
(선택 사항) 로깅이 구성될 때 로그에 기록되는 1키비바이트(KiB) 문자 제한으로 클라이언트에서 생성된 불투명 값을 제공합니다. 이 헤더를 사용하여 클라이언트 쪽 활동과 서버가 수신하는 요청의 상관 관계를 지정하는 것이 좋습니다. |
x-ms-handle-id |
필수 요소. 닫을 핸들 ID를 지정합니다. 모든 핸들을 지정하려면 별표(*)를 와일드카드 문자열로 사용합니다. |
x-ms-recursive |
(선택 사항) 작업이 URI에 지정된 디렉터리의 파일 및 하위 디렉터리에도 적용되어야 하는지 여부를 지정하는 부울 값입니다. |
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에 있는 후행 점을 잘라내야 하는지 여부를 지정합니다. 자세한 내용은 공유, 디렉터리, 파일 및 메타데이터 이름 지정 및 참조를 참조하세요. |
요청 본문
없음
응답
응답에는 HTTP 상태 코드, 응답 헤더 집합 및 응답 본문이 XML 형식으로 포함되어 있습니다.
상태 코드
작업에 성공하면 상태 코드 200(정상)이 반환됩니다.
상태 코드에 대한 자세한 내용은 상태 및 오류 코드를 참조하세요.
응답 헤더
이 작업의 응답에는 다음과 같은 헤더가 포함됩니다. 응답에는 추가 표준 HTTP 헤더도 포함될 수 있습니다. 모든 표준 헤더는 HTTP/1.1 프로토콜 사양을 준수합니다.
응답 헤더 | Description |
---|---|
x-ms-request-id |
만들어진 요청을 고유하게 식별합니다. 요청을 해결하는 데 사용할 수 있습니다. 자세한 내용은 API 작업 문제 해결을 참조하세요. |
x-ms-version |
요청을 실행하는 데 사용되는 Azure Files 버전을 나타냅니다. |
Date |
서비스에서 응답을 보낸 시간을 나타내는 UTC 날짜/시간 값입니다. |
x-ms-marker |
닫을 다음 핸들에 대해 설명합니다. 이 문자열은 요청을 완료하기 위해 더 많은 핸들을 닫아야 할 때 반환됩니다. 문자열은 후속 요청에서 나머지 핸들을 강제로 닫는 데 사용됩니다. 이 없 x-ms-marker 을 경우 모든 관련 핸들이 닫혔습니다. |
x-ms-number-of-handles-closed |
닫힌 핸들 수를 나타냅니다. |
x-ms-number-of-handles-failed |
닫지 못한 핸들 수를 나타냅니다. |
x-ms-client-request-id |
요청 및 해당 응답 문제를 해결하는 데 사용할 수 있습니다. 이 헤더의 값은 헤더의 값 x-ms-client-request-id 과 같으며, 요청에 있고 값이 최대 1,024자 표시 ASCII 문자인 경우 입니다. 헤더가 x-ms-client-request-id 요청에 없는 경우 이 헤더는 응답에 존재하지 않습니다. |
응답 본문
비어 있음
권한 부여
계정 소유자만 이 작업을 호출할 수 있습니다.
설명
요청을 처리하는 동안 핸들이 닫혀 있지 않으면(예: 제공된 x-ms-handle-id
값이 잘못된 핸들을 지정하거나 제공된 파일 또는 디렉터리에서 열린 핸들을 찾을 수 없음) 을 사용하여 200(OK) 상태 응답을 x-ms-number-of-handles-closed=0
받게 됩니다.
헤더는 x-ms-recursive
디렉터리에만 유효합니다. 파일에 대해 지정하면 400(잘못된 요청) 응답이 표시됩니다.
를 사용하여 열린 FILE_FLAG_DELETE_ON_CLOSE
핸들을 강제로 닫으면 파일이 삭제되지 않을 수 있습니다.
목록 핸들은 서비스 쪽 핸들 ID를 반환 x-ms-handle-id
합니다. 이 핸들 ID는 SMB 또는 애플리케이션이 유지 관리하는 해당 클라이언트 쪽 핸들과 다릅니다.