在雲端上建立的Linux VM預設的空間都不大,或是有些其它需求另外增加一個資料磁碟的情況,做了幾次新增磁碟之後的磁碟分割、格式化等動作,但是因為脫離GUI的環境要記下龐大的Linux指令是很困難的(年紀大了),所以趁這次又要做一次的時候趕快把過程記錄下來。
一開始可以使用「sudo fdisk -l」的方式來列出目前系統中的磁碟(Disk),看看有哪些磁碟(Disk)與分割區(Partition)。
從上圖看到系統中有三個不同的Disk,而我新增加的是最下面的/dev/sdc 250G大小的Disk,它就是我要下手的目標。
接下來輸入「sudo fdisk /dev/sdc」(後面沒數字),執行fdisk進入操作模式。
一開始會出現上半部的訊息,如果常操作fdisk工具記得各種選項是做什麼用的,可以直接輸入選項的代號,不然可以輸入m來查看(如下半部):
因為是一個新的完全空白的磁碟,所以選擇n來建立新的Partition,接下來會詢問是要建立主要分割區還是延伸分割區、分割區號碼、開始與結束磁區位置(就是要割多大)等,如果是使用預設值的話也可以直接按Enter不用輸入。
完成上面的步驟之後,這些改變只是暫時存在記憶體,再輸入w選項,將變更寫入磁碟之後離開。
再輸入一次「sudo fdisk -l」指令重新查看列表,發現最下面多了/dev/sdc1的項目,這就是剛才分割的Parition了。
fdisk是用來做磁碟分割使用,分割完之後還要format格式化才能儲存檔案,在Linux環境中使用mkfs(Make a Linux filesystem的縮寫),選項的說明可以輸入「sudo mkfs –help」來查看。
我打算將它格式化為xfs格式,所以就輸入「sudo mkfs -t xfs /dev/sdc1」(後面數字要正確),系統使用預設的設定值格式化之後的資訊如下:
格式化完成之後需要掛載起來,在Windows就是要給它個磁碟機代號(當然也可以掛在某個資料夾下)。
Windows做完格式化並設定完磁碟機代號後就可以使用了,就算重新開機還是會看得到新增的磁碟分割,但是Linux如果要開機時也會自動掛載起來的話,需要將相關資訊寫入/etc/fstab檔案中,在這之前會需要知道分割區的UUID,所以先輸入「sudo blkid」找到對應的UUID。
將UUID裡面的值複製下來之後,輸入「sudo nano /etc/fstab」(我這裡用nano編輯器來修改,也可以用別的),內容會長得像下面的樣子,分別是Device, Mount point, FileSystem, Parameters, dump, fsck,反正不是很熟就照著第一列的格式輸入大概就行了。
#
# /etc/fstab
# Created by anaconda on Thu Sep 7 20:55:27 2017
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=3c11fba3-32c7-4d0c-b614-aad5630504eb / xfs defaults 0 0
UUID=ca02dd2d-a91b-4fb1-b24b-0fb19c18b89d /boot xfs defaults 0 0
檔案儲存之後,如果要掛載的位置(資料夾)不存在,需要先建立之後再掛載,輸入「sudo mkdir 掛載路徑」建立完空的資料夾之後,最後再輸入「sudo mount -a」將fstab裡面設定的項目都掛載起來。