跟阿铭学 Linux
李世明
前腾讯高级运维工程师
522 人已学习
立即订阅
跟阿铭学 Linux
15
15
1.0x
00:00/19:08
登录|注册

第 1 章 学习之初

讲述:Alloy大小:4.38M时长:19:08
本章主要介绍什么是 Linux 以及如何学习 Linux。关于 Linux 的历史,阿铭介绍的并不多,如果你非常感兴趣,可以去网上找一些资料来看。在这一章里,阿铭提供的学习方法也许不一定适合你,请根据自己的实际情况加以调整。总之,我们的目的只有一个——快速、高效地学习 Linux。

1.1 Linux 是什么

Linux 其实是一个操作系统平台。我们平时常用的操作系统叫作 Windows。当然,也有不少朋友使用苹果计算机,苹果计算机所用的系统叫作 macOS。也许你还听说过一种系统叫作 Unix,这是比 Linux 还要古老的一种系统,多用在服务器领域,它和 Linux 最大的不同在于它收费,而 Linux 免费。Linux 也用在服务器领域,大家熟知的阿里、腾讯、百度、美团、Google、Facebook 等一线互联网大公司的服务器 99% 的操作系统都是 Linux。大家用的 Android 手机其实也是 Linux 操作系统。

1.1.1 Linux 的由来

说到 Linux 的历史,故事就多了,只不过阿铭觉得讲太多你也记不住,甚至会产生放弃学习 Linux 的念头,所以这里只简要介绍一下 Linux 的由来。
在 Linux 诞生之前,一直是 Unix 的天下。但要想使用 Unix 就必须先购买授权,这在当时是非常昂贵的,很少有人能承担得起。在这样的背景下,很多计算机爱好者非常渴望有一个便宜或者免费的操作系统用来学习、研究。1983 年,计算机界的牛人 Richard Stallman 发起了一个计划,目的就是要构建一套完全自由的操作系统,这个计划就是著名的 GNU 计划。所谓完全自由,就是要求加入 GNU 计划的所有软件都必须自由使用、自由更改、自由发布。也就是说,发布软件必须要发布它的源代码,这个源代码可以供别人自由使用,可以被随便更改,但是必须要发布更改后的代码。当然,光说不行,必须要有明文规定许可协议来制约大家如何自由使用,这套规定就是著名的 GPL 协议。
GNU 计划发起后,有很多支持者,所以在这期间产生了许多非常棒的软件,比如 vi、Emacs、GCC 等。但遗憾的是,一直没有一个比较棒的操作系统出现。直到 1991 年,芬兰大学生林纳斯·本纳第克特·托瓦兹(Linus Benedict Torvalds)基于兴趣开发了一个类 Unix 操作系统,该系统一经发布,便受到了广大爱好者的追捧,它就是 Linux。1994 年,Linux 加入 GNU 计划并采用 GPL 协议发布。自此,GNU/Linux 真正实现了构建一套完全自由的操作系统的设想。

1.1.2 Linux 怎么读

对于 Linux 这个英文单词,中国人的发音各式各样,有的读作['lɪnɪks](“李尼克斯”),有的读作['linju:ks](“李纽克斯”),有的读作['lɪnəks](“李呢克斯”)。官方给出的标准发音为['li:nэks],写成中文就是“李呢克斯”。如果你之前的发音并非标准发音,那么阿铭希望你日后纠正一下。

1.1.3 常见 Linux 发行版

在 Linux 加入 GNU 计划之前,就已经有不少组织把 Linux 包装发行了,其中比较出名的有 Debian(1993)和 Slackware(1993)。而 Linux 加入 GNU 之后也有一部分发布版本产生,比如 Red Hat(1994)就是在这时候诞生的。大家熟知的 Ubuntu(2004)出现得比较晚,它其实是在 Debian 的基础上发展起来的,也就是说,Ubuntu 只是 Debian 的一个分支。当然,Slackware 也有一个比较出名的分支,那就是 SUSE(1994)。
可以这样说,目前大家熟悉的所有 Linux 发行版都是基于上面的几个发行版发布的。这几年比较流行的 Android 操作系统也是一种 Linux 发行版。说到 Red Hat,我想大家会想到其他两个发行版,那就是 Fedora 和 CentOS,下面阿铭就来说一说它们和 Red Hat 有什么关系。
Red Hat 是 Linux 非常出名的一大分支,有很多发行版是基于这个分支的。我想大家也听说过国内的一款 Linux 发行版 Red Flag(1999),它就是基于 Red Hat 发行的,只不过这个版本并不是很流行,用的人不多。2002 年,Red Hat 推出了面向企业的新的发行版 Red Hat Enterprise(后面简称 RHEL),而之前的 Red Hat 不再发行,但它并没有消失,而是由另一个发行版延续,这就是著名的 Fedora。其实这个发行版对于 RHEL 来说就是个开发实验版本,因为 RHEL 上的很多新技术要先在 Fedora 上测试,如果稳定,再移植到 RHEL 上。总的来说,Fedora 这个发行版也是十分稳定和优秀的,所以拥有很多爱好者。
接下来,阿铭要介绍一下 CentOS 这个发行版,它诞生于 2003 年。如果 RHEL 和 CentOS 这两个发行版你都使用过,那肯定会说它们俩简直太像了。没错,CentOS 和 RHEL 几乎长得一模一样,这是为什么呢?大家都知道,Red Hat 是基于 GNU 的,那么它就得遵循 GPL 协议。RHEL 发布后要发布所有源代码,所以 CentOS 就是拿 RHEL 的源代码编译而来的,只是有些地方稍微改动了一下。2014 年 2 月,CentOS 被 Red Hat 收入囊中,因为 CentOS 这个发行版已经广泛流行,这无疑引起了 Red Hat 官方的重视。

1.1.4 我们要学习哪个 Linux 发行版

刚才已经介绍过 Linux 发行版的几大知名分支,那我们要学习的肯定是其中的一种。因为知名,所以用得多;因为用得多,所以值得我们去学习。在学习 Linux 之前,阿铭要问你一个问题:“我们学习 Linux 的目的是什么?”阿铭觉得有八成的人会回答:“为了找一份与 Linux 相关的工作。”如果是这样,那么问题又来了:“你知道大多数企业用哪个发行版的 Linux 搭建服务器吗?”虽然我们没有官方统计的数据作为依据,但是阿铭工作了这么多年,凭经验来分析,国内大多数企业使用 RHEL/CentOS 作为服务器操作系统。
RHEL 是 Red Hat 公司推出的一款针对企业的发行版 Linux,可以免费下载使用。但是要想获得官方授权,就必须要购买授权协议(也就是所谓的服务),而这个服务费并不便宜。如果我们只是用它来学习,那就无所谓了。只不过会有一个小小的问题:RHEL 在没有获得授权的情况下不能使用 yum 工具(9.2 节会详细介绍这个工具,它非常有用),而 CentOS 有免费的 yum 工具可以使用。
阿铭推荐大家以后使用 CentOS 发行版来学习 Linux,具体理由如下。
国内大多数企业使用 RHEL 搭建服务器。
目前使用 CentOS 的企业越来越多。
CentOS 和 RHEL 几乎一样,而且 CentOS 有免费的 yum 工具可以使用。
CentOS 目前已经加入 Red Hat 公司,且依然完全免费。
本书所有案例均使用 CentOS 发行版完成。
阿铭并非强制你日后一定要使用 CentOS,其实所有版本的 Linux 都大同小异,只要学会了其中一个,学其他发行版自然是水到渠成的事。

1.2 Linux 系统管理员要养成的习惯

不管是在生活还是工作中,每个人都会逐渐养成一些小习惯。坏习惯一旦形成就很难改正,所以阿铭在这里先给出一些建议,请大家务必引起重视。

1.2.1 要习惯使用命令行

操作系统必须要有图形界面,但早期的 Linux 并不完全支持图形界面,操作起来也没有 Windows 系统流畅,这也是 Windows 系统比 Linux 系统流行的原因之一。在图形界面下进行操作,既直观又简洁,但 Linux 的图形界面存在许多小问题,所以未被大多数 PC 机用户认可。
个人计算机的操作系统大多为 Windows,其次为 macOS,服务器要托管在 IDC 机房,通过远程去管理。开启图形界面不仅耗费资源,而且远程管理时还会有网络带宽的额外开销,因此 Linux 在服务器领域比较流行。
目前,也有不少朋友喜欢使用 Linux 的图形界面及支持图形界面的远程连接工具来管理 Linux。鉴于以上使用图形界面的几个弊端,阿铭建议你轻易不要使用 Linux 的图形界面。
命令行是 Linux 系统正常运行的核心,也是专业 Linux 系统工程师必须掌握的技能,所以我们要习惯使用命令行。

1.2.2 操作要严谨

在介绍这一节内容之前,阿铭要问你一个问题:“你有没有误删某个重要文件的经历?”我想大多数读者朋友会回答“有”。任何人都会有疏忽的时候,作为一名 Linux 系统管理员,每天都要和服务器打交道,养成严谨认真的习惯是必要的。
举例来说,服务器上的数据非常重要,如果你每天都备份,那么之后一旦数据损坏,你还可以使用备份的数据。阿铭曾经在多年前犯过这样的错误:没有为数据库上的数据制订备份计划。结果有一天,服务器磁盘损坏,数据不能恢复,以致丢失了大量的客户信息,造成了非常严重的后果。常言道:“吃一堑,长一智。”阿铭在这里提醒读者朋友们,请务必养成备份数据的好习惯。
备份数据固然重要,但也经不起一次次的操作失误。在学习 Linux 命令行的过程中,你输入命令的速度会越来越快,效率也会越来越高。但与此同时,你也有可能输入了错误的命令而不自知。比如,你要删除某个目录,却把要删除目录的名字写错了,那结果可想而知。所以,阿铭建议你输入命令的速度不要太快,看准了再按回车。另外,对于重要的配置文件,在修改前一定要进行备份,这样一旦出现问题,便可以将文件快速还原。

1.2.3 安全不可忽视

你有没有这样的习惯?
各个网站的账号和密码都一样;
密码中包含自己的名字或者生日日期;
密码设置得非常简单,采用纯数字形式或者包含一些常用词汇(如 love、good 等);
将密码存在一个文档里,并保存到 U 盘随身携带;
密码使用了好多年,一直没有更改过。
以上所有的习惯,不管你符合几条,都说明你的安全意识还不够,需要加强。
我们要登录服务器,必然要使用登录密码,那么这个密码如何设置、如何保存都是有讲究的。首先,密码设置得要复杂,至少要 8 个字符,包含数字和大小写字母,而且不能有规律性。然后,密码中不能包含你的名字或者生日日期。其次,你不能在所有的网站上都使用同一个账号和密码。近几年,有多起账号泄露事件,如果你在各大网站设置的密码都一样,那么一旦在某一网站上的密码泄露了,就相当于所有的密码都泄露了。再次,密码最好不要长期沿用,建议每隔 1~3 个月修改一次。最后,阿铭必须提醒你,密码不能保存在一个文档里,更不能把存有密码的文档存到可移动存储设备里。因为可移动存储设备有可能遗失,遗失之后,设置的密码也就遗失了。
说完了密码,阿铭接着来说一说在日常办公室中的安全习惯。你办公时用的计算机有设置密码吗?当你离开工位时,计算机有没有锁屏呢?阿铭觉得大公司应该都有规定:员工的计算机一定要设置好密码,并且员工在离开工位时要把计算机锁屏。这是为了防止一些重要信息被他人获取。你也许会说同事之间都相互信任,没有关系,但万一有人图谋不轨呢?任何意外都有可能发生。最后阿铭送你一句话:“小心驶得万年船。”
关于保存密码,阿铭在这里给大家分享一个小经验。阿铭在各大平台(淘宝、京东、阿里云、印象笔记、QQ、微信、支付宝等)的密码是不一样的,而且密码复杂度也是非常高的。但是这么多密码如何记住?这就需要借助一款工具 KeePass 来记忆了。KeePass 是一款开源免费的软件,历史悠久,所以大家不用担心它的安全性。作为服务器管理员的你来说,更应该注意公司服务器权限的安全性!

1.3 学习建议

好习惯养成了,剩下的就是如何学习了。好的学习方法和学习技巧可以大大提高学习效率。每个人都经历过中考和高考,阿铭相信你已经找到了一套最适合自己的学习方法。

1.3.1 稳中求进

既然你选择了这本书作为启蒙指南,那阿铭就有责任带着大家入门。只要你一步一步跟着阿铭的步伐,相信成功定是指日可待!
有的朋友读书喜欢一蹴而就,恨不得几天就读完,这样即使读完了整本书,也学不到什么。咱们这本书不能和故事书相比,故事书可以一口气看完,但是技术方面的书,光看一遍可不行,我们的目的是要学会和掌握技能。
阿铭建议你每章内容都花 2~3 天的时间来学习。虽然每一章的内容不多,但其中的小案例需要多练习才能够真正掌握。正所谓“熟能生巧”,这就好比学唱一首歌,如果听一遍你只能知道它是否好听,听两三遍你也许能熟悉它的旋律、记住它的歌名,但如果要学会唱,恐怕至少需要听十几遍吧。

1.3.2 善于总结文档

“好记性不如烂笔头”,这是我们上学时老师经常跟我们说的一句话。我们的大脑不是计算机,不能让信息永久保存,所以需要大家善于记笔记,把一些觉得不太容易记住的内容记在小本子上,方便日后复习。
在学习中,我们要善于总结文档,即使工作之后也不要放弃,工作的过程也是学习的过程。遇到问题时,通过查资料或者请教他人顺利解决了问题,那么有必要记下解决这类问题的方法,以便日后举一反三。阿铭就在 2009 年建立了一个论坛用于记录日常工作中遇到的问题、学习笔记等各类文档,感兴趣或有需要的读者可通过搜索“猿课”去参考。日子久了,文档积累得越来越多,多年后再回头看看自己早期记录的文档,何尝不是一件奇妙的事情!我建议大家申请一个免费的博客来记录自己的学习历程。

1.3.3 复习很关键

记完笔记并不等于掌握了知识,要想完全掌握,就必须经常复习。比如说,你的 11 位手机号能记住吗?你的 QQ 号也很长,能记住吗?银行账号呢?身份证号呢?阿铭不知道这些号码你是否能全部记住,但阿铭可以。身份证号码 18 位,够长吧,相信 99% 的朋友不能一下子就记住,那为什么我们能记住呢?因为我们在反复使用它。再比如,小时候老师教我们写汉字,对于复杂的汉字,写一两遍是记不住的,只有多写几遍才能完全记住。同样的道理,Linux 的命令虽然多,但如果每天都用的话,不出一周,你一定可以记住它们。

1.3.4 举一反三

在本书中,阿铭会针对性地给出几个小案例,你不必掌握它们,因为就算你背熟书中的所有案例,也不代表你就多么厉害了,阿铭只要求你学会一种技能——举一反三。
记得高三时,数学老师给我们买了好几套模拟题,这些题和高考题很像,因为它们考查的知识点是一致的。我们做这些模拟题的目的并不是把题和答案记住,而是要掌握这道题考查的知识点。只要掌握了知识点,再难的题我们也都可以迎刃而解。
同样,阿铭在书中给出这些小案例也是为了告诉大家某个命令或者某个选项的用法及作用,所以你需要掌握的并不是小案例本身,而是小案例背后的知识。这要求你得学会自己创造案例,多做几个相似的小案例,做到举一反三,之后便能轻松地掌握相关的知识点。

1.4 课后习题

(1) 请查一查 Linux 的发展历史,并列举几种有代表性的 Linux 发行版。
(2) 请简述 GNU 和 GPL 两个概念。
(3) 列举几种基于 GPL 协议发行的软件。
(4) 列举几个比较流行的 Linux 版本,并说一说它们的特点。
需要说明的是,如果需要全书的习题答案,可以找阿铭获取,阿铭的微信是 81677956。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

本文深入浅出地介绍了Linux的基本概念和学习方法。首先,对Linux的发展历程、发音和常见发行版进行了介绍,并建议初学者选择CentOS进行学习。其次,强调了Linux系统管理员需要养成的习惯,包括习惯使用命令行、操作要严谨和安全意识不可忽视。最后,给出了学习建议,包括稳中求进、善于总结文档、复习很关键和举一反三。总的来说,本文为初学者提供了Linux学习的基本指导和学习方向,强调了良好的学习习惯和方法对于掌握Linux技能的重要性。文章内容深入浅出,适合初学者快速了解Linux的基本知识和学习方法。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《跟阿铭学 Linux》
立即购买
登录 后留言

全部留言(1)

  • 最新
  • 精选
  • learn more
    没有看到镜像下载地址,然后这个网易云地址好像不对,后面使用腾讯云的正确。 安装源使用国内镜像地址,推荐使用腾讯云镜像源:http://mirrors.cloud.tencent.com/centos/8/BaseOS/x86_64/os/
    2024-01-16归属地:湖南
收起评论
大纲
固定大纲
1.1 Linux 是什么
1.1.1 Linux 的由来
1.1.2 Linux 怎么读
1.1.3 常见 Linux 发行版
1.1.4 我们要学习哪个 Linux 发行版
1.2 Linux 系统管理员要养成的习惯
1.2.1 要习惯使用命令行
1.2.2 操作要严谨
1.2.3 安全不可忽视
1.3 学习建议
1.3.1 稳中求进
1.3.2 善于总结文档
1.3.3 复习很关键
1.3.4 举一反三
1.4 课后习题
显示
设置
留言
1
收藏
2
沉浸
阅读
分享
手机端
快捷键
回顶部