Tengo un recurso compartido de archivos de Azure (SMB) con archivos. Cuando intento cambiar el nombre o eliminar un archivo, aparece el error "El recurso especificado puede estar siendo utilizado por un cliente SMB". Hay varios servidores que se conectan a este recurso compartido SMB y no tengo forma de saber qué servidor o qué proceso tiene el bloqueo. ¿Cómo puedo desbloquear este archivo o cómo puedo liberar todos los bloqueos de archivos actualmente en uso?
Respuesta1
Encontré una solución para este problema, sin embargo, no creo que esta sea la forma "normal" de hacerlo:
- edite la sección 'Firewalls y redes virtuales' de la cuenta de almacenamiento y configúrela en 'Redes seleccionadas'
- no asigne ninguna dirección/rango de IP ni elimine los existentes
- espera 30 minutos
- configure la sección 'Firewalls y redes virtuales' de la cuenta de almacenamiento y configúrela en la configuración original o 'Todas las redes'
- La conexión del servidor externo se desconecta y el bloqueo desaparece
Respuesta2
Me encontré con este problema exacto recientemente. Puede desbloquear el archivo usando elCerrar-AzStorageFileHandlecomando desde el cli de Azure. Después de desbloquearlo, deberías poder eliminarlo.
Usted se conecta a Azure CLI, configura su contexto para la cuenta de almacenamiento y luego ingresa la ruta al archivo que desea desbloquear. Todo el proceso serían estos 4 comandos.
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