写在前面
- 关于参考材料:本系列博客参考学习经典教材 《鸟哥Linux 的私房菜–基础篇》、 《细说Linux基础知识》 所提炼总结的笔记。如有侵权,还请麻烦联系作者删除。
- 关于使用建议:本系列博客与所参考的教材相似,自成体系。同时加入了作者学习所遇到的困惑与经验心得。可以把本系列博客作为小而精的入门材料或辅助查询的指南。作者也竭力让其更易懂,从而帮助广大读者更好地掌握Linux系统知识。
- 关于实验平台:本系列博客基于ubuntu-18.04.4-desktop-amd64+VirtualBox-6.1.4(Window7)以上的版本做实验(所需工具作者都将通过百度云提供)。
- 关于提问与反馈:在本系列博客阅读中,读者若产生相关疑问,可在评论中提问,本人非常荣幸能与大家共同探讨。我也将实时更新博客,如有错误,欢迎大家批评指正。
1. UNIX与Linux发展史
我为什么要知道这些呢?
- 在实践环境中,碰到相关发行版本等,至少有一些基础印象;
- 作为茶余饭后的谈资;
- 作为Linux发烧友,补全Linux系统相关知识是惯性使然。
1.1 UNIX发展史
UNIX大事件
-
时间:1965年
参与方:美国麻省理工学院(MIT)、通用电气公司(GE)及AT&T的贝尔实验室(BL)
目标:计划联合开发Multics工程。开发一种交互式的具有多道程序处理能力的分时操作系统。
结果:因Multics追求的目标过于庞大复杂,及当时工程管理方法的欠缺,项目进度远远落后于计划,最后贝尔实验室宣布退出。 -
时间:1969年
参与方:贝尔实验室的肯 • 汤普森(Kenneth Lane Thompson)
结果:成功基于DEC PDP-7机器,开发出了UNIX系统。 -
时间:1971年 / 1973年
参与方:肯 • 汤普森的同事丹尼斯 • 里奇(Dennis MacAlistair Ritchie)
结果:成功开发了C语言,并用C语言重写了UNIX系统的绝大部分。
UNIX主要发行版
系统版本 | 发行公司 | 硬件平台 |
---|---|---|
AIX | IBM | PowerPC |
HP-UX | HP | PA-RISC |
Solaris | Sun | SPARC |
Irix | SGI | MIPS |
Linux | Red Hat、Ubuntu… | Intel、AMD… |
Linux是类UNIX系统,算是UNIX系统的一个分支。
1.2 Linux发展史
Linux大事件
- 时间:1991年
参与方:芬兰大学生李纳斯(Linus Torvalds)
结果:在GPL条例下,开发并发布了第一版(0.02)的Linux操作系统。在开源环境下,后来陆续加入的众多爱好者共同开发现今的Linux操作系统。
Linux主要发行版
系统版本系列 | 系统版本 |
---|---|
Red Hat系列 | Red Hat 、CentOS、SuSE、Fedora、Gentoo、Mandriva、Turbolinux |
Ubuntu系列 | Ubuntu、Debian、KNOPPIX |
2. 开源软件简介
前面说过Linux是开源软件,开源软件有以下这些特点:
1.可随便使用;(开源软件并不意味着都是免费的,绝大多数开源软件是免费的。)
2.可随便下载并研究源代码;
3.可随便改良并散布该软件,主要看准守何种开源协议,主要开源协议如下图所示。
3. Linux应用领域
Linux操作系统应用领域主要分为以下三个场景:
(1) 企业环境
- 网络服务器(最热门的应用):由于Linux系统的高稳定性和开源性等原因,许多企业选择Linux作为服务器的操作系统。
- 关键任务的应用:企业倾向于选择Linux系统来管理最重要的业务。如金融业在管理投资者、账户的数据时,就选择Linux系统做底层操作系统。
- 学术机构高效能运算任务:由于Linux有强大的运算能力且更好地支持平行运算,所以学术机构的研究通常需要Linux系统的支持。
(2) 个人环境
- 桌面计算机:通过与X Window等图形窗口软件的结合,Linux操作系统也不失为一个良好的个人桌面操作系统。
- 手机系统:手机操作系统的核心便是Linux,例如安卓(Android)其实就是Linux核心的一支。
- 嵌入式系统:将操作系统直接嵌入到产品(如路由器、手机、IP分享器和机器人等)当中,理论上不会更动的这个操作系统,就称为嵌入式系统。而这个操作系统也一般选择Linux系统(要玩嵌入式,需要熟悉Linux Kernel和驱动程序)。
(3)云端运用
- 云程序:用的越来越多的云程序的底层就是Linux。
- 端设备:除了智能手机外,更多如树莓派、香蕉派等越来越轻量化的端设备也接着上网连接云程序而越发的普及。而这些端设备的内部也是使用Linux操作系统。
4. Linux学习建议
(1)材料选择–小而精开头,大而全陪伴
刚开始入门的读者,开始学习时,学习材料的选择可以避开关于Linux的大部头。而是挑选小小本100多页的教材(任意的都行)或者较完整的视频与博客(如本博客),花上一个月快速边看边实践。这样,对大概核心内容就有基本的了解。而后,再对学习过程中有疑问的点,找些经典的大部头随时查询的工具书,做深入分析。
开始入门的学习者,可能总是纠结于材料的选择,资源的收藏!过了好长时间也没开始动手学习。何必呢!不仅仅Linux的学习如此,其他任何的技术的学习也可这么做。
(2)学习的过程
- 计划:选好了材料,马上给自己制定学习计划(每周要学多少)。
- 坚持:雷打不动的学下去!所以做计划时要契合实际。
- 专注:学习过程不要浮躁,不要看到一个新的资源,就马上心猿意马,在手头的材料上专注下去。
- 练习:眼镜看完就觉得会了吗!动手练习吧,至少把练习过程在自己的电脑运行两三遍。实践是检验真理的唯一准则。
(3)过程中碰到困难怎么办?
- 学会问问题:不要一有问题就问,自己先尽力思考好(至少把自己想要问的问题整理清楚),而后才去寻求帮助。
- 自助一会儿:想清楚问题后,可以自己再尝试寻求帮助信息,比如找找相关的示例、文档、查找。
- 头疼的英语:学习计算机相关技术,英语是绕不开的!报错信息、相关的一手毫无疑问都是以英语展示的。必须自己克服 ,让自己不断去接触,然后熟悉并喜欢上它。
- 不断地更新并形成自己的学习方法:如今空气中弥漫着各种信息、知识。谁跟的上谁就能当上弄潮儿。所以必须有自己的学习方法。
(4)开始忘掉Windows的思维方式,并尝试适应Linux的纯字符界面。
可能有些网友学完Linux后,就各种抨击Windows等其它操作系统!在此,我只能说存在即合理,没有必要刻意避开学习一些技术。包容的辩证的学者才应该是我们所要追求的身份不是吗!