解锁所有 Azure 文件共享锁

解锁所有 Azure 文件共享锁

我有一个包含文件的 Azure 文件共享 (SMB)。当我尝试重命名/删除文件时,我收到“指定的资源可能正在被 SMB 客户端使用”错误。有多个服务器连接到此 SMB 共享,我无法确定哪个服务器或哪个进程有锁。我如何解锁此文件或如何释放当前正在使用的所有文件锁?

答案1

我找到了解决这个问题的方法,但我不认为这是‘正常’的方法:

  • 编辑存储帐户的“防火墙和虚拟网络”部分并将其设置为“选定的网络”
  • 不分配任何 IP 地址/范围或删除现有的
  • 等待30分钟
  • 设置存储帐户的“防火墙和虚拟网络”部分并将其设置为原始设置或“所有网络”
  • 与外部服务器的连接已断开,锁已消失

答案2

我最近遇到了同样的问题。您可以使用关闭 AzStorageFileHandle命令。解锁后,您应该能够将其删除。

您连接到 Azure CLI,设置存储帐户的上下文,然后输入要解锁的文件的路径。整个过程将是这 4 个命令

connect-azaccount
Set-AzContext -Subscription "<subscription id>"
$context = New-AzStorageContext -StorageAccountName "<storage account name>" -StorageAccountKey "<storage account key found in the storage account key section>"
Close-AzStorageFileHandle -Context $context -ShareName "<share name>" -Path '<path>' -CloseAll

相关内容