Google Cloud Platform 虛擬機磁碟大小修改

在 Google Cloud Platform 中, 虛擬機預設的磁碟大小為 10GB, 如果沒有依照自己的需求變更磁碟大小, 可能各種服務產生的檔案, 例如資料檔案, 日誌檔案...等, 就把磁碟空間吃完了, 後續發現磁碟空間不足, 有兩種作法, 一是再增加一個磁碟, 並 mount 起來在某個目錄下, 缺點是可能要修改某些伺服器的設定。二是修改磁碟大小, 擴充原本的磁碟空間, 可在不停機情況下進行。本文就使用修改原本磁碟空間, 擴充到需要的大小, 請注意在 Google Cloud Platform 中, 磁碟大小只能擴大, 無法縮小。
 
以下是一個虛擬機範例, 初期只給預設值 10GB 的磁碟空間
Google Cloud Platform 虛擬機磁碟大小修改
 
待虛擬機建立完成, SSH 到此虛擬機, 檢視磁碟的使用情況
df -Th

顯示的結果
Filesystem     Type      Size  Used Avail Use% Mounted on
udev devtmpfs 1.8G 0 1.8G 0% /dev
tmpfs tmpfs 370M 5.0M 365M 2% /run
/dev/sda1 ext4 9.7G 1.4G 7.8G 15% /
tmpfs tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/sda15 vfat 124M 7.9M 116M 7% /boot/efi
tmpfs tmpfs 370M 0 370M 0% /run/user/1001

/dev/sda1 磁區使用 EXT4 檔案系統, 是該虛擬機主要的儲存空間, 裝了必要的 OS 檔案後只剩下 7.8 GB, 日後可能塞爆
 
回到 Google Cloud Platform Compute Engine 選單, 選擇"磁碟"找出虛擬機所使用的磁碟(通常與虛擬機同個名稱), 編輯磁碟大小為 100GB
Google Cloud Platform 虛擬機磁碟大小修改
儲存後, 回到 SSH, 查看磁碟大小
lsblk

顯示的結果
NAME    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda 8:0 0 100G 0 disk
├─sda1 8:1 0 9.9G 0 part /
├─sda14 8:14 0 3M 0 part
└─sda15 8:15 0 124M 0 part /boot/efi

sda (第一個磁碟)果然已變成 100 GB 空間了, 但是還需要一些步驟讓空間生效

安裝 cloud-guest-utils 套件
apt-get install cloud-guest-utils

使用 growpart 把 sda 的第一個磁區擴充
growpart /dev/sda 1

顯示
CHANGED: partition=1 start=262144 old: size=20709343 end=20971487 new: size=209453023,end=209715167

修改磁區大小
resize2fs /dev/sda1

顯示訊息
resize2fs 1.44.5 (15-Dec-2018)
Filesystem at /dev/sda1 is mounted on /; on-line resizing required
old_desc_blocks = 2, new_desc_blocks = 13
The filesystem on /dev/sda1 is now 26181627 (4k) blocks long.

接著重先檢視磁碟使用情況
df -Th

顯示結果
Filesystem     Type      Size  Used Avail Use% Mounted on
udev devtmpfs 1.8G 0 1.8G 0% /dev
tmpfs tmpfs 370M 5.0M 365M 2% /run
/dev/sda1 ext4 99G 1.4G 93G 2% /
tmpfs tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/sda15 vfat 124M 7.9M 116M 7% /boot/efi
tmpfs tmpfs 370M 0 370M 0% /run/user/1001

可以發現 /dev/sda1 磁區已經擴充到 99GB, 剩餘空間有 93GB, 這樣就完成磁碟擴充了!

如果是磁碟, 例如/dev/sdb升級了空間, 只要執行
resize2fs /dev/sdb

顯示的結果
resize2fs 1.43.4 (31-Jan-2017)
Filesystem at /dev/sdb is mounted on /srv; on-line resizing required
old_desc_blocks = 63, new_desc_blocks = 125
The filesystem on /dev/sdb is now 262144000 (4k) blocks long.
Let me stand up like a Taiwanese!
文章關鍵字
文章分享
評分
評分
複製連結

今日熱門文章 網友點擊推薦!