Sdílet prostřednictvím


Vynucení popisovačů zavření

Operace Force Close Handles zavře popisovač nebo popisovače otevřené v adresáři nebo souboru. Podporuje zavření jednoho popisovače určeného ID popisovače v souboru nebo adresáři. Podporuje také zavření všech popisovačů otevřených u daného prostředku. Volitelně podporuje rekurzivní zavření popisovačů v podsourcech, pokud je prostředek adresářem.

Tuto operaci použijete společně s popisovači seznamu k vynucení zavření popisovačů, které blokují operace, jako je přejmenování adresáře. Klienti SMB možná unikli nebo ztratili přehled o těchto popisovačích. Operace má vliv na popisovač, který zavřete, včetně chyb viditelných uživatelem kvůli neúspěšným pokusům o čtení nebo zápisu souborů. Tato operace není určená jako náhrada nebo alternativa pro zavření relace SMB.

Tato operace je dostupná ve verzi 2018-11-09 a novější.

Dostupnost protokolu

Povolený protokol sdílené složky K dispozici
SMB Ano
NFS Bez

Prosba

Požadavek Force Close Handles je vytvořen následujícím způsobem. Doporučujeme používat PROTOKOL HTTPS.

Metoda Identifikátor URI požadavku Verze HTTP
DÁT https://myaccount.file.core.windows.net/myshare/mydirectorypath/myfileordirectory?comp=forceclosehandles HTTP/1.1

Součásti cesty zobrazené v identifikátoru URI požadavku nahraďte vlastními, a to následujícím způsobem:

Komponenta Path Popis
myaccount Název vašeho účtu úložiště.
myshare Název sdílené složky.
mydirectorypath Volitelný. Cesta k adresáři.
myfileordirectory Název souboru nebo adresáře.

Podrobnosti o omezeních pojmenování cest najdete v tématu Pojmenování a odkazování na sdílené složky, adresáře, soubory a metadata.

Parametry identifikátoru URI

Pro identifikátor URI můžete zadat následující další parametry:

Parametr Popis
timeout Volitelný. Vyjádřeno v sekundách. Další informace najdete v tématu Nastavení časových limitů pro operace souborové služby.
marker Volitelný. Řetězcová hodnota, která identifikuje pozici popisovačů, které budou uzavřeny pomocí další Force Close Handles operace. Operace vrátí hodnotu značky v textu odpovědi, pokud je k zavření více popisovačů. Hodnotu značky pak můžete použít v následném volání a zavřít další sadu popisovačů.

Hodnota značky je pro klienta neprůhelní.
sharesnapshot Volitelný. Neprůžná hodnota data a času. Když je k dispozici, určuje snímek sdílené složky, který se má dotazovat na seznam popisovačů.

Hlavičky požadavku

Následující tabulka popisuje povinné a volitelné hlavičky požadavků:

Hlavička požadavku Popis
Authorization Požadovaný. Určuje schéma autorizace, název účtu a podpis. Další informace najdete v tématu Autorizace požadavků na službu Azure Storage.
Date nebo x-ms-date Požadovaný. Určuje standard UTC (Coordinated Universal Time) pro požadavek. Další informace najdete v tématu Autorizace požadavků na službu Azure Storage.
x-ms-version Vyžaduje se pro všechny autorizované žádosti, ale volitelné pro anonymní žádosti. Určuje verzi operace, která se má pro tento požadavek použít. Další informace najdete v tématu Správa verzí pro služby Azure Storage.
x-ms-client-request-id Volitelný. Poskytuje hodnotu vygenerovanou klientem, neprůshlenou hodnotou s limitem znaků 1 kibibajtů (KiB), který je zaznamenán v protokolech při konfiguraci protokolování. Důrazně doporučujeme použít tuto hlavičku ke korelaci aktivit na straně klienta s požadavky, které server přijímá.
x-ms-handle-id Požadovaný. Určuje ID popisovače, které se má zavřít. K určení všech popisovačů použijte hvězdičku (*) jako řetězec se zástupnými znaky.
x-ms-recursive Volitelný. Logická hodnota, která určuje, jestli má operace platit také pro soubory a podadresáře adresáře zadaného v identifikátoru URI.
x-ms-file-request-intent Vyžaduje se, pokud hlavička Authorization určuje token OAuth. Přijatelná hodnota je backup. Tato hlavička určuje, že Microsoft.Storage/storageAccounts/fileServices/readFileBackupSemantics/action nebo Microsoft.Storage/storageAccounts/fileServices/writeFileBackupSemantics/action by měly být uděleny, pokud jsou zahrnuty do zásad RBAC přiřazené k identitě, která je autorizovaná pomocí hlavičky Authorization. K dispozici pro verzi 2022-11-02 a novější.
x-ms-allow-trailing-dot: { <Boolean> } Volitelný. Verze 2022-11-02 a novější. Logická hodnota určuje, jestli by se měla oříznout koncová tečka v adrese URL požadavku, nebo ne. Další informace najdete v tématu Pojmenování a odkazování na sdílené složky, adresáře, soubory a metadata.

Text požadavku

Žádný.

Odpověď

Odpověď obsahuje stavový kód HTTP, sadu hlaviček odpovědí a text odpovědi ve formátu XML.

Stavový kód

Úspěšná operace vrátí stavový kód 200 (OK). Informace o stavových kódech naleznete v tématu Stav a kódy chyb.

Hlavičky odpovědi

Odpověď pro tuto operaci obsahuje hlavičky v následující tabulce. Odpověď může obsahovat také další standardní hlavičky HTTP. Všechny standardní hlavičky odpovídají specifikaci protokolu HTTP/1.1.

Běžná záhlaví

Hlavička odpovědi Popis
x-ms-request-id Jednoznačně identifikuje požadavek, který byl proveden. Můžete ho použít k řešení potíží s požadavkem. Další informace najdete v tématu Řešení potíží s operacemi rozhraní API.
x-ms-version Označuje verzi služby Azure Files, která se používá k provedení požadavku.
Date Hodnota data a času UTC, která označuje čas, kdy služba odeslala odpověď.
x-ms-marker Popisuje další popisovač, který se má zavřít. Tento řetězec se vrátí, když je potřeba zavřít další popisovače, aby bylo možné dokončit požadavek. Řetězec se použije v dalších požadavcích k vynucení zbývajících popisovačů ukončení. Absence x-ms-marker značí, že byly uzavřeny všechny relevantní popisovače.
x-ms-number-of-handles-closed Určuje počet uzavřených popisovačů.
x-ms-number-of-handles-failed Označuje počet popisovačů, které se nepodařilo zavřít.
x-ms-client-request-id Dá se použít k řešení potíží s požadavky a odpovídajícími odpověďmi. Hodnota této hlavičky se rovná hodnotě hlavičky x-ms-client-request-id, pokud se nachází v požadavku a hodnota je maximálně 1 024 viditelných znaků ASCII. Pokud v požadavku není hlavička x-ms-client-request-id, nebude tato hlavička v odpovědi k dispozici.

Text odpovědi

Prázdný.

Oprávnění

Tuto operaci může volat pouze vlastník účtu.

Poznámky

Pokud během zpracování požadavků nejsou uzavřeny žádné popisovače (například zadaná hodnota x-ms-handle-id určuje neplatný popisovač nebo nebyly nalezeny žádné otevřené popisovače v zadaném souboru nebo adresáři), získáte odpověď stavu 200 (OK) s x-ms-number-of-handles-closed=0.

Hlavička x-ms-recursive je platná pouze pro adresáře. Pokud ho zadáte pro soubor, získáte odpověď 400 (Chybný požadavek).

Vynucení zavření popisovače otevřeného pomocí FILE_FLAG_DELETE_ON_CLOSE nemusí způsobit odstranění souboru.

popisovačů seznamu vrátí ID popisovače na straně služby x-ms-handle-id. Toto ID popisovače se liší od odpovídajícího popisovače na straně klienta, který protokol SMB nebo aplikace udržuje.

Viz také