2个方法:虚拟机VMware容量扩展,无vg分组的linux无损磁盘扩容
目的是:将虚拟机的容量从20G扩大到25G
编辑虚拟机设置:

硬盘-扩展磁盘容量:

填入扩容后大小:

以下在ubuntu/linux里操作:
查看当前分区情况:
biren@ubuntu:~$df-ThFilesystemTypeSizeUsedAvailUse%Mountedonudevdevtmpfs955M0955M0%/%/run/dev/sda1ext420G19G498M98%/只剩下542M空间,ext4格式tmpfstmpfs980M0980M0%/dev/%/run/locktmpfstmpfs980M0980M0%/sys/fs/cgroup/dev/loop0squashfs768K768K0100%/snap/gnome-characters/741
biren@ubuntu:~/crossbuild$sudofdisk-lDisk/dev/sda:25GiB,26843545600bytes,52428800sectors共25G空间Units:sectorsof1*512=512bytesSectorsize(logical/physical):512bytes/512bytesI/Osize(minimum/optimal):512bytes/512bytesDisklabeltype:dosDiskidentifier:0x305e1b1eDeviceBootStartSectorsSizeIdType/dev/sda1*20484194099G83Linux第一块磁盘的第一分区其它略
可以看到/dev/sda共25G,实际使用的还是20G(/dev/sda1)
新增分区:
命令:sudofdisk/dev/sda
biren@ubuntu:~/crossbuild$sudofdisk/dev/sda[sudo]passwordforbiren:Welcometofdisk().Changeswillremaininmemoryonly,(mforhelp):m查看帮助Help:DOS(MBR)atoggleabootableflag设置启动标记beditnestedBSDdisklabelctogglethedoscompatibilityflagGenericddeleteapartition删除分区Flistfreeunpartitionedspacellistknownpartitiontypes列出分区类型,如83/8enaddanewpartition增加分区pprintthepartitiontabletchangeapartitiontype改变分区类型,83为linux,8e为lvm,82为swap交换分区,6为fat16,7为nfsvverifythepartitiontableiprintinformationaboutapartitionMiscmprintthismenuuchangedisplay/entryunitsxextrafunctionality(expertsonly)ScriptIloaddisklayoutfromsfdiskscriptfileOdumpdisklayouttosfdiskscriptfileSaveExitwwritetabletodiskandexit保存退出qquitwithoutsavingchanges不保存退出CreateanewlabelgcreateanewemptyGPTpartitiontableGcreateanewemptySGI(IRIX)partitiontableocreateanewemptyDOSpartitiontablescreateanewemptySunpartitiontableCommand(mforhelp):
选择:n,即增加分区
Command(mforhelp):nPartitiontypepprimary(1primary,0exted,3free)主分区eexted(containerforlogicalpartitions)扩展分区Select(defaultp):p回车默认即可Partitionnumber(2-4,default2):回车默认即可Firstsector(4194,default41940992):回车默认即可Lastsector,+sectorsor+size{K,M,G,T,P}(4194,default52428799):回车默认即可Createdanewpartition2oftype'Linux'(mforhelp):接头选择:w(表示写入分区表并退出)
Command(mforhelp):
查看结果:
biren@ubuntu:~/crossbuild$sudofdisk-lDisk/dev/sda:25GiB,26843545600bytes,52428800sectorsUnits:sectorsof1*512=512bytesSectorsize(logical/physical):512bytes/512bytesI/Osize(minimum/optimal):512bytes/512bytesDisklabeltype:dosDiskidentifier:0x305e1b1eDeviceBootStartSectorsSizeIdType/dev/sda1*20484194099G83Linux/dev/sda24194099252428799104878085G83Linux新增加的,ID为83
biren@ubuntu:~$lsblksda8:0025G0disk├─sda18:1020G0part/根分区└─sda28:205G0part注意:type类型是part,不是lvm
刷新分区表时提示要重启:
biren@ubuntu:~/crossbuild$sudopartprobe/dev/sda2Error:Partition(s)1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64on/dev/sda2havebeenwritten,butwehavebeenunabletoinformthekernelofthechange,probablybecauseit/,theoldpartition(s)@ubuntu:~$sudopartprobe/dev/sda或biren@ubuntu:~$sudopartprobe
重启。。。
安装逻辑卷管理器lvm2:
lvm管理原理:大致是新建物理卷pv,新建卷组vg或用旧的vg,将多个pv加入vg里,从vg里再分区建立逻辑卷lv,扩容则扩大lv(在lv基础上创建文件系统)
biren@ubuntu:~$sudoapt-getinstalllvm2
将物理磁盘分区初始化为物理卷:
命令:sudopvcreate/dev/sda2
biren@ubuntu:~$sudopvcreate/dev/sda2Physicalvolume"/dev/sda2"successfullycreated.
查看:
PVname:Physicalvolumename,物理卷
VGname:VolumeGroupname,卷组,多个PV组成VG
LV:LogicalVolume,逻辑卷,是从vg中分出来的空间,用于创建文件系统
biren@ubuntu:~$sudopvdisplay"/dev/sda2"isanewphysicalvolumeof"5.00GiB"---NEWPhysicalvolume---PVName/dev/sda2VGName为空表示没有分组(因为当前只有一块磁盘,一个分区)c-hy2d-YnJS-hwnu-aFfV-NqTd-gXqFATbiren@ubuntu:~$sudovgdisplay结果没内容,说明没有分组
biren@ubuntu:~$sudoblkid/dev/loop0:TYPE="squashfs"/dev/loop1:TYPE="squashfs"/dev/loop2:TYPE="squashfs"/dev/loop3:TYPE="squashfs"/dev/loop4:TYPE="squashfs"/dev/loop5:TYPE="squashfs"/dev/loop6:TYPE="squashfs"/dev/loop7:TYPE="squashfs"/dev/sda1:UUID="b19b2c95-bd2c-4078-af6d-e09aadd02861"TYPE="ext4"PARTUUID="305e1b1e-01"/dev/sda2:UUID="BmvOyc-hy2d-YnJS-hwnu-aFfV-NqTd-gXqFAT"TYPE="LVM2_member"PARTUUID="305e1b1e-02"/dev/loop8:TYPE="squashfs"/dev/loop9:TYPE="squashfs"/dev/loop10:TYPE="squashfs"/dev/loop11:TYPE="squashfs"/dev/loop12:TYPE="squashfs"/dev/loop13:TYPE="squashfs"/dev/loop14:TYPE="squashfs"/dev/loop15:TYPE="squashfs"/dev/loop16:TYPE="squashfs"/dev/loop17:TYPE="squashfs"/dev/loop18:TYPE="squashfs"/dev/loop19:TYPE="squashfs"
/dev/sda1:type="ext4"
/dev/sda2:type="LVM2_member"
由于没有vg卷组和类型不一样,此时可以用如下两种方法解决:
第一种方法:(前面创建物理卷可不要)
先删除所有分区,然后重新只分成一个区,但起始地址一定要与原来一样的。
当前情况:记住起始地址2048
biren@ubuntu:~$sudopvsPVVGFmtAttrPSizePFree/dev/@ubuntu:~$sudofdisk-l/dev/sdaDisk/dev/sda:25GiB,26843545600bytes,52428800sectorsUnits:sectorsof1*512=512bytesSectorsize(logical/physical):512bytes/512bytesI/Osize(minimum/optimal):512bytes/512bytesDisklabeltype:dosDiskidentifier:0x305e1b1eDeviceBootStartSectorsSizeIdType/dev/sda1*20484194099G83Linux记住起始地址2048/dev/sda24194099252428799104878085G83Linux
先删除所有分区-新建分区-保存退出:
biren@ubuntu:~$sudofdisk/dev/sdaWelcometofdisk().Changeswillremaininmemoryonly,(mforhelp):d删除分区Partitionnumber(1,2,default2):2分区号(mforhelp):(mforhelp):pDisk/dev/sda:25GiB,26843545600bytes,52428800sectorsUnits:sectorsof1*512=512bytesSectorsize(logical/physical):512bytes/512bytesI/Osize(minimum/optimal):512bytes/512bytesDisklabeltype:dosDiskidentifier:0x305e1b1eCommand(mforhelp):n新建分区Partitiontypepprimary(0primary,0exted,4free)eexted(containerforlogicalpartitions)Select(defaultp):p主分区Partitionnumber(1-4,default1):默认即可Firstsector(2,default2048):默认即可Lastsector,+sectorsor+size{K,M,G,T,P}(2,default52428799):默认即可Createdanewpartition1oftype'Linux'#1?[Y]es/[N]o:n这里一定要选nCommand(mforhelp):w保存退出看一下新的现状:
biren@ubuntu:~$sudofdisk-l/dev/sdaDisk/dev/sda:25GiB,26843545600bytes,52428800sectorsUnits:sectorsof1*512=512bytesSectorsize(logical/physical):512bytes/512bytesI/Osize(minimum/optimal):512bytes/512bytesDisklabeltype:dosDiskidentifier:0x305e1b1eDeviceBootStartSectorsSizeIdType/dev/sda12048524287995242675225G83Linuxbiren@ubuntu:~$sudolsblksda8:0025G0disk└─sda18:1025G0part/sda1显示25GBbiren@ubuntu:~$sudoblkid/dev/sda1:UUID="b19b2c95-bd2c-4078-af6d-e09aadd02861"TYPE="ext4"PARTUUID="305e1b1e-01"biren@ubuntu:~$df-ThFilesystemTypeSizeUsedAvailUse%Mountedonudevdevtmpfs955M0955M0%/%/run/dev/sda1ext420G19G458M98%/目前没生效tmpfstmpfs980M0980M0%/dev/shm。。。
刷新分区大小:
命令:
ext4用:sudoresize2fs/dev/sda1
xfs用:xfs_growfs/dev/sda1
biren@ubuntu:~$sudopartprobe/dev/sdabiren@ubuntu:~$sudoresize2fs/dev/(24-Mar-2018)Filesystemat/dev/sda1ismountedon/;on-lineresizingrequiredold_desc_blocks=3,new_desc_blocks=4Thefilesystemon/dev/sda1isnow6553344(4k)blockslong.
分区大小已经更新完成了:
biren@ubuntu:~$df-ThFilesystemTypeSizeUsedAvailUse%Mountedonudevdevtmpfs955M0955M0%/%/run/dev/%/变成25G了tmpfstmpfs980M0980M0%/dev/shm。。。
第二种方法:
安装gparted工具:
biren@ubuntu:~$sudoaptinstallgparted
打开gparted:

先删除sda2(如果有unallocated空间则直接扩容):

修改大小:

拉动箭头或直接输入新的大小:

应用修改:


另外说明:
格式化命令:mkfs+文件系统格式
格式化成ext4文件系统
新一代64位日志文件系统
格式化:
sudomke2fs-text4-L‘mydisk’/dev/sda2是将/dev/sda2分区格式化为ext4的文件系统
mkfs-text3/dev/sda3//在硬盘分区“/dev/sda3”上创建ext3文件系统