nux系统越来越受到电脑用户的欢迎,于是很多人开始学习Linux时,学习Linux,你可能会遇到Linux调整虚拟机硬盘大小问题,这里将介绍Linux调整虚拟机硬盘大小问题的解决方法,在这里拿出来和大家分享一下。平时都用虚拟机做实验,做一些Linux方面的开发应用,但是很烦人的是经常遇到预先装好的Linux虚拟机的硬盘空间过小,现在好多软件都没法安装了。自己重新装一个吧,又挺麻烦。于是,上网搜了下关于vmware硬盘扩容的方法。
一:首先介绍硬盘扩容的方法:
1、vmware提供一个命令行工具,,位于vmware的安装目录下,比如
C:\Program Files\VMware\VMware
在windows的cmd窗口中,转到vmware的安装目录
即:cd C:\Program Files\VMware\VMware Workstation\
< 可以查看帮助
2. 对于扩容,可以输入下列命令:
vmware-vdiskmanager -x 4Gb "D:\VMware\WinXP\myLinux.vmdk"
参数"-x"表示要扩展虚拟机硬盘空间,紧随其后的数字是要扩展到的大小(本例为扩展到4GB,这是一个磁盘总量,包含了原先的磁盘容量)。
最后是指定要操作的虚拟机磁盘的具体文件,要是路径名中有空格,必须以双引号括起来。按回车键开始执行,执行完毕,退出命令提示符窗口,
重启VMware,会发现虚拟机硬盘空间已变成4GB了。 网上的说明大都到这一步就结束了,其实不然。我们重启虚拟机后,发现虚拟机的硬盘是变成4GB了,但进入Linux系统后,用"df -ah"查看发现硬盘空间还是原先那么大。
虽然已经扩大了磁盘,但是由于还没有经过分区,指定文件系统,所以Linux操作系统无法识别(其实就相当于你的硬盘虽然大了,但是你并没有对其进行分区是一个道理)。下面我们进行分区处理。
3. 分区:
fdisk命令: fdisk -l  :打印当前的磁盘分区表,这时我们可以看到磁盘的总量的确增加到4GB了,但是分区只有以前的那几个原有的分区。
键入命令:fdisk /dev/sda  “sda就是经过扩容的硬盘,为SCSI硬盘,IDE类型硬盘对应为hda,是对该硬盘进行操作”
键入 :  m    “ 列出fdisk的帮助”
我们在这里是要添加一个新分区,即将扩容出来的那部分做成一个新分区,这样才能被操作系统挂载识别。
键入:    n    ” 命令n用于添加新分区"
此时,fdisk会让你选择添加为逻辑分区呢(编号从5开始)还是主分区(编号1到4)。选择主分区吧,则键入p;选择逻辑分区键入l。
我们选择主分区于是:
键入:  p              " 选择创建主分区" 此时,fdisk会让你选择主分区的编号,如果已经有了主分区sda1,sda2,那么编号就选3,即要创建的该分区为sda3.
键入:    3
此时,f
disk又会让你选择该分区的开始值这个就是分区的Start 值(start cylinder);这里最好直接按回车,
如果您输入了一个非默认的数字,会造成空间浪费;
此时键入:w              "保存所有并退出,分区划分完毕"
需要重启才能到这个区我们现在还不能用这个分区,为什么? 没格式化呀,呵呵!
4. 格式化该新添加的分区:
键入:mkfs -t ext3  /dev/sda3 
或者  3    /dev/sda3 格式化指定的分区,依次类推,现在的系统大部分都是 ext3 格式,如果你需要其它的,可以查看mkfs的帮助。
此时我们就可以使用该新增分区啦:
5、挂载该分区:
手动挂载,则键入:mount /dev/sda3  /home/work/        "表示将该新分区挂载到/home/work/这个目录下面" 开机自动挂载,则修改/etc/fstab文件,在这个文件里面添加一行:
/dev/sda3      /home/work      ext3    defaults,        0      1      "关于该文件的格式,以后写文章讨论^_^"
以后每次开机都会将该分区挂在大work目录下面了。
到这里就可以使用该新加分区啦 。
虚拟机lvm扩容
现在使用VMWare的朋友应该很多了,特别是用VMWare安装Linux操作系统的。匆匆忙忙安装之后,某天突然发现虚拟机硬盘不够用了,怎么办?
  不必慌张,因为你的慌张,正说明了你可能不太熟悉Linux都自带的LVM(Logical Volume Manager,逻辑卷管理),而且更大的可能是,你的Linux已经在使用LVM了。输入命令:
df -h
文件系统????????????? 容量? 已用 可用 已用% 挂载点
/dev/mapper/VolGroup00-LogVol00
?????????????????????? 28G? 6.2G?? 20G? 25% /
/dev/sda1????????????? 99M?? 26M?? 68M? 28% /boot
tmpfs???????????????? 506M???? 0? 506M?? 0% /dev/shm
  如果看到了Vol字样,说明你最好要继续阅读本文,按下面的操作,你可以让根分区的总空间从28G变成58G,从头到尾都不必使用mount命令,更不用修改/etc/fstab,你的硬盘看起来是自己在长大一样。
linux磁盘管理
一、扩展VMWare硬盘空间
  关闭Vmware 的 Linux系统,这样,才能在VMWare菜单中设置:
  VM -> -> Hardware -> Hard Disk -> Utilities -> Expand
  输入你想要扩展到多少G。本文假设你新增加了 30G
二、对新增加的硬盘进行分区、格式化
  这里进行一个极简化的介绍,非常简化,但很全面,上面已经知道增加了空间的硬盘是 /dev/sda。
  分区:
fdisk /dev/sda    操作 /dev/sda 的分区表
p       查看已分区数量(我看到有两个 /dev/sda1 /dev/sda2)
n       新增加一个分区
p       分区类型我们选择为主分区
3       分区号选3(因为1,2已经用过了,见上)
回车      默认(起始扇区)
回车      默认(结束扇区
t       修改分区类型
3       选分区3
8e      修改为LVM(8e就是LVM)
w      写分区表
q      完成,退出fdisk命令
  可能,系统提示你重启,但你可以不重启,输入命令:
partprobe
  格式化:
<3 /dev/sda3
三、添加新LVM到已有的LVM组,实现扩容
lvm                  进入lvm管理
lvm>pvcreate /dev/sda3         这是初始化刚才的分区,必须的
lvm>vgextend VolGroup00 /dev/sda3   将初始化过的分区加入到虚拟卷组VolGroup00
lvm>lvextend -L +29.3G? /dev/VolGroup00/LogVol00  扩展已有卷的容量(29.3G这个数字在后面解释)
lvm>pvdisplay              查看卷容量,这时你会看到一个很大的卷了
lvm>quit                 可以收工了
上面那个 29.3G 怎么来的呢?因为你在VMWare新增加了30G,但这些空间不能全被LVM用了,你可以在上面的lvextend操作中一个一个的试探,比如 29.9G, 29.8G ... 直到不报错为止,这样你就可以充分使用新增加的硬盘空间了,当然这是因为我不懂才用的笨办法,高手笑笑就过了吧。
以上只是卷扩容了,下面是文件系统的真正扩容,输入以下命令:
resize2fs /dev/VolGroup00/LogVol00
这样,扩容就完成了,再总结一下过程:
VMWare扩展硬盘空间->Linux下分区、格式化->LVM卷管理->使文件系统生效