簡體   English   中英

無法在portal.azure.com中刪除存儲帳戶

[英]Failed to delete storage account in portal.azure.com

我刪除了虛擬機及其關聯的雲服務和虛擬網絡,但我無法刪除其存儲帳戶。

我收到了這個錯誤:

無法刪除存儲帳戶messega。 無法刪除存儲帳戶'messega':

'存儲帳戶messega有一些活動圖像和/或磁盤,例如messega-messega-os-1449504882530。 在刪除此存儲帳戶之前,請確保刪除這些映像和/或磁盤。'。

我去了存儲帳戶(經典)>>服務 - Blob >>容器 - vhds並試圖刪除存儲容器'vhds':messega-messega-os-1449504882530但我收到了這個新錯誤:

無法刪除存儲容器'vhds'。 錯誤:'當前存在容器租約,並且未在請求中指定租約ID。

刪除磁盤可以通過以前版本的門戶網站manage.windowsazure.com虛擬機 - >磁盤完成

這是一個常見的錯誤。 您的vhd在此存儲帳戶中,這就是為什么在不刪除vhd的情況下無法將其刪除的原因。

https://stackoverflow.com/a/10969013/1384539

如果您的.vhd上的租約一直讓您煩惱,那么您可以使用一個工具而不是啟用來破壞租約,例如Azure Management Studio或使用代碼來破壞它:

        var azureStorageConnectionString = ConfigurationManager.AppSettings["AzureStorage.ConnectionString"];
        var blobFileToDelete= ConfigurationManager.AppSettings["BlobFileToDelete.Name"];  

        var account = CloudStorageAccount.Parse(azureStorageConnectionString);

        // Create the blob client using the Accounts above
        var client = account.CreateCloudBlobClient();
        // Retrieve reference to a previously created container
        // Rename "vhds" as needed.  Can be used to read from any container.
        var container = client.GetContainerReference("vhds");

        var blob = container.GetBlockBlobReference(blobFileToDelete);

        if (blob.Properties.LeaseStatus==Microsoft.WindowsAzure.Storage.Blob.LeaseStatus.Locked) 
        { 
            try 
            { 
                Console.WriteLine("Breaking leases on {0} blob.",blobFileToDelete); 
                // Create Timespan to allow the Lease to remain, in this case 1 second
                TimeSpan breakTime = new TimeSpan(0, 0, 1);

                blob.BreakLease(breakTime, null, null, null); 
                Console.WriteLine("Successfully broken lease on {0} blob.",blobFileToDelete); 
            } 
            catch (StorageException ex ) 
            {
                Console.WriteLine(ex.Message);
                Console.WriteLine("Failed to break lease on {blobName} blob.", blobFileToDelete); 
            } 
        } 
        else 
        {
            Console.WriteLine("The {0} blob's lease status is unlocked.", blobFileToDelete); 
        } 
        Console.ReadLine();

希望這有助於最好的問候Stéphane

您需要使用Azure存儲資源管理器工具,並在大多數情況下檢查容器的內容是否為空

我沒有運氣就嘗試了所有這些事情。 我的答案是下載http://storageexplorer.com/ ,從這個工具我能夠刪除必要的文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM