②话不说▼ 2012▼ 手册 虚拟机 CentOS virtualbox ubuntu

002.制作虚拟机

virtualbox 4.1.2,安装CentOS,加强原始机器,
克隆主机一号,固定虚拟ip,共享上网,自动登录。

@史荣久 / 2012-06-04 / CC-BY-SA-3.0

1. 安装CentOS

virtualbox 4.1.2
宿主机,ASUS-N53sn,I5-2430M/2.4Gx4,6G,Ubuntu12.04-64bit
虚拟机,CentOS-6.2,网络NAT,512M,磁盘VDI,10G,动态分配。

先前偷懒,下载个安装后的镜像,如下

http://virtualboxes.org/images/centos/
CentOs 6.0 base x86

结果痛苦了,先改键盘布局从it变us,然后发现没有ssh :(
干脆自己按个吧,有啥没啥自己清楚。

File - Preferences - General中设置默认目录。
新建虚拟机(CentOS-6.2)。
挂载CentOS-6.2-i386-minimal.iso

默认安装后,不启动网络,需要自动起和DHCP

vi /etc/sysconfig/network-scripts/ifcfg-eth0
#添加
ONBOOT="yes"
BOOTPROTO="dhcp"
#然后
service network restart

2. 加强原始机器

可以上网后,还要可以和宿主机共享文件.
并设置yum 可以缓存 rpm以备其他虚拟机安装rpm

vi /etc/yum.conf
keepcache=1 #设置为缓存.

通过Install Guest Additions下载安装iso并挂进光驱.
~/.VirtualBox/VBoxGuestAdditions_4.1.12.iso

yum install gcc kernel-devel kernel-headers
mkdir /media/cdrom
mount -r /dev/cdrom /media/cdrom
cd /media/cdrom
./VBoxLinuxAdditions.run
reboot
mount -t vboxsf $your_share $mount_point

3. 克隆主机一号

clone 刚刚CentOS-6.2 成 CentOS-6.2-01
选择 reinitialize the MAC address...
下一页,选择 full Clone,很快就成功了。

修改网络类型,目的是虚拟机群间及与宿主间互通,且要固定ip。
进入VirtualBox菜单,File - Preferences - Network
Host-only Networks中添加个 vboxnet0
默认设置是192.168.56.1,DHCP开启,不需要改动。

设置虚拟机的Network,选择host-only adaptervboxnet0

clone主机后,会找不到网卡,并且启用网卡时报告以下信息。
Device eth0 does not seem to be present, delayinitialization.
需要进行以下修改。

vi /etc/udev/rules.d/70-persistent-net.rules
删掉eth0,把eth1改成eth0,记住这个新MAC地址(后3组即可)

vi /etc/sysconfig/network-scripts/ifcfg-eth0
HWADDR=”08:00:27:–:–:–” 改成新MAC地址

reboot虚拟机,可以访问了。

4. 固定虚拟ip

可以ssh登录CentOS-6.2-01了,就可以复制粘贴了。

指定网关(GATEWAY),添加或修改

GATEWAY=192.168.56.1  
HOSTNAME=vbox01  

到/etc/sysconfig/network

指定 方式,地址,掩码,类型,添加或修改

BOOTPROTO="static"
IPADDR=192.168.56.101
NETMASK=255.255.255.0

到 /etc/sysconfig/network-scripts/ifcfg-eth0

静态解析,添加

192.168.56.1 vboxgw
192.168.56.101 vbox01
192.168.56.102 vbox02
192.168.56.103 vbox03

到 /etc/hosts

设置DNS,添加

nameserver 8.8.8.8
nameserver 8.8.4.4

到 /etc/resolv.conf

5. 共享上网

默认下host-only不能上网,通过Firestarter-1.0.3可以共享上网
sudo apt-get install firestarter

菜单Edit - Preferences - FireWall - Network Settings
Internet connected ... 选择能上网的,比如无线 wlan0
Local network connected ... 选择 vbox网卡 vboxnet0

主界面选项卡 Policy中的
Inbound traffic policy
allow service 添加 DNS HTTP FTP HTTPS

Outbound traffic policy
选择 Permissive by default,blacklist traffic,不用添加任何内容.

6. 自动登录

#虚拟机(root@vbox01)
[ -e ~/.ssh/id_dsa ] || ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

#宿主机(trydofor@vboxgw)
[ -e ~/.ssh/id_dsa ] || ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
scp ~/.ssh/id_dsa.pub root@192.168.56.101:/root/vboxgw-id_dsa.pub
ssh root@192.168.56.101 "mkdir .ssh;\
cat vboxgw-id_dsa.pub >> .ssh/authorized_keys;\
restorecon -R -v /root/.ssh"
#注:restorecon 是为了取消CentOS6的SELinux的限制,否则不能自动登录。

ssh root@192.168.56.101 'cat /root/.ssh/id_dsa.pub' >> .ssh/authorized_keys
《002.制作虚拟机》 virtualbox 4.1.2,安装CentOS,加强原始机器,克隆主机一号,固定虚拟ip,共享上网,自动登录。
题图:水彩画:黑色的山,红色的山,棕色的树(麦穗 2012-12-28)