【Linux】 CentOS7 虚拟机配置

Linux虚拟机配置

  从去年开始实习开始,公司电脑换了两个,自己的电脑也换了一个,每换一个新电脑,总免不了要去装一个Linux的虚拟机作为试验用。但是每次新装一个机器总是会遇到各种各样的问题让我用的不爽。。终于趁这次把一些配置中的问题全部集中起来,下次碰到的时候也可以来查。

  我用的虚拟机管理软件是VisualBox,相比于更加多人用的vmware,visualbox更加轻量一点。

■  安装过程

  安装过程就是把ISO镜像加载到光驱中,然后开启虚拟机按部就班地往下操作就行了。但是昨天遇到一个小坑,就是我使用了visualbox默认给出的Linux配置(256M内存+4G磁盘)加载CentOS7镜像安装的时候,总是卡死在选择语言的界面上。事实上,以前装CentOS6的时候还会提示“内存可能不足以支持图形安装界面,是否选择字符安装界面”,到了7直接默认是图形安装界面了。。所以在配置的时候把内存扩大到512M,就可以顺利安装而不会卡死在语言选择界面上了。

■  网络配置

  先来说说我对网络配置的需求吧。从功能上说,我希望虚拟机可以联通外网,也就是ping www.baidu.com要能通。另外不习惯虚拟机自带的操作终端而习惯用XShell这些SSH工具来通过SSH通道操作机器,所以还需要宿主机能够联通虚拟机。

  综上所述,我一直以来做的最佳实践都是这样的。首先为虚拟机配置两块网卡,第一块是网络地址转换(NAT)

  第二块是桥接网卡,相当于让虚拟机得到一个和宿主机同一个网段的IP

  另外还有一个小坑需要注意,一定要把下面的接入网线的勾勾打上!!

  配置完成之后重启虚拟机应该就可以达到目的了。但是有时候会因为一些奇奇怪怪的原因而失败,比如在公司里用虚拟机时我的桥接网卡IP总是会显示成1.168.xxx.xxx。很明显这个IP应该是192.168.xxx.xxx这可能是因为公司对虚拟机的dhcp有控制,但是这样的话宿主机就连不上虚拟机了。我的解决方法是固定IP:

  固定虚拟机某个网卡的IP的做法,首先进入/etc/sysconifg/network-script/下,里面有些类似于ifcfg-<网卡名称>的文件,这些就是网卡启动时读取的配置文件。如果想要固定IP需要修改这些文件。我的那个CentOS7镜像中默认情况下除了本地回环网卡lo之外只有一个enp0s3的配置,我们可以cp这个文件为ifcfg-enp0s8(这个enp0s8是根据实际的第二张网卡的名称决定的,查看网卡名称的话可以键入ifconfig就知道了)然后对其进行一些修改。比如把BOOTPROTO=dhcp改成BOOTPROTO=none,然后把NAME和DEVICE这几个字段改成enp0s8,ONBOOT也可以改成yes(开机自动启动)。另外检查一下主机所在网段的子网掩码是多少,如果不是默认个的255.255.255.0的话也要加上NETMASK=<子网掩码>以保证这个固定IP是和主机在同一网段的,否则也将主机ping不同虚拟机。

  至此,再重启一下,ifconfig看一下IP,应该就没问题了。可以做到虚拟机能联通外网并且宿主机可以通过ssh来连接虚拟机。

 

■  共享文件夹和安装增强功能

  若要用共享文件夹等功能,就必要让虚拟机安装增强功能。这个可以在VBox虚拟机的窗口上面的设备菜单中找到,这其实是VBox自带的一个iso文件,用来给我们的虚拟机增强功能的。安装过程中可能会遇到以下问题。首先有可能会提示找不到光盘之类的错误,这主要说明了这个iso文件在此之前就已经被加载到虚拟机的光驱中去了。解决办法就是弹出,实际上那个报错信息下面的一个选项就是强制弹出。弹出之后再选择即可。

  第二个问题是点击了安装增强功能之后没有反应。网上说有可能是需要yum install kernel和kernel-devel这两个包。我试了之后依然没有好,后来才意识到是我傻逼了。。网上的很多教程都是针对有图形界面的Ubuntu系统,对CentOS系统没有说明,其实没有反应是因为光盘已经被加载到光驱中,但是由于我用的虚拟机没有图形界面,没有感知到这一点。其实可以到/dev/中去看已经有了cdrom这个设备了。然后把这个设备挂在到一个目录下,比如mount /dev/cdrom /mnt/。之后到/mnt中就可以看到光盘中的内容了。如果是Linux那么就./VBoxLinuxAdditions.run 运行这个文件即可。我第一次运行还报错找不到bzip2命令,只好再yum install bzip2。至此终于完成了功能增强的安装。

  安装完增强功能之后就可以进行共享文件夹的设置了。在虚拟机管理界面的设置里面的共享文件夹选项中。为了方便可以勾选固定分配并在固定分配中建立新的共享文件夹。在设置时的路径指的是主机上文件夹的路径,根据需求也可以勾选只读挂载和自动挂载等选项。这里先不选。记录下共享文件夹名称,这个其实并不是指主机或者虚拟机上任意一方的共享文件夹的名字,而是主机完成设置后,虚拟机上能够发现的设备的名称。

  然后进入到虚拟机中,在合适的地方进行挂载。命令是mount -t vboxsf [挂载设备名] [挂载目录],-t vboxsf 是固定的要求,挂载设备名其实就是刚才我们在设置共享文件夹时设置的那个名字,而挂载目录则是虚拟机中的某个目录咯。

 

 

 更多内容等我想起来或者遇到了坑再来补充。。

posted @ 2017-07-12 09:22  K.Takanashi  阅读(1142)  评论(0编辑  收藏  举报