18.3管理用户以及授权 …438 184创建数据库与表单 …441 18.5管理表单及数据 442 18.6数据库的备份及恢复 -445 复习题… .446 第19章使用PXE+Kickstart无人值守安装服务 …448 19.1无人值守系统 448 192部署相关服务程序… 449 19.2.1配置DHCP服务程序 449 19.2.2配置T下TP服务程序, -452 19,2.3配置SYSLinux服务程序 453 19.2.4配置vsftpd服务程序 456 19.2.5创建Kickstart应答文件 -457 19.3自动部署客户机 460 复习题 465 第20章使用LNMP架构部署动态网站环境 467 20.1源码包程序 467 20.2LNMP动态网站部署架构… 469 20.2.1配置Nginx服务 …472 20.2.2配置MySQL服务 .474 20.2.3配置PHP服务 -477 20.3搭建WordPress博客… 478 20.4选购服务器主机 …482 复习题… 482
11 18.3 管理用户以及授权 ................................................................................................438 18.4 创建数据库与表单 ................................................................................................441 18.5 管理表单及数据 ....................................................................................................442 18.6 数据库的备份及恢复............................................................................................445 复习题................................................................................................................................446 .............................................................448 19.1 无人值守系统 ........................................................................................................448 19.2 部署相关服务程序 ................................................................................................449 19.2.1 配置 DHCP 服务程序 ...................................................................................449 19.2.2 配置 TFTP 服务程序.....................................................................................452 19.2.3 配置 SYSLinux 服务程序 .............................................................................453 19.2.4 配置 vsftpd 服务程序....................................................................................456 19.2.5 创建 Kickstart 应答文件 ...............................................................................457 19.3 自动部署客户机 ....................................................................................................460 复习题................................................................................................................................465 ....................................................................467 20.1 源码包程序 ............................................................................................................467 20.2 LNMP 动态网站部署架构....................................................................................469 20.2.1 配置 Nginx 服务............................................................................................472 20.2.2 配置 MySQL 服务.........................................................................................474 20.2.3 配置 PHP 服务..............................................................................................477 20.3 搭建 WordPress 博客.............................................................................................478 20.4 选购服务器主机 ....................................................................................................482 复习题................................................................................................................................482
前 Hello World! 在本书开篇,刘遗老师将向各位读者讲述自己十多年来的Liux系统学习经历以及教学 感悟,介绍《Liux就该这么学(第2版)》图书的主要优势及特点,旨在让您更快地下定学 习决心。 Lⅸ系统的兴成受治干开额社区的强键根基.我们将与读者一起学习了解开源软件的 优势,了解诸如GPL、LGPL、BSD、Apache、MT、Mozilla等热门的开源许可证,方便今 后做出更适合自已的选择。 开源软件具有低风险、低成本、品质好、更透明等4大优势,开源精神也是每位Liu 技术人从骨子里感到自豪的情怀。刘遄老师会用通俗易懂的方式讲述Liux系统从1965年至 今的发展历程,在“八卦”的同时不忘诙谐幽默,旨在让我们能够在轻松的氛围下厘清半个 多世纪以来开源技术的历史发展脉络,充分认识当今最热门的9款开源操作系统—RHEL CentOS、Fedora、Debian、Ubuntu、openSUSE、Kali、Gentoo、Deepin,并了解开源软件的 盈利模式等,进而判断整个开源行业的未来发展趋势。 同时,刘遄老师还会带领大家学习最常见的Lx系统,了解红帽阶梯认证体系以及红 帽RHEL8系统的最新变化和战略定位,搞定红帽RHCSA、RHCE、RHCA认证的方方面面, 进而帮助大家确立学习计划。 写作初衷 本书作者刘遗从事于Lix运维技术行业,高中时期便因兴趣的驱使而较早地接触到了 Liux系统并开始学习运维技术,并且在2012年获得红帽认证工程师RHCE6版本证书,在 2015年年初又分别获得红帽认证工程师RHCE7版本证书与红帽认证架构师RHCA顶级证 书。同时,于2017年撰写出版的《Liux就该这么学》,累计销量突破10万册,同年被人民 邮电出版社评选为“年度优秀作者”。2020年,获得基于最新系统的红帽认证工程师RHCE8 版本证书,继而为写作本书夯实了技术功底。 尽管如此,依然深知水平有限且技术一般,若不是得益于诸多良师益友的无私帮助, 肯定不能如此顺利地取得上述成绩,更无法如期完成本书的写作工作。并且,作为一名 普通的技术人,我曾经也亲身经历过半夜还在培训班的辛酸,体验过拥堵6个多小时车 程的无奈,也翻看过市面上十几本如同嚼蜡般的Liux技术书籍…这种种经历使我更 加坚定了写作本书的信念。此刻,我正是怀揣着一颗忐忑的心,尽自己最大的努力把有 用的知识继续分享给读者,希望这本新书依然能够帮助大家少走一些弯路,更轻松地人 门Linux系统。 窃以为,一名技术高超的导师不应该仅仅是技术的搬运工,而应该是优质知识的提炼者 所以在写作过程中,我不希望也不会将自己了解掌握的所有信息都填充到这本书里,借此来 12
前 言 12 前 言 Hello World! 在本书开篇,刘遄老师将向各位读者讲述自己十多年来的 Linux 系统学习经历以及教学 感悟,介绍《Linux 就该这么学(第 2 版)》图书的主要优势及特点,旨在让您更快地下定学 习决心。 Linux 系统的兴盛受益于开源社区的强健根基,我们将与读者一起学习了解开源软件的 优势,了解诸如 GPL、LGPL、BSD、Apache、MIT、Mozilla 等热门的开源许可证,方便今 后做出更适合自己的选择。 开源软件具有低风险、低成本、品质好、更透明等 4 大优势,开源精神也是每位 Linux 技术人从骨子里感到自豪的情怀。刘遄老师会用通俗易懂的方式讲述 Linux 系统从 1965 年至 今的发展历程,在“八卦”的同时不忘诙谐幽默,旨在让我们能够在轻松的氛围下厘清半个 多世纪以来开源技术的历史发展脉络,充分认识当今最热门的 9 款开源操作系统—RHEL、 CentOS、Fedora、Debian、Ubuntu、openSUSE、Kali、Gentoo、Deepin,并了解开源软件的 盈利模式等,进而判断整个开源行业的未来发展趋势。 同时,刘遄老师还会带领大家学习最常见的 Linux 系统,了解红帽阶梯认证体系以及红 帽 RHEL 8 系统的最新变化和战略定位,搞定红帽 RHCSA、RHCE、RHCA 认证的方方面面, 进而帮助大家确立学习计划。 写作初衷 本书作者刘遄从事于 Linux 运维技术行业,高中时期便因兴趣的驱使而较早地接触到了 Linux 系统并开始学习运维技术,并且在 2012 年获得红帽认证工程师 RHCE 6 版本证书,在 2015 年年初又分别获得红帽认证工程师 RHCE 7 版本证书与红帽认证架构师 RHCA 顶级证 书。同时,于 2017 年撰写出版的《Linux 就该这么学》,累计销量突破 10 万册,同年被人民 邮电出版社评选为“年度优秀作者”。2020 年,获得基于最新系统的红帽认证工程师 RHCE 8 版本证书,继而为写作本书夯实了技术功底。 尽管如此,依然深知水平有限且技术一般,若不是得益于诸多良师益友的无私帮助, 肯定不能如此顺利地取得上述成绩,更无法如期完成本书的写作工作。并且,作为一名 普通的技术人,我曾经也亲身经历过半夜还在培训班的辛酸,体验过拥堵 6 个多小时车 程的无奈,也翻看过市面上十几本如同嚼蜡般的 Linux 技术书籍……这种种经历使我更 加坚定了写作本书的信念。此刻,我正是怀揣着一颗忐忑的心,尽自己最大的努力把有 用的知识继续分享给读者,希望这本新书依然能够帮助大家少走一些弯路,更轻松地入 门 Linux 系统。 窃以为,一名技术高超的导师不应该仅仅是技术的搬运工,而应该是优质知识的提炼者。 所以在写作过程中,我不希望也不会将自己了解掌握的所有信息都填充到这本书里,借此来
炫技,而是从真正贴近于新人学习特点的角度出发,主动摒弃不实用的部分,并把重点、难 点反复实践。这样的好处也很明显,可以使读者在加深理论知识理解的同时,轻松掌握生产 环境中用到的实战技术。 您手里所持的这本书,基于最新的红帽企业版系统HEL8编写而成,其内容通用于绝 大多数的Liux系统,具有广泛的适用性。本书配套软件及资料完全免费,可通过 ww..linuxprobe.com网站获取,相关的付费培训课程大家可根据自身情况自愿报名。本书将 会从零基础带领您入门Liux系统,然后渐进式地提高内容难度,以匹配生产环境对运维人 员的要求。而且,本书每章都配套有大量的图、表、命令示例以及课后复习题,大家可以在 阅读本书的过程中同步操作完所有的实验内容,以达到增强学习兴趣与加深记忆的效果。最 后,本书以及配套资源相较于当前红帽RHCE8版本的考试要求,至少要再多出50%的内容, 而且已经有几千位学员陆续通过本书的学习顺利取得认证。因此,只要您能每天坚持学习, 相信这绝对是体险极佳、讲步极快的一次学习经历。 最后相说的是我的写作初心、其实并不高雅只是在环环十几年来中国右如出 多的培训机构赚了那么多钱,但却没有一家培训机构真正给学员拿出一本好教材的债 而这应该是我们的学员早就可以享受的服务,不能再选择性失明了。而到了2020年,我的写作 初衷也融人了一点小,私心,除了运营好本书的在线学习网站ww.linuxprobe.com,服务更多的号 员和读者之外,还要把我们的免费开源图书做到远超其他培训机构收费教材的水平,并坚持做中 国开源站点的道德典范,不欺骗,不作恶,保持最纯净的技术交流环境,请各位读者监督。而我 们想要得到的也很简单一如果您认可刘老师的付出并满意我们的配套服务,还请把本书告 诉身边的朋友,让更多的人知道我们在做的这件很酷的事。 学习是件苦差事 我常常怀疑,人类的DNA中是不是也有个类似于Lux系统中的变量值(这里姑日称 之为GoodStudy),这个变量决定着我们的行为,如果值为1则痴迷学习,如果值为0则亨 受生活。估计对于大多数人来说这个值应该都在0.5左右徘徊吧。真希望有哪一位生物学家能 迅速找到这么一个值,周一到周五将这个值调高点儿,周末再调回正常。想想都很有科技感 期待着这么一天赶紧到来。 那我们现在怎么办呢? 只能靠自律。 在正式开始学习前,我不想回避这个现实问题—学习是一件痛苦的事情。如果说学习 Liux系统真的很简单,那必定是骗子的谎言,起码这不能给您带来高薪。在每天起床后的几 分钟时间里,大脑都会陷人斗争状态 是该聊会儿天呢,还是要追个美剧呢,还是看一下 那本可怕的《Liux就该这么学》呢?这个时候,请不要忘记自己最初的梦想。十年后的你, 一定会感激现在拼命努力学习的自己。身为作者,我的使命就是让这本书对得起您为此花费 的时间、精力和金钱,让您每学完一个章节都是一次进步。 图书的写作是一件劳神费力的事情,从我起笔,到您手里,往往要两三年的时间,甚至 更久。稻盛和夫先生在《活法》中有段一直激励着我的话,这段话也是我最初的精神支柱, 现在转赠给正在阅读本书的您: 13
13 炫技,而是从真正贴近于新人学习特点的角度出发,主动摒弃不实用的部分,并把重点、难 点反复实践。这样的好处也很明显,可以使读者在加深理论知识理解的同时,轻松掌握生产 环境中用到的实战技术。 您手里所持的这本书,基于最新的红帽企业版系统 RHEL 8 编写而成,其内容通用于绝 大多数的 Linux 系统,具有广泛的适用性。本书配套软件及资料完全免费,可通过 www.linuxprobe.com 网站获取,相关的付费培训课程大家可根据自身情况自愿报名。本书将 会从零基础带领您入门 Linux 系统,然后渐进式地提高内容难度,以匹配生产环境对运维人 员的要求。而且,本书每章都配套有大量的图、表、命令示例以及课后复习题,大家可以在 阅读本书的过程中同步操作完所有的实验内容,以达到增强学习兴趣与加深记忆的效果。最 后,本书以及配套资源相较于当前红帽 RHCE 8 版本的考试要求,至少要再多出 50%的内容, 而且已经有几千位学员陆续通过本书的学习顺利取得认证。因此,只要您能每天坚持学习, 相信这绝对是体验极佳、进步极快的一次学习经历。 最后想说的是,我的写作初心其实并不高雅,只是在还债,还十几年来中国有如此 多的培训机构赚了那么多钱,但却没有一家培训机构真正给学员拿出一本好教材的债, 而这应该是我们的学员早就可以享受的服务,不能再选择性失明了。而到了 2020 年,我的写作 初衷也融入了一点小私心,除了运营好本书的在线学习网站 www.linuxprobe.com,服务更多的学 员和读者之外,还要把我们的免费开源图书做到远超其他培训机构收费教材的水平,并坚持做中 国开源站点的道德典范,不欺骗,不作恶,保持最纯净的技术交流环境,请各位读者监督。而我 们想要得到的也很简单—如果您认可刘遄老师的付出并满意我们的配套服务,还请把本书告 诉身边的朋友,让更多的人知道我们在做的这件很酷的事。 学习是件苦差事 我常常怀疑,人类的 DNA 中是不是也有一个类似于 Linux 系统中的变量值(这里姑且称 之为 GoodStudy),这个变量决定着我们的行为,如果值为 1 则痴迷学习,如果值为 0 则享 受生活。估计对于大多数人来说这个值应该都在 0.5 左右徘徊吧。真希望有哪一位生物学家能 迅速找到这么一个值,周一到周五将这个值调高点儿,周末再调回正常。想想都很有科技感, 期待着这么一天赶紧到来。 那我们现在怎么办呢? 只能靠自律。 在正式开始学习前,我不想回避这个现实问题—学习是一件痛苦的事情。如果说学习 Linux 系统真的很简单,那必定是骗子的谎言,起码这不能给您带来高薪。在每天起床后的几 分钟时间里,大脑都会陷入斗争状态—是该聊会儿天呢,还是要追个美剧呢,还是看一下 那本可怕的《Linux 就该这么学》呢?这个时候,请不要忘记自己最初的梦想。十年后的你, 一定会感激现在拼命努力学习的自己。身为作者,我的使命就是让这本书对得起您为此花费 的时间、精力和金钱,让您每学完一个章节都是一次进步。 图书的写作是一件劳神费力的事情,从我起笔,到您手里,往往要两三年的时间,甚至 更久。稻盛和夫先生在《活法》中有段一直激励着我的话,这段话也是我最初的精神支柱, 现在转赠给正在阅读本书的您:
前言 “工作马马虎虎,只想在兴趣和游戏中寻觅快活,充其量只能获得一时的快感 绝不能尝到从心底涌出的惊喜和快乐,但来自工作的喜悦并不像糖果那样 放进 嘴里就树味十足。而是需要从劳芳与艰辛中渗出。因此当我们聚精会神、孜孜不依 克服艰辛后达到目标时的成就感,世上漫有哪种喜悦可以类比。 更何况人类生活中工作占据了较大的比重,如果不能从劳动中、工作中获得充 实感,那么即使从别的地方找到快乐,最终我们仍然会感到空虚和缺憾。 建议大家拿出一支笔,用一句话在下面记录下此刻学习的初心和动力,不论是兴趣也好 工作需要也好,想赚高薪也好,都请记录下来。因为完全阅读完本书并做完里面的实验至少 需要2、3个月时间.累的时候看一下给我们自己的留言,这会给我们提供源源不断的动力」 所以,请跨越时空跟自己说句话吧 给自己的留言 月 日 开源共享精神 一般情况下,软件的源代码只由编写者拥有,而开源(即开放源代码,Open Source Code)】 是指一种更自由的软件发布模式。简单来说,开源软件的特点就是把软件程序和源代码文件 起打包提供给用户,让用户在不受限制地使用某个软件功能的基础上还可以对代码按需修 改,让软件更贴合硬件环境,让功能更符合工作需求。用户还可以将其编制成衍生产品再发 布出去。用户一般享有使用自由、复制自由,修改自由、创律衍生品自由,以及收费自由。 是的,您没有看错,用户具备创建衍生品和收费的自由。这也就是说,可以对 个开源软件 进行深度定制化加工。如果修改过的程序更加好用,或者颇具新的特色,只要符合原作者的 许可要求,我们就完全可以合法地将软件进行商标注册,以商业版的形式再发布出去,只要 有新用户使用您的软件并支付相应的费用,那就是您的收入。这也正好符合了黑客和极客对 自由的追求,因此在合作与竞争中,国内外的开源社区慢慢生长出了强健的根基,人气也非 常高 但是,如果开原软件只单纯追求“自由”而酒性了程序员的利益,这肯定会影响程序 员的创作热情。为了平衡两者的关系,截至目前,世界上已经有100多种被开源促进组织 (OSL,Open Source Initiative)确认的开源许可证,用于保护开源工作者的权益。对于那 些只知道一味抄袭、篡改、破解或者盗版他人作品的不法之徒,终归会在某一天收到法院 的传票。 ed License 14
前 言 14 “工作马马虎虎,只想在兴趣和游戏中寻觅快活,充其量只能获得一时的快感, 绝不能尝到从心底涌出的惊喜和快乐,但来自工作的喜悦并不像糖果那样—放进 嘴里就甜味十足,而是需要从劳苦与艰辛中渗出。因此当我们聚精会神、孜孜不倦、 克服艰辛后达到目标时的成就感,世上没有哪种喜悦可以类比。 更何况人类生活中工作占据了较大的比重,如果不能从劳动中、工作中获得充 实感,那么即使从别的地方找到快乐,最终我们仍然会感到空虚和缺憾。” 建议大家拿出一支笔,用一句话在下面记录下此刻学习的初心和动力,不论是兴趣也好, 工作需要也好,想赚高薪也好,都请记录下来。因为完全阅读完本书并做完里面的实验至少 需要 2~3 个月时间,累的时候看一下给我们自己的留言,这会给我们提供源源不断的动力, 所以,请跨越时空跟自己说句话吧。 年 月 日 开源共享精神 一般情况下,软件的源代码只由编写者拥有,而开源(即开放源代码,Open Source Code) 是指一种更自由的软件发布模式。简单来说,开源软件的特点就是把软件程序和源代码文件 一起打包提供给用户,让用户在不受限制地使用某个软件功能的基础上还可以对代码按需修 改,让软件更贴合硬件环境,让功能更符合工作需求。用户还可以将其编制成衍生产品再发 布出去。用户一般享有使用自由、复制自由、修改自由、创建衍生品自由,以及收费自由。 是的,您没有看错,用户具备创建衍生品和收费的自由。这也就是说,可以对一个开源软件 进行深度定制化加工。如果修改过的程序更加好用,或者颇具新的特色,只要符合原作者的 许可要求,我们就完全可以合法地将软件进行商标注册,以商业版的形式再发布出去,只要 有新用户使用您的软件并支付相应的费用,那就是您的收入。这也正好符合了黑客和极客对 自由的追求,因此在合作与竞争中,国内外的开源社区慢慢生长出了强健的根基,人气也非 常高。 但是,如果开源软件只单纯追求“自由”而牺牲了程序员的利益,这肯定会影响程序 员的创作热情。为了平衡两者的关系,截至目前,世界上已经有 100 多种被开源促进组织 (OSI,Open Source Initiative)确认的开源许可证,用于保护开源工作者的权益。对于那 些只知道一味抄袭、篡改、破解或者盗版他人作品的不法之徒,终归会在某一天收到法院 的传票
考虑到大家没准儿以后会以开源工作者的身份编写出一款畅销软件,因此刘遄老师根据开 源促进组织的推荐建议以及实际使用情况.为大家筛选出了程序员最喜欢的前6名的开源许可 证,并教大家怎么从中进行选择。提前了解最热门的开源许可证,并在未来选择一个合适的可 最大程度地保护自己软件权益的开源许可证,这对创业公司来讲能起到事半功倍的作用。 注 上迷提到的“开源许可证”与“开源许可协议”的含义完全相同,只不过是英文 翻译后两种不同的叫法,这里不作区别。 注 自由软件基金会(Free Software Foundation,FSF)是一个非营利组织,其使命是 在全球范围内促进计算机用户的自由,捍卫所有软件用户的权利。 5 大家经常会在开源社区中看到Copyle这个单词,这是一个由自由软件运动所发展出的 概念,中文被翻译为“著佐权”或者“公共版权”。与Copyright截然相反,Copyleft不会限 制使用者复制、修改或再发布软件 此外,大家应该经常会听到别人说开源软件是re的,没错,开源软件就是自由的。这 里的心千万不要翻译成“免费”,这样就大错特错了,这与您去酒吧看到的“第一杯免费 的意思可相差甚远。 下面我们来看一下程序员最喜欢的前6名的开源许可证,以及它们各自赋予用户的权利。 >GNU通用公共许可证(General Public License,GPL):目前广泛使用的开源软件 许可协议之一,用户享有运行、学习、共享和修改软件的自由。GPL最初是自由软 件基金会创始人Richard Stallman起草的,其版本目前已经发展到了第3版。GPL 的目的是保证程序员在开源社区中所做的工作对整个世界是有益的,所开发的软 件也是自由的,并极力避免开源软件被私有化以及被无良软件公司所剥削。 GPL3 Free as in Freedom 现在,只要软件中包 了遵循GL许可证的产品或代码该软件就必须开源、免费 因此这个许可证并不适合商业收费软件。遵循该许可证的开源软件数量极其庞大,包 括Linux内核在内的大多数的开源软件都是基于GPL许可证的。GPL赋予了用户著 名的五大自由。 ◆使用自由:允许用户根据需要自由使用这个软件。 ◆复制自由:允许把软件复制到任何人的计算机中,并且不限制复制的数量
15 考虑到大家没准儿以后会以开源工作者的身份编写出一款畅销软件,因此刘遄老师根据开 源促进组织的推荐建议以及实际使用情况,为大家筛选出了程序员最喜欢的前 6 名的开源许可 证,并教大家怎么从中进行选择。提前了解最热门的开源许可证,并在未来选择一个合适的可 最大程度地保护自己软件权益的开源许可证,这对创业公司来讲能起到事半功倍的作用。 上述提到的“开源许可证”与“开源许可协议”的含义完全相同,只不过是英文 翻译后两种不同的叫法,这里不作区别。 自由软件基金会(Free Software Foundation,FSF)是一个非营利组织,其使命是 在全球范围内促进计算机用户的自由,捍卫所有软件用户的权利。 大家经常会在开源社区中看到 Copyleft 这个单词,这是一个由自由软件运动所发展出的 概念,中文被翻译为“著佐权”或者“公共版权”。与 Copyright 截然相反,Copyleft 不会限 制使用者复制、修改或再发布软件。 此外,大家应该经常会听到别人说开源软件是 free 的,没错,开源软件就是自由的。这 里的 free 千万不要翻译成“免费”,这样就大错特错了,这与您去酒吧看到的“第一杯免费” 的意思可相差甚远。 下面我们来看一下程序员最喜欢的前 6 名的开源许可证,以及它们各自赋予用户的权利。 ➢ GNU General Public License GPL :目前广泛使用的开源软件 许可协议之一,用户享有运行、学习、共享和修改软件的自由。GPL 最初是自由软 件基金会创始人 Richard Stallman 起草的,其版本目前已经发展到了第 3 版。GPL 的目的是保证程序员在开源社区中所做的工作对整个世界是有益的,所开发的软 件也是自由的,并极力避免开源软件被私有化以及被无良软件公司所剥削。 现在,只要软件中包含了遵循 GPL 许可证的产品或代码,该软件就必须开源、免费, 因此这个许可证并不适合商业收费软件。遵循该许可证的开源软件数量极其庞大,包 括 Linux 内核在内的大多数的开源软件都是基于 GPL 许可证的。GPL 赋予了用户著 名的五大自由。 ⧫ 允许用户根据需要自由使用这个软件。 ⧫ 允许把软件复制到任何人的计算机中,并且不限制复制的数量