【Linux探索之旅】开宗明义+第一部分第一课:什么是Linux?


内容简介

1、课程大纲

2、第一部分第一课:什么是Linux?

3、第一部分第二课预告:下载Linux,免费的噢!

 


开宗明义

我们总听到别人说:Linux挺复杂的,是给那些追求逼格的程序员用的。咱们老百姓呀,用用Windows就高兴。

但事实并非如此,Linux不是那么“难于上青天”的。

不少学编程的朋友看过《鸟哥的Linux私房菜》,是台湾的鸟哥写的,非常棒。

小编也开始写一个系列教程,希望对自己对别人都有帮助。但我会非常认真的,不会乱来。

在这个教程中,小编会向您证明:Linux并不复杂。

如果你不知道什么是Linux,完全不要紧,这个教程就是给初学者准备的。

这个课程面向的对象:

  1. 那些使用Windows或Mac,但是希望了解Linux的人
  2. 初学Linux,希望更好地掌控Linux的人
  3. 网络管理员,希望管理好Linux下的服务器
  4. 其他对Linux感兴趣的人

什么是Linux?

当今时代,要说没听过Linux,那是比较难的一件事。

小编上初中的时候(21世纪初,不小心暴露了年龄),第一次看到Linux,还是在学校的机房的电脑上。但是一直没机会使用,因为也就一台电脑有Linux,大家上机课用的还是Windows。那时候就光记得Linux的那只呆萌的企鹅了。

今天,Linux几乎无所不在:大部分网站的服务器都是Linux系统;Android系统的底层用的是修改过的Linux内核;还有了Ubuntu(一种Linux发行版,下文中会介绍)手机。

小编你扯了半天,那么Linux到底是什么呀?

不要急嘛,今天这一课我们就循序渐进地带你认识一下Linux。下一课我们才开始安装开发环境。



什么是操作系统?

说起Windows大概无人不知,无人不晓吧。它是Microsoft(比尔盖茨的微软帝国)的主要操作系统,其他例如嵌入式里有Win CE,我们就不讨论了。

以前,Windows在桌面PC(PC是“个人电脑”,Personal Computer的意思)上面确实是一统天下。

现在苹果的Mac电脑也开始逐步崛起,Linux的份额也增加了,但是两者加起来还是和Windows差了很多。Windows所有版本(Win XP,Windows 98, Windows Vista,Win 7,Win 8等,之后还会有Win 10,Windows跳过了Win 9,直接从Win 8到Win 10)加起来在桌面领域的份额超过90%。

2015年2月桌面操作系统份额:

虽然Windows继续称霸桌面PC,但是在移动端(手机,平板,手表等)的份额却不多,一般还是iOS和Android两强争霸之地。

大部分桌面电脑的预装系统是Windows,或者说都是以Windows作为发售系统。

那这意味着什么呢?

也许你会说:“这还不简单,也就是说,开机看到的是Windows标志呗”。

虽然这样说不够完全,但是不可否认是个好的开头。

当你开启一个预装系统是Windows的电脑时,最先看到的可能是下图这样:

当然了,上图随着Windows的不同版本会有所变化。但是我们主要想说明的是:电脑启动时Windows也随之启动。

启动:电脑开启

大部分人的印象中,电脑启动时,Windows是首先启动。但如果我们仔细一些,可以观察到,在电脑启动的开始几秒里,在屏幕上显示的是一系列图像,俗称“启动界面”。Windows的图标是之后才显示的。

对于“启动界面”,我们就不截图了,因为不同的电脑,这部分信息是不尽相同的。

为什么呢?

因为这和电脑的硬件有关。实际上,正是电脑的主板(mother board)显示了“启动界面”。

主板是电脑最主要的部分,因为是主板使得我们的处理器可以运转,硬盘可以读取,光盘可以播放。主板(英语是Motherboard, Mainboard,简称Mobo)又称主机板、系统板、逻辑板、母板、底板等,是构成复杂电子系统例如电子计算机的中心或者主电路板。如下所示:

所以,电脑启动时,下面两件事是按先后顺序发生的:

  1. “启动界面”
  2. Windows的启动

只有当Windows顺利启动后,我们才可以使用各种应用程序:浏览器,画图软件,游戏,音乐播放器,等等。

那么为什么一定要先启动Windows呢?为什么那些平时我们用的程序比如 画图软件 不可以在启动界面之后就使用呢?

因为,你的电脑需要一个类似“大管家”的软件,就好像管弦乐队的总指挥一样,需要指挥各个乐手的演奏。这个“大管家”软件需要管理你电脑的内存,把内存合理分配给各个软件。它起到连接电脑的硬件(内存,显卡,光驱等)和各种软件的“桥梁”的作用。

这个任务听起来可崇高、可神圣了,不是吗?

这个“大管家”软件就是操作系统,简称OS,是Operating System的首字母(operating是英语“操作”的意思,system是英语“系统”的意思)。之后的课程,我们经常会用到OS这个简称来指代操作系统,请记住啦。

而我们的Windows就是一个操作系统。

所以如果我们总结一下,电脑会按以下顺序执行任务:

  1. 启动界面
  2. 操作系统(例如Windows)的启动
  3. 其他程序(或称软件)的启动

或许用图示更容易理解吧:

Linux是一个操作系统

小编你不要忘了这个教程是讲Linux的,怎么你扯了这么多Windows呀?

不要着急,我可没忘记我们的初衷。经过上面的介(hu)绍(che),大家应该对操作系统有了一个大致的了解了吧,那么我就要公布一个“惊天”的消息咯:Linux就是一个操作系统。类似的还有Mac OS,是苹果研发的操作系统。

相比于Windows,Linux以它的可靠和安全著称,而且更新频繁,不像Windows更新一次得等好久。我们在这个探索之旅中将慢慢发现Linux的这些优点。

也许你又要发问了:“我们能否在一台电脑上同时拥有两个OS啊?我可不想为了装Linux而把Windows卸载了,我还要玩游戏呢,我的Dota”。

有不少人可能认为需要做一个抉择:要么装Linux,要么就装Windows。但并不是这样:一台电脑可以拥有两个(甚至更多)的操作系统。

在这种情况下(多个操作系统),在电脑启动时,当启动界面结束后,会有一个被称为bootloader的程序显示出来,让你做出选择,到底选择哪个操作系统来启动。

什么是bootloader呢?

摘录百度百科的解释:

=======================

Bootloader是在操作系统内核运行之前运行的一段小程序。通过这段小程序,我们可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核准备好正确的环境。通常,Bootloader 是严重地依赖于硬件而实现的,特别是在嵌入式领域。

=======================

一般最常用的,能使我们在Linux和Windows之间做出选择的bootloader叫做GRUB。如果你没有做出选择,那么GRUB这个bootloader在几秒之后就会启动默认的操作系统。当然默认的操作系统也是你设定的。

千言万语不如一张图,再来看看电脑在双操作系统下的启动流程吧:

上图中,我们可以看到,当我们在Linux系统中时,我们使用的程序都是为Linux定制的,不会用Windows的程序;反之亦然。事实上,Windows的程序在Linux下不能运行,反之亦然。

当然了,现在有些技术可以使得Windows的程序在Linux下可以运行,比较出名的有Wine这个软件。然而,即使使用Wine后有些Windows程序可以运行在Linux下,但终归是使用专为Linux定制的程序比较好,因为更快捷。

你也许又要说了:“可是我已经习惯了Windows下的各种程序,在Linux下的程序我不会用啊”。

事实上,并没有那么难,大概几天你就能熟悉Linux下的程序的使用方法了,如果你够积极又感兴趣,可能一个晚上就可以了。

Linux上的程序有很多优点:

  1. 免费:基本上Linux上的所有程序都是免费的
  2. 更新频繁,更新也是免费的
  3. 有不少程序的Linux版比Windows版更优秀,而有一些程序没有Windows的版本(当然了,有些程序Windows下有,Linux也没有,比如很多大型游戏)。Linux下的程序往往使你更加有效率,因为它们可以更高效地使用电脑的资源

但是为什么Linux下的程序基本都是免费的呢?那开发这些程序的人不是要亏本了?

下面我们就来说说缘由。



天地霸气,爷们落地:Linux诞生

记得曾被好朋友忽悠看过一个恶搞的漫画,是关于春哥(李宇春)的,虽然我只看了开头,貌似叫《春哥传》。不过对第一卷的标题记忆犹新:《天地霸气,爷们落地》。所以在此也想借用一下,以表现Linux的霸气侧漏。

首先,Linux的霸气表现在“纯爷们”上... 不好意思搞错了,是在价格上:

  1. 正版的Windows系统售价几百美元(不同的版本售价不一,以Windows官网最贵)
  2. Linux是免费的!

看一下小编在Windows的官网上找到的Windows 8.1版的售价:120美元,按照目前美元兑人民币的汇率:1 : 6.2,就是745元。好贵,更不用说Windows里的程序价格也很贵,一个Office也要好几百美元:

看到这个对比,很多人心里会想:“Linux是免费的,肯定是因为Linux比较粗制滥造。”

那您就大错特错了。

Linux是免费的,而且基本上所有运行在Linux上的程序也是免费的,是有其原因的。而要了解原因,我们就要重回1984年,从那时开始说起。

1984年的信息技术

回到1984年,彼时的信息技术还远没有现在发达。那个时候,Microsoft(微软)才刚刚发布它的第一个操作系统:MS-DOS,也就是我们知道的DOS操作系统。

当然,DOS并不是微软开发的。追溯到1980年,西雅图计算机产品公司一名24岁的程序员蒂姆.帕特森(Tim Paterson)花费了4个月时间编写出了86-DOS操作系统。1981年7月,微软从西雅图计算机产品公司购得DOS的全部版权并将它更名为 MS-DOS。盖茨购买DOS的全部版权仅仅是5万美元。

虽然后来微软在1986年向西雅图计算机产品公司又支付了100万美元以了结官司,但与微软靠着DOS操作系统赚取的钱相比,这105万美元简直是杯水车薪。

说到头,比尔盖茨是个“海盗”般的人物,从靠DOS发迹,到后来的Windows NT的一统天下,微软可以说都在做不光彩的“勾当”,蒙了很多公司。有兴趣的读者可以看看《浪潮之巅》这本书,还有《硅谷海盗》这部电影,都有讲到微软的发迹史。

扯远了,我们及时拉回来。

虽然DOS操作系统在当时一出来便受到欢迎,但是这个系统本身有很多局限性,并不怎么样。

如果你用过初代的Windows系统,你肯定听说过DOS系统。它是像下图这样的:

那么,在那个年代,DOS是唯一的操作系统吗?

不是的,有不少操作系统,但是大部分都不出名。

当然,有一个操作系统很有名,那就是《Unix》。Unix比DOS要强大得多,但是使用起来更复杂,所以在当时只有比较专业的信息工程师才用Unix。

Unix也比DOS要古老得多,Unix是1969年(或1970年)诞生的。

从使用界面来看,Unix很像DOS:黑底白字。当然了,当时的电脑也只能做到这样了。

GNU项目

 

上图是GNU项目的logo(标志),因为GNU在英语里是“牛羚”的意思。

实际上GNU是“GNU is Not Unix”(这句英语的意思是“GNU不是Unix”)的递归缩写,计算机界经常有这样的名字表述法,老外就是萌。

也就是在微软发布DOS的同一年,1984年,Richard Stallman(理查德.斯托曼)创立了GNU项目。

谁是Richard Stallman啊?可能不少人没听过这名字。

但是这位前辈可是厉害, 他是:

  1. 自由软件基金会(Free Software Fundation,简称FSF。当然这里的“Free”是“自由的”的意思,不是“免费的”的意思)的主席
  2. GNU项目的创始人。他所写作的GNU通用公共许可证(GNU GPL)是世上最广为采用的自由软件许可证,为copyleft观念开拓出一条崭新的道路。由于GNU是公开源代码的,为了防止不肖厂商利用自由软件,使其专有化。斯托曼别出心裁,创造了Copyleft的授权办法,让所有的GNU程序遵循一种“Copyleft”原则,即可以拷贝,可以修改,可以出售,只是有一条:源代码所有的改进和修改必须向每个用户公开,所有用户都可以获得改动后的源码。Copyleft保证了自由软件传播的延续性。
  3. 著名黑客(注意:黑客其实是褒义词,指那些技术非常厉害的大师),1953年出生于美国纽约曼哈顿地区,1971年进入哈佛大学学习,同年受聘于麻省理工学院(MIT)人工智能实验室(AI Laboratory)
  4. 代表作品:Emacs(上次我们介绍Emacs的文章里提到过他),GCC(GNU Compiler Collection的缩写,意为“GNU编译器集合”,使用范围极广的编译器,甚至在嵌入式领域也有诸多变体),GDB(GNU project DeBugger的缩写,意为“GNU项目调试器”,使用范围极广的调试器)
  5. 获得过很多荣誉奖章,其中包括1991年获得的美国计算机协会颁发的Grace Hopper(格雷斯.霍普)奖(还记得我们第一代的女程序员:格雷斯.霍普 么?在《C语言探索之旅》的第一部分第一课《什么是编程?》中有介绍过,传说级别的程序媛,“发明”了bug这个词)

GNU项目在当时的首要目的是创立一个类Unix的操作系统,当然操作系统不仅仅有内核啦,还包含一些底层的基本应用程序,如编译器,链接器,汇编器,文本编辑器,还有很多API(Application Programming Interface,应用程序编程接口是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节)等。

那你要问了:“既然已经有Unix这么好的操作系统了,为什么要复刻一个Unix出来呢?”

因为Unix不是免费的,是商用软件(严格地说一开始是免费的,还可以免费提供学校教学使用,后来不开源了),价格比Windows正版还贵一点,简直不能忍。

基于这个原因,Richard Stallman创立了开源的GNU项目,以惠己利人。

补充知识:苹果的Mac OS也是基于Unix的。然而,今天的DOS却和Windows系统几乎没多大联系了(初代的Windows还有DOS的遗迹)。

GNU是自由的操作系统

GNU不仅是一个免费的操作系统,而且它也是自由(后来也被称为“开源的”,不过与Richard Stallman的初衷已经有些许不同了)的。

我们说一个软件是自由的,那这和免费的有什么区别呢?

  1. 自由的软件意味着源代码必须公开。例如Linux是一个自由的操作系统,我们在网上可以搜索到其所有版本的源代码。而相反,Windows和Mac OS则不是自由的,而是私有的,它们的源代码你是找不到的,不然微软和苹果就要疯了。Windows和Mac OS这两个操作系统就有点像可口可乐,我们可以享用,但谁也不知道可口可乐的配方。对于不开源的软件,我们无法修改其源代码(源代码就像配方对吗),也不知道内部运作机制。
  2. 自由的软件大部分时候是免费的,但也可以复制,修改和出售。

自由软件的拥护者认为:如果开放源代码,可以使软件得到多方协助,更新速度更快。

自由运动的口号是:“团结就是力量”(我党的真知灼见如此高瞻远瞩)。

Linus Torvalds霸气侧漏

1991年,Linus Torvalds(李纳斯·托沃兹),今天在编程领域应该无人不知,无人不晓了吧,就是Linux操作系统(严格地说是Linux内核)的作者。当时是芬兰的赫尔辛基大学的一位学生,他决定在自己的业余时间编写一个类Unix的操作系统(内核),最终还真给他开发出了1.0版。

Linux这个名字可以说是Linus和Unix的合并,也可以说是“Linux Is Not Unix”的递归缩写。下图是Linus的照片:

正如GNU有它的吉祥物,一只牛羚。Linux也有它的吉祥物:一只名叫Tux的萌萌哒雄性企鹅(爷们,24K纯滴)。Tux在英语里是“燕尾服”(正式名称是“男士无尾半正式晚礼服”)的意思,企鹅黑不溜秋的后背是不是很像一件燕尾服呢?而且有点神似Linus大叔。

关于这个吉祥物还有一个真实的典故,那时候为Linux系统设计吉祥物的画家征求广大意见,其他人提议模仿其他软件,用一些霸气的吉祥物,比如鲨鱼,鹰之类。最后Linus Torvalds说:“我以前在澳大利亚被一只企鹅咬过,我觉得企鹅是很有趣的生物”(简直是逗x啊,此邮件目前还保留着)。所以最后Linux的吉祥物就定为了企鹅,还是很可爱的。事实证明,Linus的决定并没有错,这只呆萌的企鹅不知道萌化了多少程序员的心。至少小编对其喜爱有加。

那么Linux和GNU项目有什么联系呢?

好问题。

可以说这两个项目是互补的:在1991年Linus释出Linux的第一个版本时,GNU项目已经创建了不少操作系统的外围软件了,例如:拷贝文件的程序(cp命令),删除文件的程序(rm命令)文本编辑器(Emacs),编译器(GCC),调试器(GDB),等一系列的程序,但是还没有自己的内核(Kernel),而Linux的出现(Linus其实就是写了一个类Unix的内核,然后移植成功了一些GNU的程序)。后来完善Linux的工作交给了Linus和广大开源社区的黑客们。他们一直兢兢业业,才有了今天Linux的辉煌。所以不是Linus一个人的功劳,他是站在开源社区的巨人肩膀上的“芬兰小毛孩子”。

所以说,GNU项目(开源的各种程序)+ Linux (操作系统内核)= GNU/Linux 这一个完整的操作系统。

生活在非洲大草原上的牛羚和象征芬兰冰天雪地的企鹅,相得益彰,冰火交融,成就了一个传奇。(“只是因为在人群中多看了你一眼...”)

来理清一下思路:

《操作系统的核心称为“内核”,但内核并不就等于操作系统,内核提供系统服务,比如文件管理、虚拟内存、设备I/O等。除内核以外,在应用软件与内核之间通常还有些作为中间件的API,可以供应用程序调用,还包含一些基本的程序,例如文本编辑器,编译器,外壳程序(shell,如常用的Bash),等。

单独的Linux内核是没办法工作的,必须要有GNU项目的众多应用程序来给它添砖加瓦。你可以想象内核就有点类似房屋的根基(钢筋混凝土),周边的基本应用程序就相当于房屋的各种设施,这样一幢房子才可以提供不同的人或动物(第三方应用程序,例如QQ,迅雷等)来使用。》

因此,Linux的官方称谓应该是“GNU/Linux”,但是这样的名字有点复杂,发音也不容易,所以一般我们都用简称:Linux。

约定:下面的课程中,如果是指Linux内核,那么小编会使用“Linux内核”;如果是指GNU/Linux这个操作系统整体,那么小编会使用“Linux”。

用一张图来总结各个系统的关系吧:

现在我们应该对全球三大最常用的桌面操作系统(Windows,Linux和Mac OS)的缘起有了一定认识了吧。

Mac OS和Linux都是基于Unix,Unix可以说是它们的祖先。而Windows的祖先是DOS,虽然我们目前使用的大部分Windows版本是基于革命性的Windows NT内核(可以阅读《观止-微软创建NT和未来的夺命狂奔》这部相当精彩的书,小编那时看得热血沸腾)。

我们说Mac OS和Linux基于Unix,只是说他们复刻了Unix的运行模式。源代码是基本不同的,特别是Linux的内核,完全是Linus从零开始写的,虽然很多代码类似Unix。而GNU项目的很多程序也和Unix的类似,连名字都一样,例如cp命令,rm命令,mv命令等。

说了这么多,希望读者朋友不要嫌小编啰嗦(当然是有点啰嗦的... 咳咳),但是如此苦口婆心(人家是纯爷们好吗... 24K的)只是为了让大家心里对这些基本概念有个大体的框架,这样后续的课程就比较容易理解了。



不同的Linux发行版

Linux发展到今天,已经是一个相当复杂和丰富的操作系统了,其大部分源代码还是GNU项目的。

因为是开源自由的,所以Linux不像Windows那么死板,你可以自己定制属于自己的Linux系统,只要你够厉害,可以自己裁裁剪剪,修修改改Linux的源代码。

不过也正因为如此,一些初学者就有点头大了,网上一搜Linux,版本那么多,用哪一个内核版本呢?然后安装哪些应用程序呢?而且安装方法又不同。。。

这都是令到普通用户作难之处。相比之下,Windows的选择和安装就简单很多。

为了简化用户安装的过程,以及提供一些基本的软件,例如浏览器,通讯软件,终端,绘图软件,文本编辑器,等等,产生了不少的Linux发行版,这些Linux的操作系统可以说是一整套使用环境:有内核,有API,有各种预装的应用程序。

这种“发行版”的概念在Windows可以说并没有,虽然我们有Win 7家庭版和Win 7旗舰版,但是不太一样。

不同的Linux发行版之间主要区别如下:

  1. 安装方法不一样:有的复杂,有的简单
  2. 安装应用程序的方式不一样:如果设计得好,那么一个Linux发行版安装起应用程序来是非常方便的,比Windows下简单快捷多了。我们之后的课程会看到
  3. 预装的应用程序不一样:就好比Windows有预装的软件,比如IE浏览器,媒体播放器(Windows Media Player)等,不同的Linux发行版也有不同的预装软件

可以把Linux的不同发行版想象成拥有同样核心(Linux的内核在Linux发行版上几乎是差不多的),而有不同装饰的摩登女郎。

不同的Linux发行版

 

全球有很多Linux的发行版,五花八门,而又都是免费的(也有个别版本收费,比如Red Hat的企业版),很难选择啊。我们接下来简单介绍最常见的Linux发行版,然后小编会为你做最好的选择。

  1. RedHat:国内,乃至是全世界的Linux用户所最熟悉、最耳闻能详的发行版想必就是RedHat了。性能稳定,老牌的Linux发行版。收费的是RedHat Enterprise Linux(RHEL,RedHat的企业版),而正统的RedHat版本早已停止技术支持,最后一版是RedHat 9.0。于是,目前RedHat分为两个系列:由RedHat公司提供收费技术支持和更新的RedHat Enterprise Linux,以及由社区开发的免费的FedoraCore(也就是目前很流行的Fedora)。
  2. Fedora:RedHat的社区免费后继版,非常强大,小编除了Ubuntu最爱的就是Fedora了。
  3. CentOS:适用于服务器的RedHat版本是RedHat Enterprise Linux,而由于这是个收费的操作系统。于是,国内外许多企业或空间商选择CentOS。CentOS可以算是RHEL的克隆版,但它最大的好处是免费。
  4. Mandriva:最早由Garl Duval创建并在1998年7月发布。以前国内刚开始普及Linux时,Mandrake非常流行。说起Mandrake的历史,其实最早Mandrake的开发者是基于Redhat进行开发的。Redhat默认采用GNOME桌面系统,而Mandrake将之改为KDE。而由于当时的Linux普遍比较难安装,不适合第一次接触Linux的新手,所以Mandrake还简化了安装系统。
  5. SUSE:德国最著名的Linux发行版,在全世界范围中也享有较高的声誉。SUSE自主开发的软件包管理系统YaST也大受好评。SUSE于2003年年末被Novell收购。
  6. Debian:最早由IanMurdock于1993年创建。可以算是迄今为止,最遵循GNU规范的Linux系统。Debian系统分为三个版本分支(branch):stable,testing和unstable。
  7. Ubuntu:Debian的后继或一个分支,也是本课程要使用到Linux发行版,之后更详细介绍。
  8. Gentoo:最初由Daniel Robbins(前Stampede Linux和FreeBSD的开发者之一)创建。Gentoo的出名是因为其高度的自定制性:因为它是一个基于源代码的(source-based)发行版。尽管安装时可以选择预先编译好的软件包,但是大部分使用Gentoo的用户都选择自己手动编译。
  9. Slackware:由Patrick Volkerding创建于1992年。算起来应当是历史最悠久的Linux发行版。曾经Slackware非常的流行,但是当Linux越来越普及,用户的技术层面越来越广(更多的新手)后,Slackware渐渐的被新来的人们所遗忘。
  10. MEPIS:由Warren Woodford在2003年建立。MEPIS虽然刚建立不久,但是迅速的传播在Linux用户间。简单来说,MEPIS是一个集合了DebianSid和Knoppix的产物。用户即能将之当作LiveCD使用,也能使用常规的图形界面进行安装。
  11. Xandros:建立在已经成为历史的Corel Linux之上。当初Corel Linux的公司由于财政上的困难,被迫终止了Corel Linux的开发,而Xandros适时的将Corel Linux部门买下,于2002年10月推出全新的Xandros Desktop。 Xandros的卖点在于极其简单的安装和使用。
  12. Deepin:易用。Deepin不仅仅对最优秀的开源产品进行集成和配置,还开发了基于 HTML5 技术的全新桌面环境、系统设置中心、以及音乐播放器,视频播放器,软件中心等一系列面向日常使用的应用软件
  13. FreeBSD:首先要强调的是:FreeBSD不是一个Linux系统!因为FreeBSD的用户也相当多,其许多特性都与Linux相类似。事实上,Linux和BSD(Berkeley Software Distribution)均是UNIX的演化分支。并且,Linux中相当多的特性和功能(比如用于配置DNS的Bind软件)都是取自于BSD的。而FreeBSD便是BSD家族中最出名,用户数量最多的一个发行版。

当然了,还有一些Linux发行版也很好,小编鉴于篇幅不能全部介绍。

Debian这个Linux发行版

我们会把精力集中在Debian这个Linux发行版上,因为它算是最符合开源精神的发行版了,也是最符合GNU标准的,是由开源社区维护。上述不少的Linux发行版都是公司来维护的。

Debian如此成功,所以继承Debian,又出现了不少Linux发行版:

  1. Knoppix:由德国的KlausKnopper开发的Knoppix,是一个基于Debian的发行版。Knoppix严格算起来是一款LiveCD Linux,所谓的Live CD就是整个操作系统都在一张光盘上,只要开机从光盘启动,就能拥有一个完整的Linux系统!无需安装!
  2. Skolelinux:是一份由 Debian Edu 项目制作的 Linux 分发版,作为 Debian Pure Blends 分发版,其为 Debian 正式辅助项目,以提供全面配置好的学校网络环境和学校适用方案
  3. Ubuntu:本课程所要使用的Linux发行版
  4. 等等

如果您觉得不够清楚,那么下图应该可以帮你理清思路:

Ubuntu这个Linux发行版

为什么我们要选择Ubuntu(发音:乌班图)作为本系列课程的Linux发行版呢?

有以下几个原因(小编不会坑你的,放心):

  1. 简便易用,适合普罗大众:现在有了Ubuntu手机就是明证。即使是对Linux初学者,Ubuntu系统也已经很简单易用了,除了命令行。Ubuntu这个名称来自非洲南部祖鲁语或豪萨语的“ubuntu”一词,意思是“人性”、“我的存在是因为大家的存在”,是非洲传统的一种价值观,类似华人社会的“仁爱”思想。
  2. 更新定期而频繁:每6个月就有一个新的Ubuntu版本,不会过时
  3. 使用者众多,支持社区很多,文档完整:使用一个软件(操作系统也是软件)最怕的就是社区支持不够,文档不全,遇到问题没处问。使用Ubuntu的你完全没有这类问题。全球有无数的Ubuntu用户可以给你提供技术支持。
  4. 标准化:Google的Android源代码的默认编译环境就是Ubuntu


总结

  1. 操作系统是你的电脑和应用程序之间的连接工具。
  2. Windows,Mac OS和Linux是最常用的操作系统。
  3. Linux是开源的,即是说:Linux的源代码是开放的,所有人都可以看到。相反地,Mac OS和Windows的源代码则是闭源的,我们不能看到它们的代码。
  4. 有很多不同的Linux变体,术语称为“Linux发行版”。
  5. 在众多的Linux发行版中,Ubuntu是最流行的。它是Debian这个Linux发行版的大家族的一员,可以说是一个后继。Ubuntu将成为我们这个课程后续一直使用的Linux发行版。

第一部分第二课预告

今天的课就到这里,一起加油吧!

下一课我们学习:下载Linux,免费的噢!


程序员联盟社区

目前有一个微信群和一个QQ群(微信群160人以上,QQ群510人以上),凡是对编程感兴趣的朋友都可以加,大家可以交流,学习,互动,讨论编写的程序的源代码,编程问答等。

微信群(程序员联盟),加群请私信我(微信群人数超过100之后,不能通过扫描二维码加入了,只能私信我,谢谢)

QQ群: 413981577 (1000人群)

QQ群文件里有很多编程书籍PDF和其他资料。扫描下面二维码加QQ:

我们还建立了一个公共的百度云盘,2TB容量,已有很多优秀编程资源,大家也可以上传。链接加群之后会发送。

百度贴吧 【程序员联盟】 欢迎您加入,交流编程,讨论代码,共享资源,已经有很多话题。吧主就是小编。

http://tieba.baidu.com/f?kw=%E7%A8%8B%E5%BA%8F%E5%91%98%E8%81%94%E7%9B%9F&ie=utf-8?

点击左下角【阅读原文】即可进入 【程序员联盟】 百度贴吧

《程序员联盟》的微社区,方便大家提问和互动。可以关注一下。

微社区地址和二维码如下:

http://m.wsq.qq.com/264152148

谢谢!



程序员联盟 微信公众号

*您若觉得本文不错,请点击画面右上角《···》按钮“分享到朋友圈”或“发送给朋友”

*新朋友请关注「程序员联盟」微信搜公众号  ProgrammerLeague

小编微信号: frogoscar

小编QQ号:  379641629

小编邮箱:    [email protected]

程序员联盟QQ群:413981577

程序员联盟微信群:先加我微信

有朋友反映看手机端的文章太累,其实是可以用浏览器网页来看的:

方法1. 点击画面右上角的《···》按钮,然后选择“复制链接”,再把链接黏贴到你的浏览器里面或用邮件发送给自己,就可以在电脑的浏览器里打开了

方法2. 头条网www.toutiao.com,搜索我的自媒体“程序员联盟”,内有所有文章,也可以直接进这个链接:http://www.toutiao.com/m3750422747/

方法3. 我的51CTO博客,CSDN博客和博客园链接(所有文章都在上面)
http://4526621.blog.51cto.com

http://blog.csdn.net/frogoscar

http://www.cnblogs.com/frogoscar

如何查看所有文章

点击“查看公众号”,再点击“查看历史消息

点击“阅读原文”查看  百度贴吧 【程序员联盟】

时间: 2024-10-10 02:59:44

【Linux探索之旅】开宗明义+第一部分第一课:什么是Linux?的相关文章

【Linux探索之旅】第二部分第二课:命令行,世界尽在掌握

内容简介 1.第二部分第二课:命令行,世界尽在掌握 2.第二部分第三课预告:文件和目录,组织不会亏待你 命令行,世界尽在掌握 今天的标题是不是有点霸气侧漏呢? 读者:"小编,你为什么每次都要起这么非主流的标题呢?不能愉快地玩耍么?" 小编:"那我问你,老子他为什么要写<道德经>咧?" 读者:"为什么咧?" 小编:"因为老子愿意!" 开个小玩笑轻松一下 O(∩_∩)O~ 没办法,不能不激动,因为我们终于来到了这一刻,

Linux探索之旅 | 第五部分第二课:一入Shell深似海,酷炫外壳惹人爱

-- 简书作者 谢恩铭 转载请注明出处 内容简介 前言 Shell是什么? 我们的第一个Shell脚本 运行Shell脚本 总结 第五部分第三课预告:变量在手,Shell不愁 1. 前言 上一课是 Linux探索之旅 | 第五部分第一课:Vim岂是池中物,宝剑锋从磨砺出 . 现在,我们已经学习了 Vim 这样强大的文本编辑器.相信我,Vim 对我们之后的课程会非常有用. 这一课我们可以进入第五部分的重心了:Shell 编程. 什么是Shell呢? 首先,shell 是英语"壳,外壳"的

【Linux探索之旅】第二部分第一课:终端Terminal,好戏上场

内容简介 1.第二部分第一课:终端Terminal,好戏上场 2.第二部分第二课预告:命令行,世界尽在掌握 终端Terminal,好戏上场 随着第一部分的结束,我们进入了第二部分(小编你这好像是废话...). 也许是第一部分有点偏理论,而且安装Linux的发行版Ubuntu系统又比较难概述,所以小编备受折磨之后,有点"青年痴呆"也是正常. 但我向你保证,从这一部分开始,好戏正式上演! 经过第一部分的洗礼,我们了解了Linux的历史和很多概念,如何安装Linux,Linux的桌面环境和图

【Linux探索之旅】第二部分第九课:查找文件,无所遁形

内容简介 1.第二部分第九课:查找文件,无所遁形 2.第二部分测试题 查找文件,无所遁形 这一课不难,但挺重要的. 之前的课程我们见识过了Linux下文件的组织形式是很特别的,跟Windows不一样. 我们也用ls / 这个命令来列出根目录下的所有目录,有/bin,/etc,/var,/home,等等.而这些目录下又有子目录和文件,错综复杂. 这些目录中有一部分是历史遗留的,从Unix时代就有了.问题是:我们如何在这"茫茫文海"中查找我们需要的文件. "人潮人海中,有你有我.

【Linux探索之旅】第一部分第五课:Unity桌面,人生若只如初见

内容简介 1.第一部分第五课:Unity桌面,人生若只如初见 2.第一部分第六课预告:Linux如何安装在虚拟机中 Unity桌面,人生若只如初见 不容易啊,经过了前几课的学习,我们认识了Linux是什么,以及如何安装Linux系统(我们以Ubuntu这个Linux发行版为以后的演示系统),我们也在上一课终于把Ubuntu安装好了. "很不错,掌声给自己". 安装Ubuntu遇到什么问题,可以在我们的QQ群和微信群提问,也可以私信小编,QQ.微信.邮件都行.联系方式在下面. Linux

【Linux探索之旅】第一部分第二课:下载Linux,免费的噢

 内容简介 1.第一部分第二课:下载Linux,免费的噢 2.第一部分第三课预告:测试并安装Ubuntu 下载Linux,免费的噢 大家好,上一课我们认识了非常"霸气侧漏"的Linux操作系统. 也知道了它的吉祥物:企鹅,叫Tux(燕尾服的意思),而且它是一只雄性的企鹅,爷们,24K纯滴.(这个不重要好不,小编...) 我们还提到了什么是操作系统,Linux的历史和不同的Linux发行版.也确定了我们后续课程要使用的Linux发行版:Ubuntu.幸好,在各个Linux发行版(每个发

【Linux探索之旅】第二部分第六课:Nano,初学者的文本编辑器

内容简介 1.第二部分第六课:Nano,初学者的文本编辑器 2.第二部分第七课预告:软件安装,如虎添翼 Nano,初学者的文本编辑器 这一课比较简单,没有什么太难的概念.不过这一课会讲如何配置终端噢. 大家可以泡个泡面,烤只烤鸡:剥个卤蛋,慢慢来看. 之前的课程中,我们已经学会了在终端中用多种不同的方式来查看文件的内容,但是我们还不知道如何在终端中修改文件的内容. 为什么我们把文本编辑器推迟到现在来说呢?因为这是终端可以提供的强大功能之一. 在Linux终端的文本编辑器当中,比较著名的有:Nan

【Linux探索之旅】第三部分第四课:后台运行及合并多个终端

内容简介 1.第三部分第四课:后台运行及合并多个终端 2.第三部分第五课预告:延时执行,唯慢不破 后台运行及合并多个终端 上一课(<[Linux探索之旅]第三部分第三课:监视系统活动,滴水不漏>)中,我们简单介绍了进程,也学习了如何列出系统中的进程,如何过滤列表结果,还有如何结束进程. 这一课我们继续乘胜追击,一路向北,来学习进程的后台运行. 我们使用的终端让我们难免有一种感觉:我们每次只能在一个终端中运行一个进程.但其实这是大错特错的. 终端还可以运行后台进程.要使进程一个在后台运行,有几种

【Linux探索之旅】第四部分第五课:源码编译,安装便利

内容简介 1.第四部分第五课:源码编译,安装便利 2.第四部分第六课:DNS和域名,一探究竟 源码编译,安装便利 这一课相对轻松,毕竟刚跨年(2015-2016)么,新年怎么能让大家一个头两个大呢~ 小编怎么可能这么坏呢?小编是这样的人吗?(是啊 -_-#). 之前的课程([Linux探索之旅]第二部分第七课:软件安装,如虎添翼)中,我们已经了解过Ubuntu这个Linux的发行版下安装软件是何等方便,用apt-get这个工具可以轻松搞定.这种方式可以让我们下载并安装大部分的软件. 其他Linu

【Linux探索之旅】第二部分第七课:软件安装,如虎添翼

内容简介 1.第二部分第七课:软件安装,如虎添翼 2.第二部分第八课预告:RTFM 阅读那该死的手册 软件安装,如虎添翼 这一课也会相对比较轻松,所以好好享受吧. 我们来谈谈Linux下软件的安装,会在我们的Ubuntu这个Linux发行版中演示. 一般提到软件安装,有过Windows系统使用经验的朋友肯定会深有体会,那个麻烦啊,大致流程是这样的: 在搜索引擎(比如百度或google)中搜索我们的软件名称. 看到一个不错的结果,点击进入.如果是官网一般会进入官网. 下载此软件的安装程序. 双击下