Vmware + Ubuntu 扩大硬盘空间的几种方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vmware + Ubuntu 扩大硬盘空间的几种方法相关的知识,希望对你有一定的参考价值。

于是只好想办法增加硬盘空间。起初我以为加一个vmdisk上去就可以了,结果发现原来没那么简单的,在网上搜了两天,稍微总结如下:1. 使用Vmware自带的vmware-vdiskmanager.exe,就在Vmware的安装目录下。使用该命令可以将已经分配好空间并在使用的vmdisk任意扩大空间(btw,不知道缩小行不行呢),本来具体命令格式为:vmware-vdiskmanager -x 10Gb D:\UbuntuDesk\Ubuntu.vmdk ,参数 -x 表示扩展虚拟机硬盘空间;紧随其后的数字指要扩展的大小(如10Gb,表示磁盘总量,包含原来的磁盘容量);最后是要操作的虚拟机Linux的具体文件。(注意:若路径名中有空格,必须以双引号括起来),经过这样操作之后,进去vmware里面看那个虚拟硬盘就会发现变大了,但硬盘变大了并不等于里面的分区会变大,还是需要分区软件来重新分区或者扩大分区。这里我发现ubuntu自带的gparted已经很好用了,而且不会导致grub信息受损引导不了。不知道为什么我的ubuntu貌似没有自带这个,我是用Live CD启动了一个内存系统来做的。将原来挂载在根目录的那个分区拉大之后,重新启动就会发现容量大了很多,一切问题随之解决。2.也有建议说直接加一个虚拟硬盘到你的虚拟机上,分好区在上面,然后将原来某几个占用空间比较大的目录的数据先copy到其他地方,然后删除,然后将新的分区挂载到这个目录上,然后再将数据copy回来。例如usr目录,先将/usr里面的内容备份好,然后删掉,将新的分区挂载到/usr上,然后再恢复回来,这样就实现了/usr目录使用的是新分区的空间了。虽然这样也是一种方法,而且不用影响原来的虚拟硬盘,但毕竟有时容量是比较分散的,可能有好几个目录都比较大,都要重新挂载上的话就比较麻烦。再加上如果原来的目录太大了,根本没地方再做备份了,那就更加麻烦。所以我感觉是不太好。4.当然不能排除用最笨的方法啦:将有用数据备份到虚拟机之外,例如你的宿主机,然后将虚拟硬盘删除重新建一个,然后重新安装系统,或者更快的方法是ghost出来然后再ghost回去,不过貌似会破坏grub导致引导不了的,要做grub修复。而且有第一种方法的话也没必要再考虑这个方法了,呵呵。 参考技术A 于是只好想办法增加硬盘空间。起初我以为加一个vmdisk上去就可以了,结果发现原来没那么简单的,在网上搜了两天,稍微总结如下:
1. 使用Vmware自带的vmware-vdiskmanager.exe,就在Vmware的安装目录下。使用该命令可以将已经分配好空间并在使用的vmdisk任意扩大空间(btw,不知道缩小行不行呢),本来具体命令格式为:vmware-vdiskmanager -x 10Gb D:\UbuntuDesk\Ubuntu.vmdk ,参数 -x 表示扩展虚拟机硬盘空间;紧随其后的数字指要扩展的大小(如10Gb,表示磁盘总量,包含原来的磁盘容量);最后是要操作的虚拟机Linux的具体文件。(注意:若路径名中有空格,必须以双引号括起来),经过这样操作之后,进去vmware里面看那个虚拟硬盘就会发现变大了,但硬盘变大了并不等于里面的分区会变大,还是需要分区软件来重新分区或者扩大分区。这里我发现ubuntu自带的gparted已经很好用了,而且不会导致grub信息受损引导不了。不知道为什么我的ubuntu貌似没有自带这个,我是用Live CD启动了一个内存系统来做的。将原来挂载在根目录的那个分区拉大之后,重新启动就会发现容量大了很多,一切问题随之解决。
2.也有建议说直接加一个虚拟硬盘到你的虚拟机上,分好区在上面,然后将原来某几个占用空间比较大的目录的数据先copy到其他地方,然后删除,然后将新的分区挂载到这个目录上,然后再将数据copy回来。例如usr目录,先将/usr里面的内容备份好,然后删掉,将新的分区挂载到/usr上,然后再恢复回来,这样就实现了/usr目录使用的是新分区的空间了。虽然这样也是一种方法,而且不用影响原来的虚拟硬盘,但毕竟有时容量是比较分散的,可能有好几个目录都比较大,都要重新挂载上的话就比较麻烦。再加上如果原来的目录太大了,根本没地方再做备份了,那就更加麻烦。所以我感觉是不太好。
4.当然不能排除用最笨的方法啦:将有用数据备份到虚拟机之外,例如你的宿主机,然后将虚拟硬盘删除重新建一个,然后重新安装系统,或者更快的方法是ghost出来然后再ghost回去,不过貌似会破坏grub导致引导不了的,要做grub修复。而且有第一种方法的话也没必要再考虑这个方法了,呵呵。
参考技术B

    增加一个虚似硬盘

    虚拟机关闭的情况下,选择虚拟机设置——添加——选择硬盘,后面根据需要选择。添加新硬盘后,启动虚拟机,在操作系统里做相应处理。例如windows在控制面板中找“管理工具”->“计算机管理”,然后选“磁盘管理”,添加新磁盘就好了

    改变原虚拟硬盘的大小

    vmware安装位置下,例如c:\\Program Files\\VMware\\VMware Workstation有个执行文件vmware-vdiskmanager.exe,其-x参数就是用来扩容的,例如:

    vmware-vdiskmanager.exe -x 50GB myDisk.vmdk 

    将虚拟磁盘myDisk.vmdk扩充到50G

    完成后在操作系统里也要做相应处理

vmware虚拟机:centos7 下根目录扩容操作-解决ubuntu空间不够用的问题

本来在搭建集群,是用的vmware虚拟机,centos7,开始只分配了30G的硬盘,后来安装节点时候报磁盘空间不足,所以考虑扩展虚拟机系统硬盘空间,

1.    关闭虚拟机,虚拟机设置->硬盘->磁盘实用工具->扩展

原来的linux硬盘只有30G,扩展到100G,根据自己实际情况填写就行了,

 

2.    对新增加的硬盘进行分区、格式化【centos的root用户】

2.1对新增加的硬盘进行分区

输入命令:fdisk /dev/sda (因为上面选择的是扩展,即在原有的硬盘sda进行扩展,所以增加空间的硬盘是/dev/sda)

按照提示输入:

[root@centos7dev~]# fdisk /dev/sda

Welcome to fdisk(util-linux 2.23.2).

Changes will remainin memory only, until you decide to write them.

Be careful beforeusing the write command.

Command (m for help):p (查看已分区数量 有两个/dev/sda1 /dev/sda2))

Disk /dev/sda: 107.4GB, 107374182400 bytes, 209715200 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

Disk label type: dos

Disk identifier:0x0003f424

Device Boot      Start         End      Blocks  Id  System

/dev/sda1   *  2048     1026047      512000 83  Linux

/dev/sda2    1026048   62914559    30944256  8e Linux LVM(原来的30G硬盘)

Command (m for help): n (新增加一个分区)

Partition type:

   p  primary (2 primary, 0 extended, 2 free)

   e  extended

Select (default p):p (分区类型选择为主分区)

Partition number (3,4, default 3):3(分区号选3)

First sector (62914560-209715199, default 62914560):Entre(回车,选择默认起始扇区)

Using default value62914560

Last sector, +sectors or +size{K,M,G} (62914560-209715199, default209715199): Entre(回车,选择默认结束扇区)

Using default value209715199

Partition 3 of typeLinux and of size 70 GiB is set

 

Command (m for help):t (t修改分区类型)

Partition number (1-3, default 3):3(选分区3)

Hex code (type L to list all codes):8e(修改为LVM(8es就是上面p选项查看到的id)LVM是 LogicalVolume Manager(逻辑卷管理))

Changed type ofpartition \'Linux\' to \'Linux LVM\'

Command (m for help):w (保存)

The partition tablehas been altered!

Calling ioctl() tore-read partition table.

 

WARNING: Re-reading the partition table failed with error 16:Device or resource busy.

The kernel still uses the old table. The new table will be usedat

the next reboot or after you run partprobe(8) or kpartx(8)

Syncing disks.

[root@centos7dev~]# partprobe (根据上面的提示输入)

[root@centos7dev~]# reboot (重启linux)

 

2.2对新增加的硬盘进行格式化

重启linux后格式化分区:mkfs.xfs /dev/sda3(sda3是刚才分的区,另外注意:格式成什么文件系统要使用df -Th命令先查看你当前linux系统使用的是什么文件系统,我这边看到的打印内容是:

Filesystem              Type      Size Used Avail Use% Mounted on

/dev/mapper/centos-root  xfs       28G   12G   17G 42% /

所以使用mkfs.xfs命令

 

2.3.添加新LVM到已有的LVM组,实现扩容

命令lvm 进入lvm管理:

lvm> pvcreate /dev/sda3初始化刚才的分区

lvm> vgdisplay 查看卷组(Volumegroup)名称

--- Volumegroup ---

VGName               centos

… … …

lvm> vgextend centos /dev/sda3  将初始化过的分区加入到虚拟卷组centos

lvm> lvdisplay 查看逻辑卷(Logical volume)情况,可以看到新建的70G逻辑卷

  --- Physical volume ---

  PV Name               /dev/sda2

  VG Name               centos

  PV Size               29.51 GiB / not usable 3.00 MiB

  Allocatable           yes

  … … …

"/dev/sda3" is a new physicalvolume of "70.00 GiB"

  --- NEW Physical volume ---

  PV Name               /dev/sda3

  VG Name              

  PV Size               70.00 GiB

  Allocatable           NO

  … … …

lvm> lvextend -l +70G /dev/centos/root 增加物理卷到根目录,从上面的打印信息中可以看到根目录是在/dev/centos/root

 

3. 以上只是卷扩容了,下面是文件系统的真正扩容,输入以下命令:

xfs_growfs /dev/mapper/centos-root

 

4. 结果查看

[root@centos7dev~]# df -h

Filesystem               Size  Used Avail Use% Mounted on

/dev/mapper/centos-root   97G  12G   86G  12% /

 

以上是关于Vmware + Ubuntu 扩大硬盘空间的几种方法的主要内容,如果未能解决你的问题,请参考以下文章

关于VMware虚拟机磁盘收缩的几种方法

如何扩大VMware虚拟机的硬盘磁盘空间大小

如何增加虚拟机ubuntu的硬盘

vmware中如何为虚拟机增加硬盘容量

在vmware里怎么扩大硬盘或者再加多一个硬盘?

我用vmware对虚拟机的磁盘扩容后提示还要从客户机内部进行扩展,而且虚拟机的磁盘并没有扩大,要怎么做