最近在vmware上做了一个redhat的虚拟主机,但是由于预先分配的容量较小,安装软件后不够用,所以需要扩容.
虚拟软件版本:vmware workstation ace edtion 6.0.xxx
linux版本:redhat linux 9
一. 虚拟文件扩容
先去到vmware安装目录, 找到vmware-vdiskmanager.exe. 执行它可看到参数列表:
VMware Virtual Disk Manager - build 45731.
Usage: vmware-vdiskmanager.exe OPTIONS <disk-name> | <mount-point>
Offline disk manipulation utility
Options:
-c : create disk; need to specify other create options
-d : defragment the specified virtual disk
-k : shrink the specified virtual disk
-n <source-disk> : rename the specified virtual disk; need to
specify destination disk-name
-p : prepare the mounted virtual disk specified by
the drive-letter for shrinking
-q : do not log messages
-r <source-disk> : convert the specified disk; need to specify
destination disk-type
-x <new-capacity> : expand the disk to the specified capacity
Additional options for create and convert:
-a <adapter> : (for use with -c only) adapter type (ide, buslogic o
r lsilogic)
-s <size> : capacity of the virtual disk
-t <disk-type> : disk type id
Disk types:
0 : single growable virtual disk
1 : growable virtual disk split in 2Gb files
2 : preallocated virtual disk
3 : preallocated virtual disk split in 2Gb files
The capacity can be specified in sectors, Kb, Mb or Gb.
The acceptable ranges:
ide adapter : [100.0Mb, 950.0Gb]
scsi adapter: [100.0Mb, 950.0Gb]
ex 1: vmware-vdiskmanager.exe -c -s 850Mb -a ide -t 0 myIdeDisk.vmdk
ex 2: vmware-vdiskmanager.exe -d myDisk.vmdk
ex 3: vmware-vdiskmanager.exe -r sourceDisk.vmdk -t 0 destinationDisk.vm
dk
ex 4: vmware-vdiskmanager.exe -x 36Gb myDisk.vmdk
ex 5: vmware-vdiskmanager.exe -n sourceName.vmdk destinationName.vmdk
ex 6: vmware-vdiskmanager.exe -k myDisk.vmdk
ex 7: vmware-vdiskmanager.exe -p <mount-point>
(A virtual disk first needs to be mounted at <mount-point>)
最下面有些例子,按照例子, 我将本机的文件扩容. 命令如下:
vmware-vdiskmanager -x 8Gb "e;/vmware/red hat linux/Red Hat Linux.vmdk"
执行成功就扩容成功,相当与增加硬盘容量.
二. linux增加分区
1.分区基础知识:
在 Linux 中规定,每一个硬盘设备最多能有 4 个主分区(其中包含扩展分区)构成,任何一个扩展分区都要占用一个主分区号码,也就是在一个硬盘中,主分区和扩展分区一共最多是 4 个。对于早期的 DOS 和 Windows(Windows 2000 以前的版本),系统只承认一个主分区,可以通过在扩展分区上增加逻辑盘符(逻辑分区)的方法,进一步地细化分区。
主分区的作用就是计算机用来进行启动操作系统的,因此每一个操作系统的启动,或者称作是引导程序,都应该存放在主分区上。这就是主分区和扩展分区及逻辑分区的最大区别。我们在指定安装引导 Linux 的 bootloader 的时候,都要指定在主分区上,就是最好的例证。
Linux 规定了主分区(或者扩展分区)占用 1 至 16 号码中的前 4 个号码。以第一个 IDE 硬盘为例说明,主分区(或者扩展分区)占用了 hda1、hda2、hda3、hda4,而逻辑分区占用了 hda5 到 hda16 等 12 个号码。因此,Linux 下面每一个硬盘总共最多有 16 个分区。
引自http://www.unlinux.com/doc/newbie/20051028/6045.html
2. 增加分区
先用df命令查看linux的磁盘分区情况, 由于虚拟机默认使用scsi硬盘方式.所以单块硬盘设备号是/dev/sda.
然后再用fdisk进行分区, 本人是增加基本第4个分区(2G). fdisk命令不介绍了.主要如下:
$ fdisk /dev/sda
进去后有些选项, m ,a ,w(保存) 之类的. 重新启动机器让分区生效.
然后再用mkfs对分区格式化:
mkfs [ -V ] [ -t fstype ] [ fs-options ] filesys [ blocks ]
我的命令是: mkfs.ext3 /dev/sda4
3.挂载分区
在/创建一个挂载点 /extend, 看你自己子欢喜方在哪都可以.
去到/etc/fstab修改该文件(用文本编辑器), 如下所示例:
LABEL=/ / ext3 defaults 1 1
LABEL=/boot /boot ext3 defaults 1 2
none /dev/pts devpts gid=5,mode=620 0 0
none /proc proc defaults 0 0
none /dev/shm tmpfs defaults 0 0
/dev/sda3 swap swap defaults 0 0
/dev/cdrom /mnt/cdrom udf,iso9660 noauto,owner,kudzu,ro 0 0
/dev/fd0 /mnt/floppy auto noauto,owner,kudzu 0 0
# Beginning of the block added by the VMware software
.host:/ /mnt/hgfs vmhgfs defaults,ttl=5 0 0
# End of the block added by the VMware software
/dev/sda4 /extend ext3 defaults 0 0
4.重新启动机器.