第1章 搭建与测试Linux 服务 器 学习要点 .了解Linux系统的历史、版权以及Linux系统的特点。 .了解CentOS7 的优点及其家族成员。 .掌握如何搭建CentOS7 服务器。 .掌握如何配置Linux常规网络和如何测试Linux网络环境。 Linux是当前有很大发展潜力的计算机操作系统,人们的旺盛需求推动着Linux的发 展热潮一浪高过一浪。自由与开放的特性加上强大的网络功能使Linux在21 世纪有着无 限的发展前景。本章主要介绍Linux系统的安装与简单配置。 1.认识Liux操作系统 1n 1.1.1 认识Linux的“前世”与“今生” 1.Lix系统的历史 Linux(n) 系(u) 统是一个类似UNIX 的操作系统,它是UNIX 在计算机上 的 完整实现,它的标志是一个名为Tux的可爱小企鹅,如图1-1所示。UNIX 操作系统是1969 年由K.Thsn和D.Rihe在美国贝尔实验室 开 ompoM.ci 发的一个操作系统,由于它具备良好而稳定的性能,使其迅速在计算机中 得到广泛应用,在随后的几十年中,UNIX 操作系统又做了不断的改进。 1990 年,芬兰人LinusTorvalds接触了为教学而设计的Minix系统后,开始着手研究编 写一个开放的与Minix系统兼容的操作系统。1991 年10 月5日, LinusTorvalds在赫尔辛基技术大学的一台FTP 服务器上发布了一 个消息,这也标志着Linux系统的诞生。LinusTorvalds公布了第一 个Linx的内核版本0.Liurad u02 版。在最开始时,nsTovls的兴趣在 于了解操作系统的运行原理,因此Linux早期的版本并没有考虑最终 用户的使用,只是提供了最核心的框架,使得Linux编程人员可以享 受编制内核的乐趣,这样也保证了Linux系统内核的强大与稳定。图1-1Linux的标志 Internet的兴起使得Linux系统也能十分迅速地发展,很快就有许多程序员加入Linux系统 的编写行列中。 Linux操作系统(CentOS7&RHEL7)(微课版) 随着编程小组的扩大和完整的操作系统基础软件的出现,Linux开发人员认识到, Linux已经逐渐变成一个成熟的操作系统。1992年3月,内核1.nux 0版本的推出标志着Li 第一个正式版本的诞生。这时能在Linux上运行的软件已经十分广泛,从编译器到网络软 件以及X-Window都有。现在,Linux凭借优秀的设计、不凡的性能,加上IBM 、Intel、 AMD 、Del 、Oracle、Sybase等国际知名企业的大力支持,其市场份额逐步扩大,逐渐成为主 流操作系统之一。 2.Linux的版权问题 Linux是基于Copyleft(无版权)的软件模式进行发布的,其实Copyleft是与Copyright (版权所有)相对立的新名称,它是GNU项目制定的通用公共许可证 (generalpubliclicense,GPL )。GNU项目是由RichardStalman于 1984年提出的,他建立了自由软件基金会(FSF)并提出GNU计划的 目的是开发一个完全自由的、与UNIX类似但功能更强大的操作系 统,以便为所有的计算机使用者提供一个功能齐全、性能良好的基本 系统,它的标志是角马,如图1-2所示。 GPL是由自由软件基金会发行的用于计算机软件的协议证书,使 图1-2 GNU的标志 用证书的软件称为自由软件[后来改名为开放源代码软件(opensourcesoftware)]。大多数 的GNU程序和超过半数的自由软件都使用它,GPL保证任何人都有权使用、复制和修改该 软件。任何人都有权取得、修改和重新发布自由软件的源代码,并且规定在不增加附加费用 的条件下可以得到自由软件的源代码。同时还规定自由软件的衍生作品必须以GPL作为 它重新发布的许可协议。Copyleft软件的组成非常透明化,当出现问题时,就可以准确地查 明故障原因,及时采取相应对策,同时用户不用再担心有“后门”的威胁。 GNU这个名字使用了有趣的递归缩写,它是GNU..sNotUNIX的缩写形 式。由于递归缩写是一种在全称中递归引用它自身的缩写,因此无法精确地解 释它的真正全称。 总之,Linux操作系统作为一个免费、自由、开放的操作系统,它的发展势不可挡。 1.1.2 理解Linux体系结构 Linux一般包括3个主要部分:内核(kernel)、命令解释层(Shel 或其他操作环境)、实 用工具。 1.内核 内核是系统的心脏,是运行程序和管理磁盘及打印机等硬件设备的核心程序。由于内 核提供的都是操作系统最基本的功能,如果内核发生问题,整个计算机系统就可能会崩溃。 Linux内核的源代码主要用C语言编写,只有部分与驱动相关的源代码用汇编语言 Asembly编写。Linux内核采用模块化的结构,其主要模块包括存储管理、CPU和进程管 理、文件系统管理、设备管理和驱动、网络通信以及系统的引导、系统调用等。Linux内核的 源代码通常安装在/usr/src目录下,可供用户查看和修改。 2 第1章搭建与测试Linux服务器 2.命令解释层 Shel 是系统的用户界面,提供了用户与内核进行交互操作的一种接口。它接收用户输 入的命令,并且把它送给内核去执行。 操作环境在操作系统内核与用户之间提供操作界面,它可以描述为一个解释器。操作 系统对用户输入的命令进行解释,再将其发送到内核。Linux存在几种操作环境,分别是桌 面(desktop)、窗口管理器(windowmanager)和命令行Shel(commandlineShel)。Linux 系统中的每个用户都可以拥有自己的用户操作界面,根据自己的要求进行定制。 3.实用工具 标准的Linux系统都有一套叫作实用工具的程序,它们是专门的程序,如编辑器、执行 标准的计算操作等。用户也可以产生自己的工具。 实用工具可分为以下3类。 .编辑器:用于编辑文件。 .过滤器:用于接收数据并过滤数据。 .交互程序:允许用户发送信息或接收来自其他用户的信息。 Linux的编辑器主要有Ed 、Ex、Vi 、Vim和Emacs。Ed和Ex是行编辑器,Vi 、Vim和 Emacs是全屏幕编辑器。 x的过滤器(r)读取用户文件或在其他设备中输入数据。 Linufilte 交互程序是用户与机器的信息接口。Linux是一个多用户系统,它必须和所有用户保 持联系。 1.1.3 认识Linux的版本 Linux的版本分为内核版本和发行版本两种。 1.内核版本 内核是系统的心脏,是运行程序和管理磁盘及打印机等硬件设备的核心程序,它提供了 一个在裸设备与应用程序间的抽象层。例如,程序本身不需要了解用户的主板芯片集或磁 盘控制器的细节,就能在高层次上读写磁盘。 内核的开发和规范一直由Linus领导的开发小组控制着,版本也是唯一的。开发小组 每隔一段时间公布新的版本或其修订版,从1991年10月Linus向世界公开发布的内核 0.0.2版本(0.所以没有公开发布) 18. 0.1版本功能相当简陋, 到目前最新的内核4.8版本, Linux的功能越来越强大。 Linux内核的版本号命名是有一定规则的,版本号的格式通常为“主版本号.次版本号. 修正号”。主版本号和次版本号标志着重要的功能变动,修正号表示较小的功能变更。以 2.6.12版本为例,2代表主版本号,6代表次版本号,12代表修正号。其中次版本号还有特定 的意义:如果是偶数数字,就表示该内核是一个可放心使用的稳定版;如果是奇数数字,则 表示该内核加入了某些测试的新功能,是一个内部可能存在BUG的测试版。如2.74表示 是一个测试版的内核,2.12表示是一个稳定版的内核。读者可以到Liu5. 6.nx内核官方网站 htp:kre.r如图1-3所示。 //www.enlog/下载最新的内核代码, 3 Linux操作系统(CentOS7&RHEL7)( 微课版) 图1-3Linux内核官方网站 2. 发行版本 仅有内核而没有应用软件的操作系统是无法使用的,所以许多公司或社团将内核、源代 码及相关的应用程序组织构成一个完整的操作系统,让一般的用户可以简便地安装和使用 Linux,这就是所谓的发行版本(distribution), 一般谈论的Linux系统便是针对这些发行版 本的。目前各种发行版本超过300 种,它们的发行版本号各不相同,使用的内核版本号也可 能不一样,现在最流行的套件有RedHat(红帽子)、CentOS 、Fedora、OpenSUSE 、Debian、 Ubuntu、红旗Linux等。 本书是基于最新的CentOS7 系统编写的,书中内容及实验完全通用于CentOS 、Red Hat、Fedora等系统。也就是说,当你学完本书后,即便公司内的生产环境部署的是其他系 统,也照样可以应用本书的内容。更重要的是,本书配套资料中的ISO 镜像与全国职业技能 大赛基本保持一致,因此更适合备考职业技能大赛的考生使用。 1.4 CnOS 1.et CentOS(communityenterpriseoperatingsystem,社区企业操作系统)是Linux发行 版本之一,它是RedHatEnterpriseLinux依照开放源代码的规定整理出的源代码所编 译而成的。由于出自同样的源代码,因此有些要求高度稳定性的服务器以CentOS 代替 商业版的RedHatEnterpriseLinux使用。两者的不同在于CentOS 并不包含封闭源代 码软件。 CentOS 在2014 年年初宣布加入RedHat。CentOS 是一个基于RedHatLinux提供 的可自由使用源代码的企业级Linux发行版本。每个版本的CentOS 都会获得10 年的支 持(通过安全更新方式)。新版本的CentOS 大约每两年发行一次,而每个版本的CentOS 会定期(大概每六个月)更新一次,以便支持新的硬件,这样就可以建立一个安全、低维护、稳 定、高预测性、高重复性的Linux环境。 CentOS 是RedHatEnterpriseLinux源代码再编译的产物,而且在CentOS 的基础上 修正了不少已知的Bug,相对于其他Linux发行版本,其稳定性值得信赖。 CentOS 加入RedHat后,依旧保持了原先的特点。 .继续不收费。 .保持赞助内容驱动的网络中心不变。 4 第1章搭建与测试Linux服务器 .Bug、Isue和紧急事件处理策略不变。 .RedHatEnterpriseLinux和CentOS防火墙依然存在。 1.1.5 CentOS7的主要特点 CentOS7于2014年7月7日正式发布,这是一个企业级的Linux发行版本,基于Red Hat免费公开的源代码。 与以前的版本相比,CentOS7主要加入了以下新特性。 etOS6.etOS7 。 (1)从Cnx在线升级到Cn (2)加入了对Linux容器(Linuxcontainers,LXC)的支持,使用轻量级的Docker进行 容器实现。 (3)使用默认的XFS文件系统。 (4)使用systemd后台程序管理Linux系统和服务。 (5)使用firewald后台程序管理防火墙服务。 1.使用VM 虚拟机安装Cet 2 nOS7 在安装操作系统前,我们先介绍一下如何安装VM虚拟机。 2.安装并配置VM 虚拟机 1.1 (1)成功安装VMwareWorkstation后的界面如图1-4所示。 图1-4 虚拟机软件的管理界面 (2)单击“创建新的虚拟机”选项,在弹出的“新建虚拟机向导”界面中选择“典型”单选 按钮,然后单击“下一步”按钮,如图1-5所示。 5 Linux操作系统(CentOS7&RHEL7)( 微课版) 图1-5 “新建虚拟机向导”界面 (3)选中“稍后安装操作系统”单选按钮,然后单击“下一步”按钮,如图1-6所示。 图1-6 “安装客户机操作系统”对话框 请一定选择“稍后安装操作系统”单选按钮。如果选择“安装程序光盘映像 文件”单选按钮,并把下载好的CentOS7 系统的镜像选中,虚拟机会通过默认的 安装策略来部署最精简的Linux系统,而不会再询问安装设置的选项。 (4)后面的步骤直接按向导提示操作即可。当看到如图1-7所示的界面时,就说明虚拟 机已经被配置成功了。 6 第1章搭建与测试Linux服务器 图1-7 虚拟机配置成功的界面 1.2.2 安装并配置CentOS7操作系统 安装CentOS7系统时,计算机的CPU需要支持VT(virtualizationtechnology,虚拟化 技术)。所谓VT,是指让单台计算机能够分割出多个独立资源区并让每个资源区按照需要 模拟出系统的一项技术,其本质就是通过中间层实现计算机资源的管理和再分配,让系统资 源的利用率最大化。如果开启虚拟机后依然提示“CPU不支持VT技术”等报错信息,请重 启计算机并进入BIOS中把VT虚拟化功能开启即可。 (1)在虚拟机管理界面中单击“开启此虚拟机”按钮后数秒,就会看到CentOS7系统安 装界面,如图1-8所示。在界面中,Testthismedia&instalCentOS7和Troubleshooting 的作用分别是校验光盘完整性后再安装以及启动救援模式。此时通过键盘的方向键选择 InstalCentOS7选项来直接安装Linux系统。 图1-8CentOS7系统安装界面 7 Linux操作系统(CentOS7&RHEL7)( 微课版) (2)按Enter键后开始加载安装镜像,所需时间为30~60s,请耐心等待。选择系统的 安装语言(简体中文)后单击“继续”按钮,如图1-9所示。 图1-9 选择系统的安装语言 (3)在安装界面中单击“软件选择”选项,如图1-10 所示。 图1-10 单击“软件选择”选项 (4)CentOS7 系统的软件定制界面可以根据用户的需求来调整系统的基本环境,例如 把Linux系统用作基础服务器、文件服务器、Web服务器或工作站等。此时只须在界面中选 中“带GUI 的服务器”单选按钮(注意,如果不选此项,则无法进入图形界面), 然后单击左上 8 第1章搭建与测试Linux服务器 角的“完成”按钮即可,如图1-11 所示。 图1-11 选择软件的类型 (5)返回到CentOS7 系统安装主界面,单击“网络和主机名”选项后,将“主机名”字段 设置为server1,然后单击左上角的“完成”按钮,如图1-12 所示。 图1-12 配置网络和主机名 (6)返回到CentOS7 系统安装主界面,单击“安装位置”选项后,选中“我要配置分区” 单选按钮,然后单击左上角的“完成”按钮,如图1-13 所示。 9 Linux操作系统(CentOS7&RHEL7)( 微课版) 图1-13 选择“我要配置分区”单选按钮 (7)开始配置分区。磁盘分区允许用户将一个磁盘划分成几个单独的部分,每一部分 都有自己的盘符。在分区之前,首先规划分区,以20GB 硬盘为例,做如下规划。 ./boot分区大小为300MB 。 ./swap分区大小为4GB 。 ./分区大小为10GB 。 ./usr分区大小为8GB 。 ./home 分区大小为8GB 。 ./var分区大小为8GB 。 ./tmp分区大小为1GB 。 下面进行具体的分区操作 。 ①创建boot分区(启动分区)。在“新挂载点将使用以下分区方案”下面选中“标准分 区”,单击“+”按钮。在打开的“添加新挂载点”对话框中选择“挂载点”为/boot(也可以直接 输入挂载点),“期望容量”为300MB,然后单击“添加挂载点”按钮,如图1-14 所示。接着在 图1-15 所示的界面中设置“文件系统”类型为ext4,用默认文件系统xfs也可以。 图1-15 中的“设备类型”一定要选中“标准分区”,保证“/home”为单独分区, 为后面做配额实训做准备。 ②创建交换分区。单击“+”按钮,创建交换分区。“文件系统”类型中选择swap,“期望 容量”大小一般设置为物理内存的两倍即可。例如,计算机物理内存大小为2GB,设置的 10