首页 > 代码库 > VMware虚拟机常见操作

VMware虚拟机常见操作

Ø  VMware虚拟机中扩大Linux硬盘空间

### 扩容空间
VMware
提供一个命令行工具,vmware-vdiskmanager.exe,位于vmware的安装目录下,在windows下运行cmd,转到 vmware 的安装目录,运行vmware-vdiskmanager.exe可以查看帮助, 使用以下命令进行扩容
vmware-vdiskmanager -x 40Gb "f:\VMW\CentOS-6.0\CentOS-6.0.vmdk"
注意:要扩容的系统这时不能在运行,参数”-x”表示要扩展虚拟机硬盘空间,紧随其后的数字是要扩展到的大小(本例为扩展到40GB,这是一个磁盘总量,包含了原先的磁盘容量)。最后是指定要操作的虚拟机磁盘的具体文件,要是路径名中有空格,必须以双引号括起来。按回车键开始执行,执行完毕,退出命令提示符窗口,重启VMware,会发现虚拟机硬盘空间已变成40GB了。
重启虚拟机后,发现虚拟机的硬盘是变成40GB,但进入linux系统后,用"df -kTh"查看发现硬盘空间还是原先那么大。

还可以使用VM图形界面,关闭虚拟机,编辑虚拟机配置,直接将硬盘空间扩容。
虽然已经扩大了磁盘,但是由于还没有经过分区,指定文件系统,所以linux操作系统无法识别(其实就相当于你的硬盘虽然大了,但是你并没有对其进行分区是一个道理)。

###
对扩容的空间进行分区:(root用户登录)
fdisk -l    # 打印当前的磁盘分区表,这时我们可以看到磁盘的总量的确增加到40GB了,但是分区只有以前的那几个原有的分区。
df -kTh        # 还是跟未增加硬盘时的样子
fdisk /dev/sda   # sda 就是经过扩容的硬盘,为SCSI硬盘,IDE类型硬盘对应为hda,是对该硬盘进行操作
我们在这里是要添加一个新分区,即将扩容出来的那部分做成一个新分区,这样才能被操作系统挂载识别。
键入:    n    # 命令 n 用于添加新分区 
此时, fdisk 会让你选择添加为逻辑分区呢(编号从5开始)还是主分区(编号1 4)。选择主分区,则键入p;选择逻辑分区键入l
由于我们选择的是主分区,因此
键入:    p    # 选择创建主分区
此时,fdisk会让你选择主分区的编号,如果已经有了主分区sda1sda2,那么编号就选 3 依次类推,即要创建的该分区为 sda3
键入:    3
此时,fdisk又会让你选择该分区的开始值这个就是分区的Start 值(start cylinder);这里最好直接按回车,如果您输入了一个非默认的数字,会造成空间浪费。
此时键入: w    # 保存所有并退出,分区划分完毕 
我们现在还不能用这个分区,因为还没有格式化,这时要重启系统就能够在dev下面看到sda3,如果不重启就不能进行下面操作。
重启系统
4.
格式化该新添加的分区
键入: mkfs -t ext4  /dev/sda3
或者   mkfs.ext4  /dev/sda3 格式化指定的分区,依次类推,现在的系统大部分都是ext4格式,如果你需要其它的,可以查看 mkfs 的帮助。
5.
挂载该分区
手动挂载,则键入:mount /dev/sda3  /home/mark/ework 表示将该新分区挂载到 /home/mark/ework 这个目录下面
设置开机自动挂载,修改 /etc/fstab 文件,在这个文件里面添加一行:
/dev/sda3      /home/mark/ework       ext4   defaults        0       1

 

 

Ø  VMWare克隆或复制没有IP

1.症状

a> 上不了网了
b> service network restart
报错“bring up interface eth0: device eth0 does not seem to be present, delaying initialization”
c> ifconfig
lo        Link encap:Local Loopback
          ......
d> ifconfig -a
eth1      Link encap:Ethernet  HWaddr 00:0C:29::6B:21:A6
          ......

lo        Link encap:Local Loopback
          ......

2. 症状分析

   说明克隆或复制CentOS虚拟机后,VMWare为了避免网卡冲突又重新为新的CentOS虚拟机虚拟出来了一个网卡eth1,这就是为什么 ifconfig 时没有 eth0 了,虽然 VMWare 为新的 CentOS 虚拟机虚拟了一个新的网卡 eth1,但它并没有更改 /etc/sysconfig /network-scripts/ifcfg-eth0 的信息,因此错误就出现了。如果克隆多次还可能会有 eth2,eth3 等,这里不说了。

3. 解决方法


a> 
mv /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth1
b>
修改/etc/sysconfig/network-scripts/ifcfg-eth1中的
DEVICE="eth0"改为DEVICE="eth1"
HWADDR="XX:XX:XX:XX:XX:XX"改为eth1的物理地址(用ifconfig -a查看,也就是前面用红色部分)
c> 
service network restart

 

Ø VMware三种网络模式简介 

1.bridged(桥接模式)
  在这种模式下,VMWare虚拟出来的操作系统就像是局域网中的一***立的主机,它可以访问网内任何一台机器。在桥接模式下,你需要手工为虚拟系统配置IP地址、子网掩码,而且还要和宿主机器处于同一网段,这样虚拟系统才能和宿主机器进行通信。同时,由于这个虚拟系统是局域网中的一个独立的主机系统,那么就可以手工配置它的TCP/IP配置信息,以实现通过局域网的网关或路由器访问互联网。
 使用桥接模式的虚拟系统和宿主机器的关系,就像连接在同一个Hub(多端口的转发器)上的两台电脑。想让它们相互通讯,你就需要为虚拟系统配置IP地址和子网掩码,否则就无法通信。
  如果你想利用VMWare在局域网内新建一个虚拟服务器,为局域网用户提供网络服务,就应该选择桥接模式。
2.host-only(
主机模式)
  在某些特殊的网络调试环境中,要求将真实环境和虚拟环境隔离开,这时你就可采用host-only模式。在host-only模式中,所有的虚拟系统是可以相互通信的,但虚拟系统和真实的网络是被隔离开的。
  提示:host-only模式下,虚拟系统和宿主机器系统是可以相互通信的,相当于这两台机器通过双绞线互连。
  在host-only模式下,虚拟系统的TCP/IP配置信息(IP地址、网关地址、DNS服务器等),都是由VMnet1(host-only)虚拟网络的DHCP服务器来动态分配的。
  如果你想利用VMWare创建一个与网内其他机器相隔离的虚拟系统,进行某些特殊的网络调试工作,可以选择host-only模式。
3.NAT(网络地址转换模式)
  使用NAT模式,就是让虚拟系统借助NAT(网络地址转换)功能,通过宿主机器所在的网络来访问公网。也就是说,使用NAT模式可以实现在虚拟系统里访问互联网NAT模式下的虚拟系统的TCP/IP配置信息是由VMnet8(NAT)虚拟网络的DHCP服务器提供的,无法进行手工修改,因此虚拟系统也就无法和本局域网中的其他真实主机进行通讯。采用NAT模式最大的优势是虚拟系统接入互联网非常简单,你不需要进行任何其他的配置,只需要宿主机器能访问互联网即可。
  如果你想利用VMWare安装一个新的虚拟系统,在虚拟系统中不用进行任何手工配置就能直接访问互联网,建议你采用NAT模式。
提示: 以上所提到的NAT模式下的VMnet8虚拟网络host-only模式下的VMnet1虚拟网络,以及bridged模式下的VMnet0虚拟网络,都是由VMWare虚拟机自动配置而生成的,不需要用户自行设置。VMnet8VMnet1提供DHCP服务,VMnet0虚拟网络则不提供。

VMware虚拟机常见操作