日期:2014-05-16  浏览次数:20633 次

VMWare中增加Linux的文件系统空间

有时候会遇到这样的情况:刚开始给VMWare分配了一个虚拟硬盘,安装Linux后,随着工作中使用得越来越多,虚拟硬盘容量逐渐变得不够用,需要扩充空间。下面说明如何在VMWare中增加Linux的文件系统空间。

我的VMWare中安装的是Fedora 9,不过其它Linux应该大同小异。

首先在VMWare中调整虚拟硬盘的大小(在“Virtual Machine Settings”的Hardware选项卡里选择“Hard Disk(SCSI)”,在右侧的Utilities里选择Expand进行扩展)。
?

启动Linux,键入df -h查看磁盘信息:

1.[root@localhost ~]# df -h?
2.Filesystem??????????? Size? Used Avail Use% Mounted on?
3./dev/mapper/VolGroup00-LogVol00?
4.?????????????????????? 29G?? 26G? 2.3G? 92% /?
5./dev/sda1???????????? 190M?? 13M? 168M?? 7% /boot?
6.tmpfs???????????????? 506M?? 48K? 506M?? 1% /dev/shm?
7.gvfs-fuse-daemon?????? 29G?? 26G? 2.3G? 92% /root/.gvfs?
可以看到新增加的硬盘容量并没有体现在Linux中。使用fdisk -l查看分区表信息。www.linuxidc.com 我的信息是:

1.[root@localhost ~]# fdisk -l?
2.?
3.Disk /dev/sda: 42.9 GB, 42949672960 bytes?
4.255 heads, 63 sectors/track, 5221 cylinders?
5.Units = cylinders of 16065 * 512 = 8225280 bytes?
6.Disk identifier: 0x000f1526?
7.?
8.?? Device Boot????? Start???????? End????? Blocks?? Id? System?
9./dev/sda1?? *?????????? 1????????? 25????? 200781?? 83? Linux?
10./dev/sda2????????????? 26??????? 3916??? 31254457+? 8e? Linux LVM?
注意Disk /Dev/sda有40多G空间(刚刚通过VMWare扩展的),但两个Device /dev/sda1和/dev/sda2加起来只有30多G,有10G空间没有被使用。

从调整分区表入手,调整分区表用fdisk。这个过程需要人机交互,我在需要输入的地方加注释来说明

1.[root@localhost ~]# fdisk /dev/sda?
2.?
3.The number of cylinders for this disk is set to 5221.?
4.There is nothing wrong with that, but this is larger than 1024,?
5.and could in certain setups cause problems with:?
6.1) software that runs at boot time (e.g., old versions of LILO)?
7.2) booting and partitioning software from other OSs?
8.?? (e.g., DOS FDISK, OS/2 FDISK)?
9.?
10.Command (m for help): n?????? //选择n表示新建分区?
11.Command action?
12.?? e?? extended?
13.?? p?? primary partition (1-4)?
14.e???????????????????????????? //选择e表示建立扩展分区?
15.Partition number (1-4): 3???? //选择3是因为1和2都被占了(/dev/dsa1和/dev/dsa2)?
16.First cylinder (3917-5221, default 3917):?????????????????????????????? //此分区起始柱面,直接按回车,使用默认值?
17.Using default value 3917?
18.Last cylinder or +size or +sizeM or +sizeK (3917-5221, default 5221):?? //此分区大小,直接按回车,使用默认值(表明包含所有剩余空间)?
19.Using default value 5221?
20.?
21.Command (m for help): n?????? //在扩展分区基础上新建逻辑分区?
22.Command action?
23.?? l?? logical (5 or over)?
24.?? p?? primary partition (1-4)?
25.l???????????????????????????? //选择l表示新建逻辑分区?
26.First cylinder (3917-5221, default 3917):?????????????????????????????? //直接按回车?
27.Using default value 3917?
28.Last cylinder or +size or +sizeM or +sizeK (3917-5221, default 5221):?? //直接按回车?
29.Using default value 5221?
30.?
31.Command (m for help): p?????? //选择p查看新的分区表,发现已经新建成功?
32.?
33.Disk /dev/sda: 42.9 GB, 42949672960 bytes?
34.255 heads, 63 sectors/track, 5221 cylinders?
35.Units = cylinders of 16065 * 512 = 8225280 bytes?
36.Disk identifier: 0x000f1526?
37.?
38.?? Device Boot????? Start???????? End????? Blocks?? Id? System?
39./dev/sda1?? *?????????? 1????????? 25????? 200781?? 83? Linux?
40./dev/sda2????????????? 26??????? 3916??? 31254457+? 8e? Linux LVM?
41./dev/sda3??????????? 3917??????? 5221??? 10482412+?? 5? Extended?
42./dev/sda5??????????? 3917??????? 5221??? 10482381?? 83? Linux?
43.?
44.Command (m for help): w?????? //选择w保存?
45.The partition table has been altered!?
46.?
47.Calling ioctl() to re-read partition table.?
48.?
49.WARNING: Re-reading the partition table failed with error 16: Device or resource busy.?
50.The kernel still uses the old table.?
51.The new table will be used at the next reboot.?
52.Syncing disks.?
可以看到新增了/dev/sda3扩展分区和/dev/sda5逻辑分区。

键入partprobe命令,这个命令用于在硬盘分区发生改变时,www.linuxidc.com 更新Linux内核中读取的硬盘分区表数据。

1.[root@localhost ~]# partprobe?
我们使用ext3