如何在VMWare WS的虚拟机里扩展和增加磁盘
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
如何在vmware ws的Ubuntu虚拟机里扩展和增加磁盘
2012-11-19
by douglasjpd@
一般在虚拟机中,磁盘空间不够了,首先应该用扩展(expand)的方法,如果没有可扩展的空间,再用增加硬盘的方式。
扩展和新增磁盘的步骤对于虚拟机是Windows的系统(XP以后的系统)比较容易。
不过如果该虚拟机有snapshot,VMWare不允许再增加空间。
不过一旦扩展或者新增了空间,Windows系统就会自动识别该新增的空间,只要打开“计算机管理”中的“磁盘管理”,立即就可以发现有新的未分区的空间,这时只要直接在“磁盘管理”界面进行分区和格式化并分配盘符即可使用。
下面的示范是在Ubuntu 12.04 Server虚拟机上操作。
一、扩展
假设需要将vmware中ubuntu 12.04 LTS虚拟机的磁盘大小由20G扩展到25G。
操作之前,先记录目前磁盘的信息:(先进入root用户)
root@test:~# fdisk -l
Disk /dev/sda: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders, total 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
Disk identifier: 0x0009e946
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 39845887 19921920 83 Linux
/dev/sda2 39847934 41940991 1046529 5 Extended
/dev/sda5 39847936 41940991 1046528 82 Linux swap / Solaris
关闭虚拟机,然后在VMWare界面:
vm->settings->hard disk->utilities->expand->输入大小(增加后的大小,如25GB),点击“Expand”按钮,等待扩展完成。
完成后,会出现“The disk was successfully expanded. You now need to repartition the disk and expand the filesystems from within the guest operating system.”
之后,就可以看见界面显示的磁盘空间已经扩展到了25GB。
点击“Save”。
启动虚拟机,用root进入命令行
root@test:~# fdisk -l
Disk /dev/sda: 26.8 GB, 26843545600 bytes <--------注意这里的大小已经增加了5GB!255 heads, 63 sectors/track, 3263 cylinders, total 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
Disk identifier: 0x0009e946
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 39845887 19921920 83 Linux
/dev/sda2 39847934 41940991 1046529 5 Extended
/dev/sda5 39847936 41940991 1046528 82 Linux swap / Solaris
接下来就需要在虚拟机内操作把新增加的空间利用起来。
1、# fdisk /dev/sda
2、列出当前存在的分区表,输入p -- 注意观察各分区的编号(Device)和Id等信息。
3、新增分区,输入n,
4、决定分区类型,选择p即primary partition,回车后会自动分配分区号、起止扇区编号,一般直接采用默认数据。
注:下图试图输入“+5GB”,但系统不允许,因此直接使用缺省值比较简单安全。
5、输入p查看当前的分区信息(如下图):
6、没有什么问题就输入w保存退出
7、用fdisk -l 查看新的分区布局
8、重启虚拟机:shutdown -r now
9、格式化为ext3格式
root@test:~# mkfs.ext3 /dev/sda3
mke2fs 1.42 (29-Nov-2011)
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
Stride=0 blocks, Stripe width=0 blocks
128 inodes, 1020 blocks
51 blocks (5.00%) reserved for the super user
First data block=1
Maximum filesystem blocks=1048576
1 block group
8192 blocks per group, 8192 fragments per group
128 inodes per group
Allocating group tables: done
Writing inode tables: done
Filesystem too small for a journal
Writing superblocks and filesystem accounting information: done
root@test:~#
10、挂载到某个目录(下面是用root用户操作,根据需要自己可以调整owner和访问权限)root@test:~# mkdir /u5gb
root@test:~# mount /dev/sda3 /u5gb
11、用df -h 查看分区挂载及使用情况
root@test:/home/doug# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 19G 16G 2.4G 87% /
udev 488M 4.0K 488M 1% /dev
tmpfs 199M 236K 199M 1% /run
none 5.0M 0 5.0M 0% /run/lock
none 497M 0 497M 0% /run/shm
/dev/sda3 999K 17K 931K 2% /u5gb
root@test:/home/doug#
12、设置开机自动加载此分区
# Vi /etc/fstab 分区表文件
在该文件末尾添加
/dev/sda3 /u5gb ext3 defaults 0 0
二、增加
首先在vmware的Ubuntu虚拟机的vm--settings里去增加一个磁盘,然后重启机器并进入root:doug@test:~$ sudo su - root
[sudo] password for doug:
root@test:~# fdisk -l
Disk /dev/sda: 26.8 GB, 26843545600 bytes
255 heads, 63 sectors/track, 3263 cylinders, total 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
Disk identifier: 0x0009e946
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 39845887 19921920 83 Linux
/dev/sda2 39847934 41940991 1046529 5 Extended
/dev/sda3 39845888 39847932 1022+ 83 Linux
/dev/sda5 39847936 41940991 1046528 82 Linux swap / Solaris Partition table entries are not in disk order
Disk /dev/sdb: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders, total 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
Disk identifier: 0x00000000
Disk /dev/sdb doesn't contain a valid partition table
root@test:~#
可以看见/dev/sdb是新增的,还没有分区,所以:
root@test:~# fdisk /dev/sdb
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel Building a new DOS disklabel with disk identifier 0x962c56d9.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite) Command (m for help):
与前面一样在fdisk里操作:新增分区并明确文件系统。
再用p查看分区后的硬盘的分区信息,没有错误后w保存:
存盘后,重启虚拟机。
首先检查系统的分区信息:
然后把分区格式化为ext3:
root@test:~# mkfs.ext3 /dev/sdb1 mke2fs 1.42 (29-Nov-2011) Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
1310720 inodes, 5242624 blocks
262131 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
160 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000
Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
root@test:~#
然后挂载到某个目录
root@test:~# mkdir /u20gb
root@test:~# mount /dev/sdb1 /u20gb
最后设置开机自动加载此分区:
vi /etc/fstab
在末尾添加
/dev/sdb1 /u20gb ext3 defaults 0 0
下面的部分是从网上转载而来,作为笔记和资料的一部分。
三、vmware-vdiskmanager.exe 程序的操作过程(基于Windows的平台)
安装目录下有一个命令行工具vmware-vdiskmanager.exe 程序,可用来修改虚拟机硬盘的大小。
方法如下:
1. 关闭虚拟机;启动Windows下的命令提示符界面;
2. 进入VMware的安装目录(如:D:\VMware),输入“vmware-vdiskmanager”后按回车键,可显示关于该命令的说明。
3. 执行如下命令:vmware-vdiskmanager -x 20Gb "J:\VMware Space\SUSE Linux 64-bit.vmdk"参数-x表示要扩展虚拟机硬盘空间;紧随其后的数字指要扩展的大小(如20Gb,表示磁盘总量,包含原来的磁盘容量);最后是要操作的虚拟机Linux的具体文件。
若路径名中有空格,必须以双引号括起来。
等待约20分钟,执行完毕,退出命令提示符窗口,重启VMware,这时虚拟机硬盘空间已变成20GB了。
这个过程中,已安装的Linux系统不会被破坏。
如果原来的虚拟机硬盘已被分成了多个分区,那么在通过vmware-vdiskmanager.exe扩大了硬盘空间后,还需要在虚拟机系统中将增加的分区划分、格式化。
4. 启动虚拟机系统,用root登录(后续所有步骤都应以root用户身份登录操作),在命令行用fdisk -l查看。
由于这里是直接修改了原始空间大小,因此可以看到/dev/sda空间改变为21.4GB。
如果是从VMware菜单里增加虚拟硬盘,则会多出一个/dev/sd?,这里的?代表硬盘编号,第一个硬盘编号为a即sda,第二个就是sdb,第三个是sdc,以此类推,一般来说,如果以前没有增加过硬盘,那么原来的硬盘就是sda,通过VMware菜单增加的虚拟硬盘编号就是sdb。
如果添加的第二块硬盘是IDE硬盘,就应该看到hdb,如果是SCSI硬盘,看到的就应该是sdb。
hawkzy:~ # fdisk -l
Disk /dev/sda: 21.4 GB, 21474836480 bytes 255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00067588
Device Boot Start End Blocks Id System
/dev/sda1 1 95 763056 82 Linux swap / Solaris
/dev/sda2 * 96 868 6209122+ 83 Linux
/dev/sda3 869 1958 8755425 83 Linux
完成了以上步骤,你就成功的增加VMware下LINUX虚拟机磁盘空间。
后续的添加过程则跟上面的介绍一样。