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 是固定的要求,挂载设备名其实就是刚才我们在设置共享文件夹时设置的那个名字,而挂载目录则是虚拟机中的某个目录咯。

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

【Linux】 CentOS7 虚拟机配置的更多相关文章

  1. Linux(CentOS7)下配置多个tomcat

    记录 Linux(CentOS7) 下配置多个 tomcat 的操作过程. 一.下载tomcat 前提:安装配置好jdk环境,未配置可参考Linux(CentOS7)下安装jdk1.8. 从 tomc ...

  2. Macbook中VMWare的Centos7虚拟机配置静态IP并允许上网的配置方法

    一.检查Macbook本身的配置 1.打开[系统偏好设置]-[网络]- 选中[Wi-Fi]项(如果您是WIFI上网请选择此项)- 点右侧[高级] 选择[TCP/IP]选项卡,记录好[子网掩码].[路由 ...

  3. CentOS7虚拟机配置git仓库(配置虚拟机,网络,git仓库,windows端git访问)

    想要达成的目的:从windows使用git访问CentOS7服务器上搭建的git仓库 用到的软件: (1)VMware-workstation-full-15.5.0-14665864.exe (2) ...

  4. Linux CentOS7 安装配置 IPtables

    2021-08-11 1. 前言 防火墙其实就是实现 Linux 下访问控制功能的,分为硬件和软件的防火墙两种类型.无论在何网络中,防火墙工作的地方一定是网络的边缘.防火墙的策略.规则就是去定义防火墙 ...

  5. CentOS7虚拟机配置ip地址

    首先安装后的虚拟机选NAT模式配置vm的虚拟网络编辑器(vmware中的编辑),NAT模式中查看DHCP的范围,配置子网(写成和电脑一样),在linux中进入/etc/sysconfig/networ ...

  6. Linux Centos7 虚拟机上网设置

    一.Windows下网卡,共享上网模式 二.虚拟机VMnet8的网卡模 三.Linux 下配置网卡 命令: vi /etc/sysconfig/network-scripts/ifcfg-ens33 ...

  7. CentOS7虚拟机配置、Hadoop搭建、wordCount DEMO运行

    安装虚拟机 最开始先安装虚拟机,我是12.5.7版本,如果要跟着我做的话,版本最好和我一致,不然后面可能会出一些莫名其妙的错误,下载链接如下(注册码也在里面了): 链接:https://pan.bai ...

  8. linux CentOS7.2配置LNMP

    转自http://www.centoscn.com/CentosServer/www/2014/0904/3673.html 准备篇: CentOS 7.0系统安装配置图解教程 http://www. ...

  9. Linux CentOS7 httpd 配置注释

    本文首发:https://www.somata.work/2019/LinuxCentOShttpdConfigComment.html 如果没看懂可以去看看官方发布的文档 apache官方文档 co ...

随机推荐

  1. 关于 target="_blank"漏洞的分析

    创建: 于 八月 30, 2016 关于 target="_blank"漏洞的分析  一.漏洞详情:首先攻击者能够将链接(指向攻击者自己控制的页面的,该被控页面的js脚本可以对母页 ...

  2. RMAN还原时注意set newname时文件名不要有空格

      今天遇到一个非常奇怪的现象,查看ORACLE数据库的一个文件,明明这个文件是存在的,但是使用ls -lrt 查看都显示这个文件不存在.很是纳闷! 后面发现在终端输入文件名后并使用tab键时,发现文 ...

  3. FFMPEG在windows平台编译的详细过程,包括环境安装

    下面开始: 由于FFMpeg是基于Linux开发的开源项目,源代码和Windows下最常见的Visual Studio提供的C/C++编译器不兼容,因此它不能使用MSVC++编译.要想使用FFMpeg ...

  4. [linux]device eth0 does not seem to be present, delaying initialization

    mlite虚拟机启动出错,就把这个虚拟机删除掉重新建立,系统虚拟硬盘使用之前的,启动系统后不能上网,通过ifconfig查看网卡没启动,遂启动网卡服务,但是出错,就是:device eth0 does ...

  5. 错误代码: 1247 Reference 'startTime' not supported (forward reference in item list)

    1.错误描述 1 queries executed, 0 success, 1 errors, 0 warnings 查询:SELECT a.createUserId AS typeId, (SELE ...

  6. Java并发系列[7]----CountDownLatch源码分析

    CountDownLatch(闭锁)是一个很有用的工具类,利用它我们可以拦截一个或多个线程使其在某个条件成熟后再执行.它的内部提供了一个计数器,在构造闭锁时必须指定计数器的初始值,且计数器的初始值必须 ...

  7. httppost的用法(NameValuePair(简单名称值对节点类型)核心对象)

    一,案例一 定义了一个list,该list的数据类型是NameValuePair(简单名称值对节点类型),这个代码多处用于Java像url发送Post请求.在发送post请求时用该list来存放参数. ...

  8. 细说css中的position属性

    有过css开发经验的同学,对于position这个属性一定不会陌生,然而这个熟悉的属性确是面试题中的常客,也就说明了该属性在css的世界是有一定的江湖地位的,那么我们就来详细的说说position这个 ...

  9. wso2ESB - 在eclipse中启用调试模式

    最近在使用wso2ESB,记录一下使用过程中碰到的坑,先写一篇调试的(前面的工具安装就不介绍了,既然想用调试了说明你已经看过一部分文档了),以后可能会介绍其他功能的使用. 在wso2 ei的文档中,介 ...

  10. Node.js 部署免费/自动续订 HTTPS

    随着互联网快速发展,互联网信息安全越来越受到大家重视,HTTPS 应该是近两年各大厂商都在尽力普及的技术之一.国内大厂基本上已经全面普及了 HTTPS. 本文首发于我的个人网站:听说 - https: ...