1、虚拟机软件介绍

虚拟机(Virtual Machina)软件就是一套特殊的软件,它可以作为系统独立运行,也可以运行与系统之上。

若是运行与系统之上的虚拟机软件,在一台电脑(PC或笔记本等)上安装虚拟机软件后,就可以模拟出来若干台独立的虚拟PC电脑设备,并且可以在每台虚拟的PC设备上安装运行操作系统,运行网络服务。

使用时,需要先在电脑上安装好虚拟机软件(例如:VMware Workstation),然后通过安装的虚拟机软件创建一个或多个虚拟机系统(即虚拟的电脑设备),最后在这些虚拟的电脑设备上安装操作系统并进行启动配置。最终实现在一台电脑上"同时"运行多个虚拟机设备系统。

另外,还可以将这些虚拟的系统连成局域网,用来部署网站集群架构等更深层次的运维技术。

2、安装要求

虚拟机软件的原理是利用宿主机物理硬件资源虚拟PC设备,因此对物理机硬件的要求比较高,其中最主要的是内存、硬盘和CPU资源。

首先,宿主机物理内存要足够大,最好在4GB以上,因为在创建虚拟设备时,要为每个虚拟机分配一定的内存资源(一般最小为128MB,实际学习可以设置在128~1024MB之间)和硬盘空间(默认8GB即可),ssd固态盘最好,同样也要分配CPU资源,CPU最好是I5以上,例如:每个虚拟机分配一核CPU。

3、虚拟机安装过程

3.1安装VMware Workstation虚拟机

3.2创建虚拟机

下图为安装VMware Workstation虚拟机软件打开后的虚拟机软件界面。

创建一个新的虚拟机Ctrl+n快捷键

"为虚拟机选择网络类型"极其关键,VMware虚拟机常见的网络类型有bridged(桥接)、NAT(地址转换)、host-only(仅主机)三种。

  • NAT(地址转换)

NAT(Network Address Translation),网络地址转换,NAT模式是比较简单的实现虚拟机上网的方式,NAT模式的虚拟机就是通过宿主机(物理电脑)上网和交换数据的。

在NAT模式下,虚拟机的网卡连接到宿主机的VMnet8上。此时系统的VMware NAT Service服务就充当了路由器,负责将虚拟机发到VMnet8的包进行地址转换之后发到实际的网络上,再将实际网络上返回的包进行地址转换后通过VMnet8发送给虚拟机。VMware DHCP Service负责为虚拟机分配IP地址。NAT网络类型的原理逻辑图如下图所示。

NAT网络特别适合于家庭里电脑直接连接网线的情况,办公室的局域网也适合的,优势就是不会和其他物理主机IP冲突,且在没有路由器的环境下也可以使用。推荐使用NAT模式。

  • Bridged(桥接模式)

桥接模式可以简单理解为通过物理主机网卡架设了一座桥,从而连入到了实际网络中。因此,虚拟机可以被分配与物理主机相同网段的独立IP,所有网络功能和网络中的真实机器几乎完全一样。桥接模式下的虚拟机和网内真实计算机所处的位置是一样的。

在Bridged模式下,电脑设备创建的虚拟机就像一台真正的计算机一样,它会直接连接到实际的网络上,上网与宿主机(电脑设备)没有联系。Bridged网络类型的原理逻辑图下图所示。

Bridged网络类型适合的场景:特别适合于局域网环境,优势就是虚拟机像一台真正的主机一样,缺点是可能会和其他物理主机IP冲突,并且在和宿主机交换数据时,都会经过实际的路由器。

  • Host-only(仅主机)

在Host-only模式下,虚拟机的网卡会连接到宿主的VMnet1上,但宿主系统并不为虚拟机提供任何路由服务,因此虚拟机只能和宿主机进行通信,不能连接到实际网络上,即无法上网。Host-only网络类型的原理逻辑图如下图所示。

此时硬件配置完成。

3.3安装操作系统  

CentOS6.6磁盘的分区方式有五种:

  • Use All Space:删除当前磁盘内的所有分区,包括其他系统创建的分区。
  • Replace Existing Linux System(s):删除当前磁盘内的所有Linux分区,而不删除其他系统创建的分区,这是默认的选项。
  • Shrink Current System:利用(挤压)分区上存在的所有空闲空间,创建系统默认的分区布局。
  • Use Free Space:使用未使用的分区空间。
  • Create Custom Lavout:自定义分区方式。

这里选择最后一种分区方式Create Custom Lavout,即由管理员自行定制分区,因为它更灵活。

Linux系统磁盘分区

1、磁盘在使用前一般要先分区。

2、磁盘分区有主分区、扩展分区和逻辑分区之分。一块磁盘最多可以有4个主分区,其中一个主分区的位置可以用一个扩展分区替换,在这个扩展分区内可以划分多个逻辑分区。

3、如果规划的分区数量超过4个:则分区组合为3primary+1extend或2p+1e或1p+1e。

4、一块磁盘最多只能有一个扩展分区,扩展分区不能直接使用,必须在扩展分区上划分逻辑分区,然后格式化(创建文件系统),之后才能存数据或装系统。

磁盘分区命名及编号方式

1、以设备名命名

在Linux系统中,磁盘设备一般存放在"/dev"目录中,不同的设备对应的设备名称如下:

  • 系统的第一块IDE接口的硬盘称为/dev/hda。
  • 系统的第二块IDE接口的硬盘称为/dev/hdb。
  • 系统的第一块SCSI接口的硬盘称为/dev/sda。
  • 系统的第二块SCSI接口的硬盘称为/dev/sdb。

2、使用数字编号

为了表示不同的分区,通常会用数字进行编号。

  • 系统的第一块IDE接口硬盘的第一个分区称为/dev/hda1 。
  • 系统的第一块IDE接口硬盘的第五个分区称为/dev/hda5 。
  • 系统的第二块SCSI接口硬盘的第一个分区称为/dev/sdb1 。
  • 系统的第二块SCSI接口硬盘的第五个分区称为/dev/sdb5 。

分区的编号1—4,只能给P+E,L分区的编号只能从5开始。

Linux系统对分区的基本要求

1、至少要有一个跟(/)分区,用来存放系统文件及程序。其大小至少在5GB以上。

2、要有一个swap(交换)分区,它的作用相当于Windows里的虚拟内存,swap分区的大小一般为物理内存容量的1.5倍(内存<8GB)。但当系统物理内存大于8GB时,swap分区配置8—16GB即可,太大无用,浪费磁盘空间。swap分区不是必须的,但是大多数情况还是设置比较好,个别企业的数据库应用场景不分swap。

3、/boot分区,这是Linux系统的引导分区,用于存放系统引导文件,如Linux内核等。所有文件的总大小一般只有几十MB,并且以后也不会增大太多。因此,该分区可以设置为100—200MB,这个分区也不是必须的。

界面选项说明:

1、Mount Point:挂载点,这是Linux下访问磁盘分区的入口,即如果要往分区里写入数据,就必须通过/boot入口来写入,这一点和Windows是不同的。

2、File System Type:文件系统类型,就像Windows的fat/ntfs一样,只有在设置了文件系统并格式化挂载后,分区才能存放数据。

3、文件系统类型介绍

  • ext2/ext3/ext4:适合Linux的文件系统类型。由于ext3文件系统多了日志记录功能,因此系统恢复起来会更快速,ext4是ext3的升级,效率更加高,因此建议使用默认的ext4类型,而不要使用ext2/ext3 。
  • physical volume(LVM):这是一种弹性调整文件系统大小的机制,即可以让文件系统变大或变小,而不改变原有文件数据的内容,功能不错,但性能不佳。
  • software RAID:利用Linux系统的特性,用软件仿真出磁盘阵列的功能。
  • swap:内存交换空间。由于swap并不会使用到目录树的挂载,因此用swap就不需要指定挂载点。
  • vfat:同时被Linux与Windows所支持的文件系统类型。如果主机硬盘同时存在Windows与Linux两种操作系统,为了进行数据交换,可以利用该文件系统。
  • xfs:也是一个文件系统的类型,在CentOS7中将被作为默认的文件系统类型而替换ext4 。

4、Force to be primary partition:强制主分区,是可选项。由于所有的分区未过4个,因此可勾选该项。

选择安装包时应该采用最小化原则,即不需要的或不确定是否需要的就不安装,这样就可以最大程度上确保系统安全。

如果安装过程落下部分包组,或者是其他伙伴安装时没有选,在安装后可以按如下方式补上安装时未安装的包组。

  1. yum groupinstall "Compatibility libraries" "Base" "Development tools"
  2. yum groupinstall "debugging Tools" "Dial-up Networking Support"

    可以通过yum groupinfo包组查看具体安装的组件。

    查看组件安装情况:yum grouplist。

    注意:不要使用yum的删除功能删除软件,会删除相关依赖,导致意外问题。

如何区分已安装的系统是32位还是64位?

方法一,标准的查看方法。命令及输出如下:

  1. [root@www ~]# uname -m
  2. x86_64

    上述输出结果中带有x86_64字样,说明该系统为64位。

  3. [oldboy@web-001 ~]$ uname -a
  4. Linux drbd2 2.6.18-164.e15 #1 SMP Thu Sep 3 03:33:65 EDT 2009 i686 i686 i386 GNU/Linux

    上述输出结果中带有i386/i686字样,说明该系统为32位。

  5. [root@www ~]# uname -r
  6. 2.6.32-504.el6.x86_64

各个数字和字母代表的含义:

2表示主版本号,有结构性变换才更改;

6表示次版本号,新增功能时才变化,一般奇数表示测试版,偶数表示开发版;

32表示对此版本的修订次数或补丁包数;

504代表编译的次数,每次编译可对少数程序优化或修改;

el6用来表示版本的特殊信息,有较大的随意性;

el代表企业版Linux;pp代表测试版;fc代表fedora core;rc代表候选版本;

x86_64表示64位。

"[root@oldboy66 ~]#"里的#号为超级管理员root输入命令的提示符,在#号后面可以输入命令进行管理系统。

配置网卡setup:

以上操作相当于修改/etc/sysconfig/network-scripts/ifcfg-eth0。

注意:需要将ONBOOT=no改为ONBOOT=yes,否则系统不会自动启动该网卡。

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

vi是编辑命令,输入命令后,按i编辑修改,保存命令":wq"。

重启网卡生效:ifup eth0或者/etc/init.d/network restart。

如果setup显示乱码,是字符集问题,输入命令LANG=en进行调整即可。

查看Linux网卡信息:ifconfig。

检查网络是否通畅:ping 192.168.131.128 -t 。

搭建Linux运行环境-虚拟机的更多相关文章

  1. 【PHP】linux搭建PHP运行环境

    之前在windows下写了hello world,终归是不够用啊,因为开发环境是Linux,怎么办呢~~~学习学习再学习 写在前面的话:我从百度文库的一个文章里摘出来的,原文章名称<Linux下 ...

  2. 【netcore基础】CentOS 7.6.1810 搭建.net core 2.1 linux 运行环境 nginx反向代理 supervisor配置自启动

    之前写过一篇Ubuntu的环境搭建博客,感觉一些配置大同小异,这里重点记录下 nginx 作为静态 angular 项目文件服务器的配置 参考链接 [netcore基础]ubuntu 16.04 搭建 ...

  3. Windows7下搭建Django运行环境

    一直都是在Linux环境下搭建django的运行环境,开学因为需要叫前端的同学帮忙修改模板,所以需要在Windows下搭建起运行环境,想来PHP倒是有不少集成开发环境,Python倒是少的可怜…只在w ...

  4. Centos7安装Docker 基于Dockerfile 搭建httpd运行环境

    Centos7安装Docker 基于Dockerfile 搭建httpd运行环境 docker docker搭建 docker build 本文档完成目标内容如下 使用Docker搭建http服务器一 ...

  5. JDK+Tomcat搭建JSP运行环境--JSP基础

    一.搭建JSP运行环境之前需要了解的基本知识 配置JSP运行环境之前,我们需要了解JSP的运行机制.只有了解JSP运行机制后,我们才能知道为什么要搭建JSP运行环境?如何去搭建JSP运行环境?为什么要 ...

  6. 云端搭建Linux学习环境 链接https://edu.aliyun.com/article/19 (阿里云ECS服务器 )课堂

    云端搭建Linux学习环境 链接https://edu.aliyun.com/article/19 1. 开通云服务器 2 1.包年包月   按量付费(适合测试数据的时候) 2 2.地域   服务器数 ...

  7. 【MIT6.828】centos7下使用Qemu搭建xv6运行环境

    title:[MIT6.828]centos7下使用Qemu搭建xv6运行环境 date: "2020-05-05" [MIT6.828]centos7下搭建xv6运行环境 1. ...

  8. 9款一键快速搭建PHP运行环境的好工具

    9款一键快速搭建PHP运行环境的好工具 胡倡萌 2011/02/19 网络资源 77,063 1     内容提要: 建立一个PHP网站,首先需要搭建PHP的开发和运行环境,对于PHP初学者也是一个难 ...

  9. 漫游Kafka实战篇之搭建Kafka运行环境

    接下来一步一步搭建Kafka运行环境. Step 1: 下载Kafka 点击下载最新的版本并解压. > tar -xzf kafka_2.9.2-0.8.1.1.tgz > cd kafk ...

随机推荐

  1. jQuery 模拟操作

    1.常用模拟 有时,需要通过模拟用户操作,来达到单击的效果.例如在用户进入页面后,就触发 click 事件,而不需要用户去主动单击.在 jQuery 中,可以使用 trigger() 方法完成模拟操作 ...

  2. 微信小程序爬坑

    1.app.json配置信息是怎样的? { "pages":[ "pages/页面1/页面1", "pages/页面2/页面2", ], & ...

  3. Django内置分页

    一.django内置分页 from django.shortcuts import render from django.core.paginator import Paginator, EmptyP ...

  4. 牛客小白月赛13 小A买彩票 (记忆化搜索)

    链接:https://ac.nowcoder.com/acm/contest/549/C来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言52428 ...

  5. Educational Codeforces Round 56 (Rated for Div. 2) D

    给你一个无向图 以及点的个数和边  每个节点只能用1 2 3 三个数字 求相邻 两个节点和为奇数   能否构成以及有多少种构成方法 #include<bits/stdc++.h> usin ...

  6. 项目经理的“时间管理法则”(内含10G项目管理书籍)

    项目经理特别是大型项目的项目经理往往琐事缠身,好象每件事情都很重要都需要处理,如何在“百事缠身”的环境下,管理和充分利用好自己的时间,是困扰项目经理的一个大问题.有人会问,为什么我努力善用每分每秒,却 ...

  7. 利用GitHub Pages和Bootstrap创建个人网站

    作为一名想要想找前端实习的即将毕业的学生,我最近意识到拥有个人网页会使自己的简历更容易被注意到.本文主要是我创建过程及个人心得,有些操作我也是第一次,所以难免在解释中会有错误.另外说明一下,我的电脑是 ...

  8. Dynamics CRM - 使用 C# Plugin 调用 SQL 存储过程

    有时候,在 Dynamics CRM Plugin 中通过 linq 查询数据会比较慢,可以通过采用在 C# plugin 中直接调用数据库存储过程的方式来提高效率,具体过程如下: 1.新建一个存储过 ...

  9. JS 条形码插件--JsBarcode 在小程序中使用

    在小程序中的使用: utils文件夹下 barcode.js 粘粘以下代码 var CHAR_TILDE = 126 var CODE_FNC1 = 102 var SET_STARTA = 103 ...

  10. html的分类与特点

    ##块级元素##|元素|描述||--|--||h1-h6|标题||div|区分大模块||p|段落||ul>li|无序列表||ol>li|有序列表||dl>dt dd|自定义列表||t ...