Freigeben über


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 Ja
NFS Keine

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.

Siehe auch