快速入門:建立和使用 SMB Azure 檔案共用
本文內容
Azure 檔案服務 是 Microsoft 易於使用的雲端檔案系統。 您可以在 Windows、Linux 及 macOS 作業系統中掛接 SMB Azure 檔案共用。 本文說明如何使用 Azure 入口網站、Azure CLI 或 Azure PowerShell 建立 Azure 檔案共用。
適用於
本快速入門僅適用於 SMB Azure 檔案共用。 標準和進階 SMB 檔案共享支援本地備援儲存體 (LRS) 和區域備援記憶體 (ZRS)。 標準檔案共享也支援異地備援記憶體 (GRS) 和異地區域備援記憶體 (GZRS) 選項。 如需詳細資訊,請參閱 Azure 檔案儲存體備援 。
檔案共用類型
SMB
NFS
標準檔案共用 (GPv2)、LRS/ZRS
標準檔案共用 (GPv2)、GRS/GZRS
進階檔案共用 (FileStorage)、LRS/ZRS
開始使用
如尚未擁有 Azure 訂用帳戶,請在開始之前先建立免費帳戶 。
如果您沒有 Azure 訂用帳戶,請在開始前建立免費帳戶 。
Azure Cloud Shell
Azure Cloud Shell 是裝載於 Azure 中的互動式殼層環境,可在瀏覽器中使用。 您可以使用 Bash 或 PowerShell 搭配 Cloud Shell,與 Azure 服務共同使用。 您可以使用 Cloud Shell 預先安裝的命令,執行本文提到的程式碼,而不必在本機環境上安裝任何工具。
要啟動 Azure Cloud Shell:
選項
範例/連結
選取程式碼或命令區塊右上角的 [試試看] 。 選取 [試試看] 並不會自動將程式碼或命令複製到 Cloud Shell 中。
請前往 https://shell.azure.com ,或選取 [啟動 Cloud Shell] 按鈕,在瀏覽器中開啟 Cloud Shell。
選取 Azure 入口網站 右上方功能表列上的 [Cloud Shell] 按鈕。
若要使用 Azure Cloud Shell:
啟動 Cloud Shell。
選取程式碼區塊 (或命令區塊) 上的 [複製] 按鈕以複製程式碼或命令。
透過在 Windows 和 Linux 上選取 Ctrl +Shift +V ;或在 macOS 上選取 Cmd +Shift +V ,將程式碼或命令貼到 Cloud Shell 工作階段中。
選取 Enter 鍵執行程式碼或命令。
如果您想要在本機安裝和使用 PowerShell,您需要 Azure PowerShell 模組 Az 7.0.0 版或更新版本。 建議您安裝最新的可用版本。 若要確認您所執行的 Azure PowerShell 模組版本,請執行 Get-InstalledModule Az
。 如果您需要升級,請參閱安裝 Azure PowerShell 模組 。 如果您在本機執行 PowerShell,則也需要執行 Login-AzAccount
來登入 Azure 帳戶。 若要使用多重要素驗證,您必須提供 Azure 租用戶識別碼,例如 Login-AzAccount -TenantId <TenantId>
。
必要條件
本文需要 2.0.4 版或更新版本的 Azure CLI。 如果您是使用 Azure Cloud Shell,就已安裝最新版本。
根據預設,Azure CLI 命令會傳回 JavaScript 物件標記法 (JSON),這是從 REST API 傳送和接收訊息的標準方式。 為了方便處理 JSON 回應,本文中有些範例會在 Azure CLI 命令上使用「查詢」 參數。 這個參數會使用 JMESPath 查詢語言 來剖析 JSON。 若要進一步了解如何依照 JMESPath 查詢語言來使用 Azure CLI 命令的結果,請參閱 JMESPath 教學課程 。
建立儲存體帳戶
儲存體帳戶是您可在其中部署 Azure 檔案共用或其他儲存體資源 (例如 blob 或佇列) 的共用儲存體集區。 儲存體帳戶可以包含無限多個共用。 共用可儲存無限制數目的檔案,最多可達儲存體帳戶的容量限制。
若要使用 Azure 入口網站建立儲存體帳戶:
在 [Azure 服務] 下,選取 [儲存體帳戶] 。
選取 [+ 建立] 以建立儲存體帳戶。
在 [專案詳細資料] 下,選取要在其中建立儲存體帳戶的 Azure 訂用帳戶。 如果您只有一個訂用帳戶,它應該是預設訂用帳戶。
如果您想要建立新的資源群組,請選取 [建立新的] 然後輸入 myexamplegroup 之類的名稱。
在 [執行個體詳細資料] 下,提供儲存體帳戶的名稱。 您可能需要新增一些隨機數字,使其成為全域唯一的名稱。 儲存體帳戶名稱必須是小寫和數字,而且必須介於 3 到 24 個字元之間。 請記下您的儲存體帳戶名稱。 稍後您將會用到此資訊。
在 [區域] 中,選取您要建立儲存體帳戶的區域。
在 [主要服務] 中,選取 [Azure 檔案儲存體] 。
在 [效能] 中,保留 [標準] 的預設值。
在 [備援] 中選取 [本地備援儲存體 (LRS)] 。
選取 [檢閱 + 建立] 來檢閱您的設定。 Azure 會執行最終驗證。
驗證完成之後,請選取 [建立] 。 您應該會看到通知表示部署正在進行。
當您看到部署完成的通知時,請選取 [移至資源] 。
PowerShell - 建立資源群組
資源群組是在其中部署與管理 Azure 資源的邏輯容器。 如果您尚未擁有 Azure 資源群組,可使用 New-AzResourceGroup Cmdlet 來建立一個新資源群組。 您需要資源群組,才能建立儲存體帳戶。
下列範例會在「美國西部 2」區域建立名為 myResourceGroup 的資源群組:
$resourceGroupName = "myResourceGroup"
$region = "westus2"
New-AzResourceGroup `
-Name $resourceGroupName `
-Location $region | Out-Null
PowerShell - 建立儲存體帳戶
儲存體帳戶是可供您用來部署 Azure 檔案共用的共用儲存體集區。
此範例會使用 New-AzStorageAccount Cmdlet 來建立儲存體帳戶。 儲存體帳戶的名稱為 mystorageaccount<隨機數字> ,而且該儲存體帳戶的參考會儲存在 $storageAcct 變數中。 儲存體帳戶名稱必須唯一,因此請使用 Get-Random
為名稱附加一個隨機數字,使其成為唯一名稱。
$storageAccountName = "mystorageacct$(Get-Random)"
$storageAcct = New-AzStorageAccount `
-ResourceGroupName $resourceGroupName `
-Name $storageAccountName `
-Location $region `
-Kind StorageV2 `
-SkuName Standard_LRS `
-EnableLargeFileShare
CLI - 建立資源群組
資源群組是一種邏輯容器,您會在其中部署與管理 Azure 資源。 如果您還沒有 Azure 資源群組,您可以使用 az group create 命令建立一個。 您需要資源群組,才能建立儲存體帳戶。
下列範例會在「美國西部 2」 位置建立名為 myResourceGroup 的資源群組:
export resourceGroupName="myResourceGroup"
region="westus2"
az group create \
--name $resourceGroupName \
--location $region \
--output none
CLI - 建立儲存體帳戶
儲存體帳戶是可供您部署 Azure 檔案共用的共用儲存體集區。
下列範例會使用 az storage account create 命令來建立儲存體帳戶。 儲存體帳戶名稱必須唯一,因此請使用 $RANDOM
為名稱附加一個隨機數字,使其成為唯一名稱。
export storageAccountName="mystorageacct$RANDOM"
az storage account create \
--resource-group $resourceGroupName \
--name $storageAccountName \
--location $region \
--kind StorageV2 \
--sku Standard_LRS \
--enable-large-file-share \
--output none
建立 Azure 檔案共用
若要建立 Azure 檔案共用:
從儀表板中選取儲存體帳戶。
在服務功能表中,在 [資料儲存體] 下,選取 [檔案共用] 。
在 [檔案共用] 頁面頂端的功能表上,選取 [+ 檔案共用] 。 [新增檔案共用] 頁面隨即顯示。
在 [名稱] 中輸入 myshare 。 檔案共用名稱必須是小寫字母、數位和單一連字元,且開頭和結尾必須是小寫字母或數位。 名稱包含兩個連續連字號。 如需有關為檔案共用與檔案命名的詳細資料,請參閱命名和參考共用、目錄、檔案及中繼資料 。
針對 [存取層] 保留選取 [交易最佳化] 。
選取 [備份] 索引標籤。根據預設,當您使用 Azure 入口網站建立 Azure 檔案共用時,會啟用備份 。 如果您想要停用檔案共用的備份,請取消核取 [啟用備份] 核取方塊。 如果您想要啟用備份,您可以保留預設值,或在與儲存體帳戶相同的區域和訂用帳戶中建立新的復原服務保存庫。 若要建立新的備份原則,請選取 [建立新原則] 。
選取 [檢閱 + 建立] ,然後選取 [建立] 以建立 Azure 檔案共用。
既然您已建立儲存體帳戶,則可以使用 New-AzRmStorageShare Cmdlet 來建立您的第一個 Azure 檔案共用。 此範例會建立名為 myshare 的共用,配額為 1024 GiB。 配額上限可以是 100 TiB。
$shareName = "myshare"
New-AzRmStorageShare `
-StorageAccount $storageAcct `
-Name $shareName `
-EnabledProtocol SMB `
-QuotaGiB 1024 | Out-Null
既然您已建立儲存體帳戶,則可使用 az storage share-rm create 命令來建立您的第一個 Azure 檔案共用。 此範例會建立名為 myshare 的共用,配額為 1024 GiB。 配額上限可以是 100 TiB。
shareName="myshare"
az storage share-rm create \
--resource-group $resourceGroupName \
--storage-account $storageAccountName \
--name $shareName \
--quota 1024 \
--enabled-protocols SMB \
--output none
建立目錄
若要在 Azure 檔案共用的根目錄建立名為 myDirectory 的新目錄:
在 [檔案共用設定] 頁面上,選取 [myshare] 檔案共用。 檔案共用的頁面隨即開啟,表示找不到任何檔案 。
在頁面頂端的功能表上,選取 [+ 新增目錄] 。 [新增目錄] 頁面隨即顯示。
輸入 myDirectory ,然後選取 [確定] 。
若要在 Azure 檔案共用的根目錄建立名為 myDirectory 的新目錄,請使用 New-AzStorageDirectory Cmdlet。
New-AzStorageDirectory `
-Context $storageAcct.Context `
-ShareName $shareName `
-Path "myDirectory"
若要在 Azure 檔案共用的根目錄建立名為 myDirectory 的新目錄,請使用 az storage directory create
命令:
注意
如果您未提供命令的認證,Azure CLI 會查詢儲存體帳戶金鑰。 您也可以使用 --account-key $storageAccountKey
之類的變數或純文字,例如 --account-key "your-storage-account-key-here"
,以命令提供儲存體帳戶金鑰。
az storage directory create \
--account-name $storageAccountName \
--share-name $shareName \
--name "myDirectory" \
--output none
上傳檔案
首先,您必須建立或選取要上傳的檔案。 以任何方式執行此動作,即表示您認為適合。 當您決定要上傳的檔案時,請遵循下列步驟:
選取 myDirectory 目錄。 myDirectory 面板隨即開啟。
在頂端的功能表中,選取 [上傳] 。 [檔案上傳] 面板隨即開啟。
選取資料夾圖示開啟視窗,以瀏覽您的本機檔案。
選取檔案,然後選取 [開啟 ]。
在 [上傳檔案] 頁面中確認檔案名稱,然後選取 [上傳] 。
完成時,檔案應會出現在 [myDirectory] 頁面的清單中。
為了示範如何使用 Set-AzStorageFileContent Cmdlet 來上傳檔案,我們必須先在 PowerShell Cloud Shell 的臨時磁碟機內建立要上傳的檔案。
此範例會將目前的日期和時間放入可用磁碟機上的新檔案中,然後將檔案上傳至檔案共用。
# this expression will put the current date and time into a new file on your scratch drive
cd "~/CloudDrive/"
Get-Date | Out-File -FilePath "SampleUpload.txt" -Force
# this expression will upload that newly created file to your Azure file share
Set-AzStorageFileContent `
-Context $storageAcct.Context `
-ShareName $shareName `
-Source "SampleUpload.txt" `
-Path "myDirectory\SampleUpload.txt"
如果您要在本機執行 PowerShell,請將 ~/CloudDrive/
替換為存在於您機器上的路徑。
上傳檔案之後,您可以使用 Get-AzStorageFile Cmdlet 來確認檔案已上傳至 Azure 檔案共用。
Get-AzStorageFile `
-Context $storageAcct.Context `
-ShareName $shareName `
-Path "myDirectory\" | Get-AzStorageFile
若要示範如何使用 az storage file upload
命令上傳檔案,請先在 Cloud Shell 暫存磁碟上建立要上傳的檔案。 在下列範例中,您將建立此檔案並將其上傳:
cd ~/clouddrive/
date > SampleUpload.txt
az storage file upload \
--account-name $storageAccountName \
--share-name $shareName \
--source "SampleUpload.txt" \
--path "myDirectory/SampleUpload.txt"
如果您要在本機執行 Azure CLI,請將 ~/clouddrive
替換為存在於您的機器上的路徑。
上傳檔案之後,您可以使用 az storage file list
命令來確認檔案已上傳至 Azure 檔案共用:
az storage file list \
--account-name $storageAccountName \
--share-name $shareName \
--path "myDirectory" \
--output table
下載檔案
您可以在檔案上按一下滑鼠右鍵,以下載您所上傳的檔案複本並選取 [下載] 。 確切的經驗將取決於您所使用的作業系統和瀏覽器。
您可以使用 Get-AzStorageFileContent Cmdlet,將您上傳的檔案複本下載到 Cloud Shell 的臨時磁碟機。
# Delete an existing file by the same name as SampleDownload.txt, if it exists because you've run this example before.
Remove-Item `
-Path "SampleDownload.txt" `
-Force `
-ErrorAction SilentlyContinue
Get-AzStorageFileContent `
-Context $storageAcct.Context `
-ShareName $shareName `
-Path "myDirectory\SampleUpload.txt" `
-Destination "SampleDownload.txt"
下載檔案之後,您可以使用 Get-ChildItem
cmdlet 來確認檔案已下載到 PowerShell Cloud Shell 的可用磁碟機。
Get-ChildItem | Where-Object { $_.Name -eq "SampleDownload.txt" }
您可以使用 az storage file download
命令,將您上傳的檔案複本下載至 Cloud Shell 暫存磁碟:
# Delete an existing file by the same name as SampleDownload.txt, if it exists, because you've run this example before
rm -f SampleDownload.txt
az storage file download \
--account-name $storageAccountName \
--share-name $shareName \
--path "myDirectory/SampleUpload.txt" \
--dest "./SampleDownload.txt" \
--output none
清除資源
當您完成時,請刪除資源群組。 刪除資源群組也會刪除儲存體帳戶、Azure 檔案共用,以及您在資源群組內部署的任何其他資源。
若儲存體帳戶有鎖定,則必須先移除。 瀏覽至儲存體帳戶,並依序選取 [設定] >[鎖定] 。 如果列出鎖定,請將其刪除。
您可能也必須先刪除 Azure 備份復原服務保存庫 ,然後再允許刪除資源群組。
選取 [首頁] ,然後選取 [資源群組] 。
選取您想要刪除的資源群組。
選取 [刪除資源群組] 。 隨即開啟一個視窗,其中顯示有關資源將會與資源群組一起刪除的警告。
輸入資源群組的名稱,然後選取 [刪除] 。
完成後,您可以使用 az group delete
命令來刪除資源群組和資源群組中包含的所有資源:
az group delete --name $resourceGroupName
後續步驟