Ubuntu

調整 dev / sda2 Ubuntu VMWare 的大小

  • September 19, 2020

在 Win10 主機、Ubuntu 18.04 客戶機上使用 VMWare Workstation 15 Player (15.5.6)。我最初將 10GB 磁碟附加到此 VM。開始出現錯誤no space left on device

已刪除 /tmp ( rm -rf /tmp/*)。將 10GB 磁碟大小增加到 25GB,添加了另一個磁碟 20GB。但VM 無法辨識新磁碟或新增加的大小(是的,我確實重啟了工作站和虛擬機)

:~$ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            2.1G     0  2.1G   0% /dev
tmpfs           422M  6.7M  415M   2% /run
/dev/sda2       9.8G  9.8G     0 100% /
tmpfs           2.1G     0  2.1G   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           2.1G     0  2.1G   0% /sys/fs/cgroup
/dev/loop0       97M   97M     0 100% /snap/core/9804
/dev/loop4       18M   18M     0 100% /snap/gedit/605
/dev/loop1       63M   63M     0 100% /snap/gtk-common-themes/1506
/dev/loop2       98M   98M     0 100% /snap/core/9993
/dev/loop3      162M  162M     0 100% /snap/gnome-3-28-1804/128

您只能看到/dev/sda2 shows 10GB0 aval。所以我認為這是問題所在。

嘗試查看cfdisk- (以前從未使用過) - 但不知何故它也無法辨識超過 10GB。我幾乎可以在這個虛擬機上做任何事情——幾乎不能啟動它——如何解決這個問題。

更新 1

$ sudo fdisk -l

Device     Boot      Start        End    Sectors  Size Id Type
/dev/fd0p1      2425393296 4850786591 2425393296  1.1T 90 unknown
/dev/fd0p2      2425393296 4850786591 2425393296  1.1T 90 unknown
/dev/fd0p3      2425393296 4850786591 2425393296  1.1T 90 unknown
/dev/fd0p4      2425393296 4850786591 2425393296  1.1T 90 unknown

Disk /dev/sdb: 20 GiB, 21474836480 bytes, 41943040 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

GPT PMBR size mismatch (20971519 != 52428799) will be corrected by w(rite).
Disk /dev/sda: 25 GiB, 26843545600 bytes, 52428800 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: A6944258-6EA8-4968-BA0A-E48315D8CEB6

Device     Start      End  Sectors Size Type
/dev/sda1   2048     4095     2048   1M BIOS boot
/dev/sda2   4096 20969471 20965376  10G Linux filesystem

~$ parted -l
Warning: Unable to open /dev/sr0 read-write (Read-only file system).  /dev/sr0
has been opened read-only.
Error: /dev/sr0: unrecognised disk label
Model: NECVMWar VMware SATA CD00 (scsi)
Disk /dev/sr0: 68.0MB
Sector size (logical/physical): 2048B/2048B
Partition Table: unknown
Disk Flags:

Warning: Unable to open /dev/sr1 read-write (Read-only file system).  /dev/sr1
has been opened read-only.
Model: Unknown (unknown)
Disk /dev/sr1: 889MB
Sector size (logical/physical): 2048B/2048B
Partition Table: mac
Disk Flags:

Number  Start  End    Size    File system  Name   Flags
1      2048B  6143B  4096B                Apple
2      663MB  666MB  2523kB               EFI

$ lsblk -o name,fstype,size,fssize,mountpoint,label,model,vendor
lsblk: unknown column: fssize,mountpoint,label,model,vendor

$ lsblk -o name,fstype,size
NAME   FSTYPE     SIZE
fd0               1.4M
loop0  squashfs  96.6M
loop1  squashfs  62.1M
loop2  squashfs  97.1M
loop3  squashfs 161.4M
loop4  squashfs  17.9M
loop5  squashfs  55.3M
sda                25G
├─sda1              1M
└─sda2 ext4        10G
sdb                20G
sr0    iso9660   64.9M
sr1    iso9660    848M

~$ lsblk -o name,fstype,size,mountpoint,label,model,vendor
NAME   FSTYPE    SIZE MOUNTPOINT LABEL                           MODEL   VENDOR
fd0              1.4M
loop0  squashf  96.6M /snap/core
loop1  squashf  62.1M /snap/gtk-
loop2  squashf  97.1M /snap/core
loop3  squashf 161.4M /snap/gnom
loop4  squashf  17.9M /snap/gedi
loop5  squashf  55.3M /snap/core
sda               25G                                            VMware  VMware,
├─sda1             1M
└─sda2 ext4       10G /
sdb               20G                                            VMware  VMware,
sr0    iso9660  64.9M            CDROM                           VMware  NECVMWa
sr1    iso9660   848M            Ubuntu-Server 18.04.3 LTS amd64 VMware  NECVMWa

關於增加的大小/dev/sda:guest OS 可以看到虛擬磁碟的新大小,但您還需要調整sda2分區大小和它包含的文件系統才能使用額外的儲存空間。

一種方法(或者,使用圖形工具GParted,它將在單個操作中處理以下大部分步驟):

  1. 確保您擁有虛擬機上所有重要數據的完整備份。可能會備份完整的 VM 映像。增長一個線上 ext4 文件系統和包含分區可以在 Linux 上完成,但你不應該認為它是 100% 安全的操作。
  2. 開始sudo parted /dev/sda
  3. 列印分區表並記下End最後一行的扇區:
unit s print free
  1. 調整sda2分區大小(顯示為partedas 2):
resizepart 2

parted如果警告您分區正在使用並要求確認,則回答“是” ;輸入您在步驟 (2) 中獲得的數字——設備上的最後一個可用扇區——s當要求您輸入最終扇區時,將(扇區)單元附加到它parted(然後可能會要求您接受略有不同的最終扇區輸出)對齊原因;那很好)。 4. 再次列印分區表(與第(2)點相同)以確認sda2已調整大小。 5. 退出parted。 6. 用於lsblk /dev/sda確保核心知道調整大小的分區。如果它顯示的大小仍然是10G,請使用sudo partprobe -s它來刷新它並再次檢查它。 7. 調整文件系統大小:

sudo resize2fs /dev/sda2

sudo e2fsck -f /dev/sda2在能夠調整文件系統大小之前,可能會要求您執行。執行此操作,然後重試該resize2fs命令。

如果沒有給定大小參數,resize2fs則增大文件系統以匹配包含分區的大小。 8. 用於df -h /dev/sda2驗證新尺寸。

關於新添加的虛擬磁碟/dev/sdb:我建議您不要使用它,如果需要,請/dev/sda進一步增加。在執行上述步驟之前,您可能需要刪除sdb主機上的映像並添加該儲存空間。sda

引用自:https://unix.stackexchange.com/questions/610129