现在使用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,你的硬盘看起来是自己在长大一样。
一、扩展VMWare硬盘空间
关闭Vmware 的 Linux系统,这样,才能在VMWare菜单中设置:
VM -> Settings... -> 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
格式化:
mkfs.ext3 /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卷管理->使文件系统生效。
不必慌张,因为你的慌张,正说明了你可能不太熟悉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,你的硬盘看起来是自己在长大一样。
一、扩展VMWare硬盘空间
关闭Vmware 的 Linux系统,这样,才能在VMWare菜单中设置:
VM -> Settings... -> 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
格式化:
mkfs.ext3 /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卷管理->使文件系统生效。