随着Linux虚拟机的不断使用,在vmware中经常遇到 预先装好的 linux 虚拟机的硬盘空间过小 的问题,造成很多软件不能安装, 而重新装一个,又挺麻烦。于是,上网搜了下关于 vmware 硬盘扩容的方法。 总结如下:
1、挂载点必须是一个目录。
2、一个分区挂载在一个已存在的目录上,这个目录可以不为空,但挂载后这个目录下以前的内容将不可用。
一:首先使用VMware工具扩容分配的硬盘空间:
1 、 vmware 提供一个命令行工具, vmware-vdiskmanager.exe ,位于 vmware 的安装目录下,比如
C:Program FilesVMwareVMware Workstationvmware-vdiskmanager.exe.
在 windows 下运行 cmd ,转到 vmware 的安装目录
vmware-vdiskmanager.exe 可以查看帮助
2. 对于扩容,可以输入下列命令:
vmware-vdiskmanager -x 50Gb “D:VMwareWinXPmyLinux.vmdk“
注: 要扩容的系统这时不能在运行 ,参数 “-x“ 表示要扩展虚拟机硬盘空间,紧随其后的数字是要扩展到的大小 ( 本例为扩展到 50GB ,这是一个磁盘总量,包含了原先的磁盘容量 ) 。 最后是指定要操作的虚拟机磁盘的具体文件,要是路径名中有空格,必须以双引号括起来。按回车键开始执行,执行完毕,退出命令提示符窗口,
重启 VMware ,会发现虚拟机硬盘空间已变成 50GB 了。
我们重启虚拟机后,发现虚拟机的硬盘是变成 50GB 了,但进入 linux 系统后,用 “df -ah“ 查看发现硬盘空间还是原先那么大。
虽然已经扩大了磁盘,但是由于还没有经过分区,指定文件系统,所以 linux 操作系统无法识别(其实就相当于你的硬盘虽然大了,但是你并没有对其进行分区是一个道理)。下面我们进行分区处理。
方法二:使用VM图形界面,关闭虚拟机,编辑虚拟机配置,直接将硬盘空间扩容。
3. 分区:( 这时要切换为 Root 用户,Ubuntu下使用sudo命令 )
fdisk 命令: fdisk -l : 打印当前的磁盘分区表,这时我们可以看到磁盘的总量的确增加到 50GB 了,但是分区只有以前的那几个原有的分区。
键入命令: fdisk /dev/sda “sda 就是经过扩容的硬盘,为 SCSI 硬盘, IDE 类型硬盘对应为 hda ,是对该硬盘进行操作 “
键入 : m “ 列出 fdisk 的帮助 “
我们在这里是要添加一个新分区,即将扩容出来的那部分做成一个新分区,这样才能被操作系统挂载识别。
键入: n “ 命令 n 用于添加新分区 “
此时, fdisk 会让你选择添加为逻辑分区呢(编号从 5 开始)还是主分区(编号 1 到 4 )。选择主分区吧,则键入 p ;选择逻辑分区键入 l 。
我们选择主分区于是:
键入: p “ 选择创建主分区 “
此时, fdisk 会让你选择主分区的编号,如果已经有了主分区 sda1 , sda2 ,那么编号就选 3 ,即要创建的该分区为 sda3.
键入: 3
此时, fdisk 又会让你选择该分区的开始值这个就是分区的 Start 值( start cylinder );这里最好直接按回车,
如果您输入了一个非默认的数字,会造成空间浪费;
此时键入: w “ 保存所有并退出,分区划分完毕 “
我们现在还不能用这个分区 , 因 没格式化 ,这时要重启系统就能够在 dev 下面看到 sda3 ,如果不重启不能进行下面操作
4. 格式化该新添加的分区:
键入: mkfs -t ext3 /dev/sda3
或者 mkfs.ext3 /dev/sda3 格式化指定的分区 , 依次类推 , 现在的系统大部分都是 ext3 格式 , 如果你需要其它的 , 可以查看 mkfs 的帮助。
此时我们就可以使用该新增分区啦:
5 、挂载该分区:
手动挂载,则键入:sudo mount /dev/sda3 /mnt/sda3 表示将该新分区挂载到 /mnt/sda3 / 这个目录下面
(注:Ubuntu下默认是挂载到 /media对应目录下,并且手动挂载的信息在/etc/mtab文件下有登记信息)
开机自动挂载,则修改 /etc/fstab 文件,在这个文件里面添加一行:
/dev/sda3 /mnt/sda3 ext3 defaults, 0 1
到这里就可以使用该新加分区啦 。
Redhat环境下手动挂载:
1新建/oracledir文件夹
2 mount /dev/sda3/ /oracledir