Ubuntu

如何通過命令行(並且沒有 GParted)擴展 Ubuntu VM 的非根分區

  • December 12, 2016

將安裝了 Ubuntu Server 的 Hyper-V VM 的磁碟大小從 200GB 增加到 300GB 後,lsblk顯示以下內容

root@ubuntu:~# lsblk
NAME                                    MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda                                       8:0    0    15G  0 disk
├─sda1                                    8:1    0   243M  0 part /boot
├─sda2                                    8:2    0     1K  0 part
└─sda5                                    8:5    0  14.8G  0 part
 ├─ubuntu--vg-root (dm-0)   252:0    0  14.2G  0 lvm  /
 └─ubuntu--vg-swap_1 (dm-1) 252:1    0   508M  0 lvm  [SWAP]
sdb                                       8:16   0   300G  0 disk
└─sdb1                                    8:17   0   200G  0 part /media/storage
sr0                                      11:0    1  1024M  0 rom

現在我們只希望sdb1目前安裝在/media/storage(但可以臨時解除安裝而不會出現問題)的文件增加到 300GB,以便它使用sdb.

簡單地使用resize2fs似乎不起作用。起作用的是從 GParted CD 引導並執行調整大小操作。但是,由於這是一個可以解除安裝的非根分區,這似乎是一種矯枉過正。那麼命令行有沒有簡單的方法呢?(不幸的是,Google搜尋帶來了很多關於 GParted 或關於根分區等的東西。這在此處不適用。)

resize2fs 將調整文件系統的大小而不是分區。在調整文件系統大小之前,您必須調整分區 (sdb1) 的大小。

如果你不想使用 parted 那麼你可以使用fdisk.

最初您必須找到 sdb1 分區的起始扇區。為此,只需執行:

fdisk -l /dev/sdb

並記下列中的Start數字

然後:

fdisk /dev/sdb

然後按d刪除第一個分區。

然後按n創建一個新分區。

然後按p表示它將是一個主分區。

然後按1表示它將是第一個分區。

下一步非常重要。fdisk 將詢問新分區的第一個扇區。使用您之前記下的數字。

然後 fdisk 將詢問最後一個扇區。預設情況下,fdisk 將提示磁碟的最後一個扇區,因此請使用該預設值。

然後按wfdisk 將分區表寫入磁碟。

您現在可以使用resize2fs命令調整文件系統的大小

引用自:https://serverfault.com/questions/820147