Schließen von Ziehpunkten erzwingen
Der vorgang Force Close Handles
schließt ein Handle oder Handles, das in einem Verzeichnis oder einer Datei geöffnet wurde. Es unterstützt das Schließen eines einzelnen Handles, das durch Handle-ID in einer Datei oder einem Verzeichnis angegeben wird. Es unterstützt auch das Schließen aller Handles, die für diese Ressource geöffnet wurden. Es unterstützt optional rekursive schließende Handles für Unterressourcen, wenn die Ressource ein Verzeichnis ist.
Sie verwenden diesen Vorgang zusammen mit Listenhandles, um Handles zu erzwingen, die Vorgänge blockieren, z. B. das Umbenennen eines Verzeichnisses. SMB-Clients haben diese Handles möglicherweise verloren oder verloren. Der Vorgang hat einen clientseitigen Einfluss auf das Handle, das Sie schließen, einschließlich benutzerbezogener Fehler aufgrund fehlgeschlagener Versuche, Dateien zu lesen oder zu schreiben. Dieser Vorgang ist nicht als Ersatz oder Alternative zum Schließen einer SMB-Sitzung gedacht.
Dieser Vorgang ist in Version 2018-11-09 und höher verfügbar.
Protokollverfügbarkeit
Aktiviertes Dateifreigabeprotokoll | Verfügbar |
---|---|
SMB |
![]() |
NFS |
![]() |
Bitten
Die Force Close Handles
Anforderung wird wie folgt erstellt. Es wird empfohlen, HTTPS zu verwenden.
Methode | Anforderungs-URI | HTTP-Version |
---|---|---|
STELLEN | https://myaccount.file.core.windows.net/myshare/mydirectorypath/myfileordirectory?comp=forceclosehandles |
HTTP/1.1 |
Ersetzen Sie die pfadkomponenten, die im Anforderungs-URI angezeigt werden, wie folgt:
Pfadkomponente | Beschreibung |
---|---|
myaccount |
Der Name Ihres Speicherkontos. |
myshare |
Der Name Ihrer Dateifreigabe. |
mydirectorypath |
Wahlfrei. Der Pfad zum Verzeichnis. |
myfileordirectory |
Der Name der Datei oder des Verzeichnisses. |
Ausführliche Informationen zu Pfadbenennungseinschränkungen finden Sie unter Benennen und Verweisen auf Freigaben, Verzeichnisse, Dateien und Metadaten.
URI-Parameter
Sie können die folgenden zusätzlichen Parameter für den URI angeben:
Parameter | Beschreibung |
---|---|
timeout |
Wahlfrei. Ausgedrückt in Sekunden. Weitere Informationen finden Sie unter Festlegen von Timeouts für Dateidienstvorgänge. |
marker |
Wahlfrei. Ein Zeichenfolgenwert, der die Position der Handles angibt, die mit dem nächsten Force Close Handles -Vorgang geschlossen werden. Der Vorgang gibt einen Markerwert innerhalb des Antworttexts zurück, wenn weitere Ziehpunkte zum Schließen vorhanden sind. Der Markerwert kann dann in einem nachfolgenden Aufruf verwendet werden, um den nächsten Ziehpunkt zu schließen.Der Markerwert ist für den Client nicht transparent. |
sharesnapshot |
Wahlfrei. Ein undurchsichtiger Datums-/Uhrzeitwert. Wenn sie vorhanden ist, gibt sie die Freigabemomentaufnahme an, die nach der Liste der Handles abfragt werden soll. |
Anforderungsheader
In der folgenden Tabelle werden die erforderlichen und optionalen Anforderungsheader beschrieben:
Anforderungsheader | Beschreibung |
---|---|
Authorization |
Erforderlich. Gibt das Autorisierungsschema, den Kontonamen und die Signatur an. Weitere Informationen finden Sie unter Autorisieren von Anforderungen an Azure Storage. |
Date oder x-ms-date |
Erforderlich. Gibt die koordinierte Weltzeit (UTC) für die Anforderung an. Weitere Informationen finden Sie unter Autorisieren von Anforderungen an Azure Storage. |
x-ms-version |
Erforderlich für alle autorisierten Anforderungen, aber optional für anonyme Anforderungen. Gibt die Version des Vorgangs an, der für diese Anforderung verwendet werden soll. Weitere Informationen finden Sie unter Versionsverwaltung für die Azure Storage-Dienste. |
x-ms-client-request-id |
Wahlfrei. Stellt einen vom Client generierten, undurchsichtigen Wert mit einem 1-Kibibyte-Zeichenlimit (KiB) bereit, der in den Protokollen aufgezeichnet wird, wenn die Protokollierung konfiguriert ist. Es wird dringend empfohlen, diesen Header zu verwenden, um clientseitige Aktivitäten mit Anforderungen zu korrelieren, die der Server empfängt. |
x-ms-handle-id |
Erforderlich. Gibt die Handle-ID an, die geschlossen werden soll. Verwenden Sie ein Sternchen (*) als Platzhalterzeichenfolge, um alle Handles anzugeben. |
x-ms-recursive |
Wahlfrei. Ein boolescher Wert, der angibt, ob der Vorgang auch auf die Dateien und Unterverzeichnisse des im URI angegebenen Verzeichnisses angewendet werden soll. |
x-ms-file-request-intent |
Erforderlich, wenn Authorization Header ein OAuth-Token angibt. Zulässiger Wert ist backup . Dieser Header gibt an, dass die Microsoft.Storage/storageAccounts/fileServices/readFileBackupSemantics/action oder Microsoft.Storage/storageAccounts/fileServices/writeFileBackupSemantics/action gewährt werden sollen, wenn sie in der RBAC-Richtlinie enthalten sind, die der Identität zugewiesen ist, die mithilfe des Authorization -Headers autorisiert ist. Verfügbar für Version 2022-11-02 und höher. |
x-ms-allow-trailing-dot: { <Boolean> } |
Wahlfrei. Version 2022-11-02 und höher. Der boolesche Wert gibt an, ob ein nachgestellter Punkt in der Anforderungs-URL gekürzt werden soll. Weitere Informationen finden Sie unter Benennen und Verweisen auf Freigaben, Verzeichnisse, Dateien und Metadaten. |
Anforderungstext
Nichts.
Antwort
Die Antwort enthält einen HTTP-Statuscode, eine Reihe von Antwortheadern und einen Antworttext im XML-Format.
Statuscode
Ein erfolgreicher Vorgang gibt den Statuscode 200 (OK) zurück. Informationen zu Statuscodes finden Sie unter Status- und Fehlercodes.
Antwortheader
Die Antwort für diesen Vorgang enthält die Kopfzeilen in der folgenden Tabelle. Die Antwort kann auch zusätzliche Standard-HTTP-Header enthalten. Alle Standardheader entsprechen der HTTP/1.1-Protokollspezifikation.
Allgemeine Kopfzeilen
Antwortheader | Beschreibung |
---|---|
x-ms-request-id |
Identifiziert eindeutig die Anforderung, die durchgeführt wurde. Sie können es verwenden, um die Anforderung zu beheben. Weitere Informationen finden Sie unter Problembehandlung für API-Vorgänge. |
x-ms-version |
Gibt die Version von Azure Files an, die zum Ausführen der Anforderung verwendet wird. |
Date |
Ein UTC-Datums-/Uhrzeitwert, der die Uhrzeit angibt, zu der der Dienst die Antwort gesendet hat. |
x-ms-marker |
Beschreibt das nächste zu schließende Handle. Diese Zeichenfolge wird zurückgegeben, wenn weitere Handles geschlossen werden müssen, um die Anforderung abzuschließen. Die Zeichenfolge wird in nachfolgenden Anforderungen verwendet, um verbleibende Handles zu erzwingen. Das Fehlen von x-ms-marker weist darauf hin, dass alle relevanten Handles geschlossen wurden. |
x-ms-number-of-handles-closed |
Gibt die Anzahl geschlossener Ziehpunkte an. |
x-ms-number-of-handles-failed |
Gibt die Anzahl der Handles an, die nicht geschlossen werden konnten. |
x-ms-client-request-id |
Kann verwendet werden, um Anfragen und entsprechende Antworten zu behandeln. Der Wert dieses Headers ist gleich dem Wert des x-ms-client-request-id Headers, wenn er in der Anforderung vorhanden ist und der Wert höchstens 1.024 sichtbare ASCII-Zeichen aufweist. Wenn der x-ms-client-request-id -Header in der Anforderung nicht vorhanden ist, ist dieser Header in der Antwort nicht vorhanden. |
Antworttext
Leer.
Ermächtigung
Nur der Kontobesitzer kann diesen Vorgang aufrufen.
Bemerkungen
Wenn während der Verarbeitung von Anforderungen keine Handles geschlossen werden (z. B. gibt der angegebene x-ms-handle-id
Wert ein ungültiges Handle an, oder es wurden keine geöffneten Handles in der angegebenen Datei oder im angegebenen Verzeichnis gefunden), erhalten Sie eine Statusantwort von 200 (OK) mit x-ms-number-of-handles-closed=0
.
Der x-ms-recursive
-Header ist nur für Verzeichnisse gültig. Wenn Sie sie für eine Datei angeben, erhalten Sie eine Antwort von 400 (Ungültige Anforderung).
Das Schließen eines Handles, das mit FILE_FLAG_DELETE_ON_CLOSE
geöffnet wurde, kann dazu führen, dass die Datei gelöscht wird.
Listenhandles gibt die x-ms-handle-id
dienstseitige Handle-ID zurück. Diese Handle-ID unterscheidet sich von dem entsprechenden clientseitigen Handle, das SMB oder eine Anwendung verwaltet.