1. 程式人生 > 實用技巧 >Azure上如何在Linux下掛載資料磁碟

Azure上如何在Linux下掛載資料磁碟

在Azure上建立了虛擬機器之後,我們在一些情況下會需要新增更多的資料磁碟來儲存持久化資料,本文介紹如何快速的在Azure Linux的虛擬機器上新增資料磁碟並初始化:


  1. 登陸Azure的管理介面,並建立虛擬機器,本文使用CentOS 6.5作為示例作業系統,其他Linux作業系統類似

    wKioL1VddP3i8x_fAAPyWXvcLz4231.jpg

  2. 我們先使用SSH登入到改Linux作業系統,檢查下當前系統的磁碟狀態:

    wKioL1VddeOTOVZ5AANx2jdUR8c868.jpg我們可以看到,目前的Linux系統下只有/sda和/sdb裝置,其中/dev/sdb1是系統自動分配的臨時磁碟,請不要將重要資料儲存在上面,重要的資料需要儲存在新建的持久化儲存中。


  3. 在Azure的管理門戶上,選擇你要新增磁碟的虛擬機器,選擇“儀表板”,在底部的選單欄選擇“附加”-》“附加空磁碟”來新增新的資料盤:

    wKioL1Vdd5HgonUCAAdkHoG34fo899.jpg

  4. 在彈出的對話方塊中,選擇你要新增的磁碟大小,單個磁碟最大不超過1T,根據虛擬機器大小不同,最大可新增的磁碟書也不相同,具體可以參考官方文件(https://msdn.microsoft.com/zh-cn/library/dn197896.aspx ),本處為了測試,設為50G:

    wKiom1VdeBTjjVMAAAIbFvKcWwg755.jpg


  5. 在介面新增完磁碟以後,你可以看到以下資訊,系統多了一個數據盤:

    wKiom1VdexbCQ5yaAAQW0AleyWE077.jpg

  6. 使用ssh登陸到Linux虛擬機器,剩下的步驟都要通過Linux命令列完成。首先檢查目前的系統硬體變化和當前的裝置變化,使用如下命令檢查:

    [[email protected] ~]$ sudo tail -f /var/log/messages

    [[email protected]

    ~]$ ls -l /dev/sd*

    wKiom1VdfADSr4sRAApRmElkP1E581.jpg

  7. 可以看到系統中實際上已經添加了一個sdc的裝置,這個裝置就新新增的系統盤,但沒有分割槽也沒有格式化,就像你掛了一塊硬碟到一個伺服器上是一樣的,所以第一步我們用fdisk來做分割槽:

    $ sudo fdisk /dev/sdc

    wKioL1Vd5S7xO3iHAApMNgpKp9E456.jpg

在它提示符下輸入N,建立新的分割槽,P選擇primary partition,w將相關結果寫入分割槽表。

8. 將新載入的硬碟分割槽後,我們需要將新建立的分割槽格式化城系統可以識別的檔案系統:

$ sudo mkfs -t ext4 /dev/sdc1

wKioL1Vd5l-hitt9AAcChHllqz8378.jpg

9.建立一個新的目錄,用來掛載新的分割槽,在本例中使用/data,然後將新的分割槽掛載到該目錄下:

$ sudo mkdir /data

$ sudo mount /dev/sdc1 /data

wKiom1Vd5h7wcHjnAAPUo2qrLes067.jpg

10.到目前為止,你已經可以正常使用新載入的資料盤了,載入目錄在/data,然而有個問題是,目前是臨時載入硬碟,一旦系統重啟,載入資訊就會丟失,在Linux下,磁碟載入資訊會儲存在fstab檔案中,系統會自動載入該檔案中的分割槽,而在載入磁碟的時候,我們一般使用UUID來作為標示符:

$ sudo -i blkid

$ sudo vi /etc/fstab

wKiom1Vd58ugHN6uAANoxlxrrf0459.jpg

wKioL1Vd6UWyhvG-AAQGLXBZM-k987.jpg


11. 最後一件事情,目前所建立的/data,屬於root使用者,就意味著其他使用者無法使用該目錄,如果預設使用者azureuser想要讀寫該目錄怎麼辦呢?可以在該目錄下建立一個子目錄,使用Linux命令修改owner屬性,然後就可以使用了:

wKioL1Vd6eDwTJAMAAWIsdR_sZU377.jpg

轉載於:https://blog.51cto.com/cloudapps/1653672