鸟哥的Linux私房菜2018简体化 第一章(3)、Linux是什么与如何学习

1.4 Linux该如何学习

为什么大家老是建议学习Linux最好能够先舍弃X Window的环境呢?这是因为X Window了不起也只是Linux内的“一套软件”而不是“Linux核心”。此外,目前发展出来的X-Window对于系统的管理上还是有无法掌握的地方,举个例子来说,如果 Linux本身找不到网卡的时候,请问如何以X Window来查找这个硬件并且驱动他呢?

还有,如果需要以Tarball(源代码)的方式来安装软件并加以设置的时候,请以X Window 来安装它!这可能吗?当然可能,但是这是在考验“X Window开发商”的技术能力,对于了解Linux架构与核心并没有多大的帮助的!所以说,如果只是想要“会使用Linux”的角度来看,那么确实使用X Window也就足够了,反正搞不定的话,花钱请专家来搞定即可;但是如果想要更深入 Linux 的话,那么命令行界面才是不二的学习方式!

以服务器或者是嵌入式系统的应用来说,X Window是非必备的软件,因为服务器是要提供用户端来连线的,并不是要让使用者直接在这部服务器前面按键盘或鼠标来操作的!所以图形界面当然就不是这么重要了!更多的时候甚至大家会希望你不要在服务器主机上启动X window,这是因为X Window通常会吃掉很多系统资源的缘故!

再举个例子来说,假如你是个软件服务的工程师,你的客户人在台北,而你人在远方的台南。某一天客户来电说他的 Linux服务器出了问题,要你马上解决他,请问:要您亲自上台北去修理?还是他搬机器下来让你修理?或者是直接请他开个帐号给你进去设置即可?想当然尔,就会选择开帐号给你进入设置即可啰!因为这是最简单而且迅速的方法!这个方法通常使用命令行会较为简单,使用图形界面则非常麻烦啦!所以啦!这时候就得要学学命令行来操作Linux比较好啦!

另外,在服务器的应用上,文件的安全性、人员帐号的管理、软件的安装/修改/设置、 日志文件的分析以及自动化工作调度与程序的撰写等等,都是需要学习的, 而且这些东西都还未涉及服务器软件呢!对吧!这些东西真的很重要,所以,建议你得要依据下面的介绍来学习才好。

Tips

这里是站在要让 Linux 成为自己的好用的工具 (服务器或开发软件的程序学习平台) 为出发点去介绍如何学习的喔!所以,不要以旧有的 Windows 角度来思考!也不要说“你都只有碰过触摸式设备”的角度来思考!加油啰!


1.4.1 从头学习Linux基础

其实,不论学什么系统,“从头学起”是很重要的!还记得你刚刚接触微软的Windows都在干什么?还不就是由文件资源管理器学起,然后慢慢的玩到控制台、玩到桌面管理,然后还去学Office软件,我想,你总该不会直接就跳过这一段学习的历程吧?那么 Linux的学习其实也差不多,就是要从头慢慢的学起啦!不能够还不会走路之前就想要学飞了吧!^_^!

常常有些朋友会写信来问鸟哥一些问题,不过,信件中大多数的问题都是很基础的!例如:“为什么我的使用者个人网页显示我没有权限进入?”、“为什么我下达一个指令的时候,系统告诉我找不到该指令?”、“我要如何限制使用者的权限”等等的问题,这些问题其实都不是很难的,只要了解了 Linux的基础之后,应该就可以很轻易的解决掉这方面的问题呢!所以请耐心的,慢慢的,将后面的所有章节内容都看完。自然你就知道如何解决了!

此外,网络基础与安全也很重要,例如TCP/IP的基础知识,网络路由的相关概念等等。很多的朋友一开始问的问题就是“为什么我的邮件服务器主机无法收到信件?”这种问题相当的困扰,因为发生的原因太多了,而朋友们常常一接触Linux就是希望 “建站”!根本没有想到要先了解一下Linux的基础!这是相当伤脑筋的!尤其近来计算机怪客(Cracker)相当多,(真奇怪,闲闲没事干的朋友还真是不少…),一个不小心您的主机就被当成怪客跳板了!甚至发生被警告的事件也层出不穷!这些都是没能好好的注意一下网络基础的原因呀!

所以,鸟哥希望大家能够更了解Linux,好让它可以为你做更多的事情喔!而且这些基础知识是学习更深入的技巧的必备条件呀!因此建议:

1. 计算机概论与硬件相关知识:

因为既然想要走Linux这条路,信息相关的基础技能也不能没有啊!所以先理解一下基础的硬件知识,不用一定要全懂啦!又不是真的要你去组计算机~^_^,但是至少要“听过、有概念”即可;

2. 先从Linux的安装与指令学起:

没有Linux怎么学习Linux呢?所以好好的安装起一套你需要的Linux吧!虽然说Linux distributions很多,不过基本上架构都是大同小异的,差别在于界面的友好度与软件的选择不同罢了!选择一套你喜欢的就好了,倒是没有哪一套特别好说~

3. Linux操作系统的基础技能:

这些包含了“使用者、群组的概念”、“权限的观念”,“程序的定义”等等,尤其是权限的概念,由于不同的权限设置会妨碍你的使用者的便利性,但是太过于便利又会导致入侵的可能!所以这里需要了解一下你的系统呦!

4. 务必学会vi文本编辑器:

Linux的文本编辑器多到会让你数到生气!不过,vi却是强烈建议要先学习的!这是因为vi会被很多软件所调用,加上所有的 Unix like系统上面都有vi,所以你一定要学会才好!

5. Shell与Shell

Script的学习:

其实鸟哥上面一直谈到的“命令行”说穿了就是一个名为shell的软件啦!既然要玩命令行,当然就是要会使用shell的意思。但是 shell上面的数据太多了,包括“正则表达式”、“管道命令”与“数据流重定向”等等,真的需要了解比较好呦!此外,为了帮助你未来的管理服务器的便利性,shell scripts也是挺重要的!要学要学!

6. 一定要会软件管理器:

因为玩Linux常常会面临得要自己安装驱动程序或者是安装额外软件的时候,尤其是嵌入式设备或者是学术研究单位等。这个时候Tarball/RPM/DPKG/YUM/APT等软件管理器的安装方式的了解,对你来说就重要到不行了!

7. 网络基础的创建:

如果上面你都通过了,那么网络的基础就是下一阶段要接触的东西,这部份包含了“IP概念”“路由概念”等等;

8. 如果连网络基础都通过了,那么网站的架设对你来说,简直就是“太简单啦”!

在一些基础知识上,可能的话,当然得去书店找书来读啊!如果您想要由网络上面阅读的话,那么这里推荐一下由Netman大哥评论员的Study-Area里面的基础文章,相当的实用!

计算机基础 (http://www.study-area.org/compu/compu.htm)

网络基础 (http://www.study-area.org/network/network.htm)


1.4.2 选择一本易读的工具书

正所谓:“好的书本带你上天堂、坏的书本让你穷瞎忙…”一本好的工具书是需要的,不论是未来作为查询之用,还是在正确的学习方法上。可惜的是,目前坊间的书大多强调速成的Linux教育,或者是强调Linux的网络功能,却欠缺了大部分的Linux基础管理~鸟哥在这里还是要再次的强调,Linux的学习历程并不容易,他需要比较长的时间来适应、学习与熟悉,但是只要能够学会这些简单的技巧,这些技巧却可以帮助您在各个不同的OS之间遨游!

您既然看到这里了,应该是已经取得了鸟哥的 Linux 私房菜 -- 基础学习篇了吧!^_^ 。 希望这本书可以帮助您缩短基础学习的历程,也希望能够带给您一个有效的学习观念!而在这本书看完之后,或许还可以参考一下Netman推荐的相关网络书籍:

请推荐有关网络的书:

http://linux.vbird.org/linux_basic/0120howtolinux/0120howtolinux_1.php

不过,要强调的是,每个人的阅读习惯都不太一样,所以,除了大家推荐的书籍之外, 您必须要亲眼看过该本书籍,确定您可以吸收的了书上的内容,再下去购买喔!

Tips

其实鸟哥买科技类书籍比较喜欢买基础书耶,因为基础学好了,其他的部份大概找个keyword ,再google一下,一大堆数据就可以让你去分析判断了!你会说,既然如此,那基础书籍内的项目不是google也是一大堆?不要忘记了,“最开始你是要用什么关键字去google啊?”!所以,阅读基础书籍的重点,就是让自己能够掌握住那些“keyword”啰!加油!


1.4.3 实践再实践

要增加自己的体力,就是只有运动;要增加自己的知识,就只有读书;当然,要增加自己对于Linux的认识,大概就只有实践经验了!所以,赶快找一部计算机,赶快安装一个Linux distribution,然后快点进入Linux的世界里面晃一晃!相信对于你自己 的Linux能力必然大有斩获!除了自己的实作经验之外,也可以参考网络上一些善心人士整理的实作经验分享喔!例如最有名的 Study-Area (http://www.study-area.org)等网站。

此外,人脑不像计算机的硬盘一样,除非硬盘坏掉了或者是数据被你抹掉了,否则储存的数据将永远而且立刻的记忆在硬盘中!在人类记忆的曲线中,你必须要“不断的重复练习”才会将一件事情记得比较熟!同样的,学习Linux也一样, 如果你无法经常摸索的话,那么,抱歉的是,学了后面的,前面的忘光光!学了等于没学,这也是为什么鸟哥当初要写“鸟哥的私房菜”这个网站的主要原因,因为,鸟哥的忘性似乎比一般人还要好~~呵呵!所以,除了要实作之外,还得要常摸!才会熟悉Linux而且不会怕它呢!

Tips

鸟哥上课时,常常有学生问到:“老师,到底要听过你的课几次之后,才能学的会?”鸟哥的标准答案是:“你永远学不会!” 因为你是用“听”的,没有动手做,那么永远不会知道“经验”两个字怎么写!很多时候计算机/网络都会有一些莫名其妙的突发状况,没有实际碰触过,怎么可能会理解呢?所以“永远是不可能听会的”!为啥要实验?因为实验过后你才会有经验来记下来?否则实验结果课本都有啊!不是背一背就好了,干麻实验呢?浪费钱吗?^_^


1.4.4 发生问题怎么处理啊?建议流程是这样…

我们是“人”不是“神”,所以在学习的过程中发生问题是很常见的啦!重点是,我们该如何处理在自身所发生的Linux问题呢?在这里鸟哥的建议是这样的流程:

1. 在自己的主机/网络数据库上查询How-To或FAQ

其实,在Linux主机及网络上面已经有相当多的FAQ整理出来了!所以,当你发生任何问题的时候,除了自己检查,或者到上述的实践网站上面查询一下是否有设置错误的问题之外,最重要的当然就是到各大FAQ的网站上查询啰!以下列出一些有用的FAQ与How-To网站给您参考一下:

Linux自己的文件数据: /usr/share/doc (在你的Linux系统中)

CLDP 中文文件计划: http://www.linux.org.tw/CLDP/

TheLinux Documentation Project: http://www.tldp.org/

上面比较有趣的是那个TLDP(TheLinux Documentation Project), 它几乎列出了所有Linux上面可以看到的文献数据,各种How-To的作法等等,虽然是英文的,不过,很有参考价值!

除了这些基本的FAQ之外,其实,还有更重要的问题查询方法,那就是利用谷歌(Google)帮您去搜寻答案呢!在鸟哥学习Linux的过程中,如果有什么奇怪的问题发生时,第一个想到的,就是去http://www.google.com.tw搜寻是否有相关的 议题。 举例来说,我想要找出Linux下面的NAT,只要在上述的网站内,输入Linux跟NAT, 立刻就有一堆文献跑出来了!真的相当的优秀好用喔!您也可以通过谷歌来找鸟哥网站上的数据呢!

Google: http://www.google.com.tw

鸟哥网站: http://linux.vbird.org/Searching.php

2. 注意输出信息,自行解决疑难杂症:

一般而言,Linux在下达指令的过程当中,或者是log file里头就可以自己查得错误信息了,举个例子来说,当你下达:

[root@centos ~]# ls -l /vbird

由于系统并没有/vbird这个目录,所以会在屏幕前面显示:

ls: /vbird: No such file or directory

这个错误信息够明确了吧!系统很完整的告诉您“查无该数据”!呵呵!所以啰,请注意,发生错误的时候,请先自行以屏幕前面的信息来进行debug(除错)的动作,然后,如果是网络服务的问题时,请到/var/log/这个目录里头去查阅一下log file(日志文件),这样可以几乎解决大部分的问题了!

3.搜寻过后,注意网络礼节,讨论区大胆的发言吧:

一般来说,如果发生错误现象,一定会有一些信息对吧!那么当您要请教别人之前,就得要将这些信息整理整理,否则网络上人家也无法告诉您解决的方法啊!这一点很重要的喔!万一真的经过了自己的查询,却找不到相关的信息,那么就发问吧!不过,在发问之前建议您最好先看一下“提问的智慧 http://phorum.vbird.org/viewtopic.php?t=96”这一篇讨论!然后,你可以到下面几个讨论区发问看看:

酷学园讨论区 http://phorum.study-area.org

鸟哥的私房菜馆讨论区 http://phorum.vbird.org

不过,基本上去每一个讨论区回答问题的熟手,其实都差不多是那几个,所以,您的问题“不要重复发表在各个主要的讨论区”!举例来说,鸟园与酷学园讨论区上的朋友重复性很高,如果您两边都发问,可能会得到反效果,因为大家都觉得,另外一边已经回答您的问题了呢~~

4. Netman大大给的建议:

此外,Netman兄提供的一些学习的基本方针,提供给大家参考:

在Windows里面,程序有问题时,如果可能的话先将所有其它程序保存并结束,然后尝试按救命三键 (Ctrl+Alt+Delete),将有问题的程序(不要选错了程序哦)“结束任务”,看看能不能恢复系统。不要动不动就直接关机 或reset。

有系统地设计文件目录,不要随便到处保存盘案以至以后不知道放哪里了,或找到文件也不知道为何物。

养成一个做记录的习惯。尤其是发现问题的时候, 把错误信息和引发状况以及解决方法记录清楚,同时最后归类及定期整理。别以为您还年轻,等你再弄多几年计算机了,您将会非常庆幸您有此一习惯。

如果看在网络上看到任何好文章,可以为自己留一份copy,同时定好题目,归类存盘。(鸟哥注:需要注意知识产权!)

作为一个使用者,人要迁就机器;做为一个开发者,要机器迁就人。

学写script的确没设置server那么好玩,不过以我自己的感觉是:关键是会得“偷”,偷了会得改,改了会得变,变则通矣。

在Windows里面,设置不好设备,您可以骂它;在Linux里面,如果设置好设备了,您得要感激它!


1.4.5 鸟哥的建议(重点在solution的学习)

除了上面的学习建议之外,还有其他的建议吗?确实是有的!其实,无论作什么事情,对人类而言,两个重要的因素是造成我们学习的原动力:

成就感

兴趣

很多人问过我,鸟哥是怎么学习Linux的?由上面鸟哥的悲惨Linux学习之路你会发现,原来我本人对于计算机就蛮有兴趣的,加上工作的需要,而鸟哥又从中得到了相当多的成就感,所以啰,就一发不可收拾的爱上Linux啰!因此,鸟哥个人认为,学习 Linux如果玩不出兴趣, 他对你也不是什么重要的生财工具,那么就不要再玩下去了!因为很累人啊~而如果你真的想要玩这么一套优良的操作系统,除了前面提到的一些建议之外,说真的,得要培养出兴趣与成就感才行!那么如何培养出兴趣与成就感呢?可能有几个方向可以提供给你参考:

创建兴趣:

Linux上面可以玩的东西真的太多了,你可以选择一个有趣的课题来深入的玩一玩!不论是Shell还是图形界面等等,只要能够玩出兴趣,那么再怎么苦你都会不觉得喔!

成就感:

成就感是怎么来的?说实在话,就是“被认同”来的!怎么被认同呢?写心得分享啊!当你写了心得分享,并且发表在BBS上面,自然有朋友会到你的网页去瞧一瞧,当大家觉得你的网页内容很棒的时候,哈哈!你肯定会加油继续的分享下去而无法自拔的!那就是我啦……^_^!

就鸟哥的经验来说,你“学会一样东西”与 “要教人家会一样东西”思考的回路是不太一样的!学会一样东西可能学一学会了就算了!但是要“教会”别人,那可就不是闹着玩的!得要思考相当多的理论性与实务性方面的东西,这个时候,你所能学到的东西就更深入了!鸟哥常常说,我这个网站对我在Linux的了解上面真的的帮助很大!

协助回答问题:

另一个创造成就感与满足感的方法就是“助人为快乐之本”!当你在 BBS 上面告诉一些新手,回答他们的问题,你可以获得的可能只是一句“谢谢!感恩呐!” 但是那句话真的会让人很有快乐的气氛!很多的老手都是因为有这样的满足感,

才会不断的协助新来的朋友的呢!此外,回答别人问题的时候,就如同上面的说明一般, 你会更深入的去了解每个项目,哈哈!又多学会了好多东西呢!

参与讨论:

参与大家的技术讨论一直是一件提升自己能力的快速道路!因为有这些技术讨论, 你提出了意见,不论讨论的结果你的意见是对是错,对你而言,都是一次次的知识成长!这很重要喔!目前台湾地区办活动的能力是数一数二的Linux社群“酷学园 (Study Area, SA)”,每个月不定期的在北/中/南举办自由软件相关活动,有兴趣的朋友可以看看:http://phorum.study-area.org/index.php/board,22.0.html

除了这些基本的初学者建议外,其实,对于未来的学习,这里建议大家要“眼光看远”!一般来说,公司商户会发生问题时,他们绝不会只要求各位“单独解决一部主机的问题”而已,他们需要的是整体环境的总体解决“Total Solution”。而我们目前学习的 Linux其实仅是在一部主机上面进行各项设置而已,还没有到达解决整体公司所有问题的状态。当然啦,得要先学会Linux相关技巧后,才有办法将这些技巧用之于其他的solution上面!

所以,大家在学习Linux的时候,千万不要有“门户之见”,认为MS的东西就比较不好~ 否则,未来在职场上,竞争力会比人家弱的!有办法的话,多接触,不排斥任何学习的机会!都会带给自己很多的成长!而且要谨记:“不同的环境下,解决问题的方法有很多种,只要行的通,就是好方法!”

Tips

另外,不要再说没兴趣了!没有花时间去了解一下,不要跟人家说你没兴趣!而且,兴趣也是靠培养来的!除了某些特殊人物之外, 没有花时间趣培养兴趣,怎么可能会有兴趣!?



1.5 重点回顾

操作系统(Operation System)主要在管理与驱动硬件,因此必须要能够管理内存、管理设备、负责进程管理以及系统调用等等。因此,只要能够让硬件准备妥当(Ready)的情况,就是一个基本的操作系统了。

Unix的前身是由贝尔实验室(Bell lab.)的Ken Thompson利用汇编语言写成的, 后来在1971-1973年间由Dennis Ritchie以C程 序语言进行改写,才称为Unix。

1977年由Bill Joy放出BSD(Berkeley Software Distribution),这些称为Unix-like的操作系统。

1984年由Andrew Tanenbaum开始制作Minix操作系统,该系统可以提供源代码以及软件。

1984年由Richard Stallman提倡GNU计划,倡导自由软件(Free software——, 强调其软件可以“自由的取得、复制、修改与再发行”,并规范出GPL授权模式, 任何GPL(General Public License)软件均不可单纯仅贩卖其软件,也不可修改软件授权。

1991年由芬兰人Linus Torvalds开发出Linux操作系统。简而言之,Linux成功的地方主要在于:Minix(Unix), GNU, Internet, POSIX 及虚拟团队的产生。

符合 Open source 理念的授权相当多,比较知名的如 Apache/BSD/GPL/MIT 等。

Linux本身就是个最基本的操作系统,其开发网站设立在http://www.kernel.org,我们亦称Linux操作系统最底层的数据为“核心 (Kernel)”。

从 Linux kernel 3.0 开始,已经舍弃奇数、偶数的核心版本规划,新的规划使用主线版本(MainLine)为依据,并提供长期支持版本(longterm)来加强某些功能的持续维护。

Linux distribution的组成含有:“Linux Kernel + Free Software + Documentations(Tools) + 可完整安装的程序”所制成的一套完整的系统。

常见的 Linux distributions分类有“商业、社群”分类法,或“RPM、DPKG”分类法。

学习Linux最好从头由基础开始学习,找到一本适合自己的书籍,加强实践才能学会。



1.6 本章习题

(要看答案请将鼠标移动到“答:”下面的空白处,按下左键圈选空白处即可察看)

实践题部分:

请上网找出目前 Linux 核心的最新稳定版与发展中版本的版本号码,请注明查询的日期与版本的对应。

请上网找出 Linux 的吉祥物企鹅的名字,以及最原始的图像文件画面。(提示:请前往http://www.linux.org查阅)

请上网找出Andriod与Linux核心版本间的关系。(提示:请前往 https://zh.wikipedia.org/wiki/Android查阅)

简答题部分:

你在你的主机上面安装了一张网卡,但是开机之后,系统却无法使用,你确定网卡是好的,那么可能的问题出在哪里?该如何解决?

因为所有的硬件都没有问题,所以,可能出问题的地方在于系统的核心(kernel) 不支持这张网卡。解决的方法,(1)到网卡的开发商网站,(2)下载支持你主机操作系统的驱动程序,(3)安装网卡驱动程序后,就可以使用了。

一个操作系统至少要能够完整的控制整个硬件,请问,操作系统应该要控制硬件的哪些单元?

根据硬件的运行,以及数据在主机上面的运算情况与写入/读取情况,我们知道至少要能够控制:(1)input/output control, (2)device control, (3)process management, (4)file management. 等等!

我在Windows上面玩的游戏,可不可以拿到Linux去玩?

当然不行!因为游戏也是一个应用程序(application),它必须要使用到核心所提供的工具来开发他的游戏,所以这个游戏是不可以在不同的平台间运行的。除非这个游戏已经进行了移植。

Linux本身仅是一个核心与相关的核心工具而已,不过,它已经可以驱动所有的硬件,所以,可以算是一个很基本的操作系统了。经过其他应用程序的开发之后,被整合成为Linux distribition。请问众多的distributions之间,有何异同?

相同:(1)同样使用http://www.kernel.org所释出的核心;(2)支持同样的标准,如 FHS、LSB 等;(3)使用几乎相同的自由软件(例如 GNU 里面的 gcc/glibc/vi/apache/bind/sendmail…);(4)几乎相同的操作接口(例如均使用 bash/KDE/GNOME 等等)。不同:使用的 kernel 与各软件的版本可能会不同;各开发商加入的应用工具不同,使用的套件管理模式不同(dpkg 与 RPM)

Unix 是谁写出来的?GNU 计划是谁发起的?

Unix 是 Ken

Thompson 写的,1973年再由 Dennis Ritchie 以 C 语言改写成功。至于 GNU 与 FSF 则是 Richard Stallman 发起的。

GNU 的全名是什么?它主要由那个基金会支持?

GNU 是 GNU is Not Unix 的简写,是个无穷循环!另外,这个计划是由自由软件基金会(Free Software Foundation, FSF)所支持的!两者都是由 Stallman 先生所发起的!

何谓多用户(Multi-user )多任务(Multitask)?

Multiuser 指的是Linux 允许多人同时连上主机之外,每个使用者皆有其各人的使用环境,并且可以同时使用系统的资源!

Multitask 指的是多任务环境,在 Linux 系统下,CPU 与其他例如网络资源可以同时进行多项工作,Linux 最大的特色之一即在于其多任务时,资源分配较为平均!

简单说明 GNU General Public

License(GPL)与Open Source的精神:

1. GPL的授权之软件,乃为自由软件(Free software),任何人皆可拥有它;2. 开发GPL的团体(或商业企业)可以经由该软件的服务来取得服务的费用;3. 经过GPL授权的软件,其属于Open source的情况,所以应该公布其源代码;4. 任何人皆可修改经由 GPL 授权过的软件,使符合自己的需求;5. 经过修改过后 Open source 应该回馈给 Linux 社群。

什么是 POSIX ?为何说 Linux 使用 POSIX 对于发展有很好的影响?

POSIX 是一种标准规范,主要针对在Unix操作系统上面跑的程序来进行规范。若你的操作系统符合 POSIX ,则符合 POSIX 的程序就可以在你的操作系统上面运行。Linux由于支持 POSIX ,因此很多 Unix 上的程序可以直接在 Linux 上运行,因此程序的移植相当简单!也让大家容易转换平台,提升 Linux 的使用率。

简单说明 Linux 成功的因素?

1,藉由Minix操作系统开发的Unix Like,没有版权的纠纷;2,借助于GNU计划所提供的各项工具软件,gcc/bash等;3,藉由Internet广为流传;4,藉由支持POSIX标准,让核心能够适合所有软件的开发;5,托瓦兹强调务实,虚拟团队的自然形成!

1.7 参考资料与延伸阅读

注1:Multics计划网站:http://www.multicians.org/。

注2:Ken Thompson的wiki简介:http://en.wikipedia.org/wiki/Ken_Thompson

注3:Dennis Ritchie的 wiki 简介:http://en.wikipedia.org/wiki/Dennis_Ritchie

注4:Bill joy的 wiki 简介:http://en.wikipedia.org/wiki/Bill_Joy

注5:Andrew Tanenbaum的 wiki 简介:http://en.wikipedia.org/wiki/Andrew_S._Tanenbaum

注6:Richard Stallman的个人网站:http://www.stallman.org/

注7:GNU 计划的官网:http://www.gnu.org/

注8:开放源代码促进会针对 open source 的解释:http://opensource.org/definition

以及 Open source 与 free software 的差异:http://opensource.org/faq#free-software

注9:开放源代码促进会针对 Open source 授权的汇整介绍:http://opensource.org/licenses

注10:Linus Torvalds在 Wiki 的介绍:http://en.wikipedia.org/wiki/Linus_Torvalds

注11:Cluster Computer在 Wiki 的介绍:http://en.wikipedia.org/wiki/Computer_cluster

注12:Android在 Wiki 的介绍:http://zh.wikipedia.org/wiki/Android

洪朝贵老师的GNU/FSF介绍:http://people.ofset.org/~ckhung/a/c_83.php

葛林穆迪着,杜默译,《Linux传奇》,时报文化出版企业。

书本介绍:http://findbook.tw/book/9789571333632/basic

XFree86的网站:http://www.xfree86.org/

POSIX的相关说明:

维基百科:http://en.wikipedia.org/wiki/POSIX

IEEE

POSIX标准:http://standards.ieee.org/regauth/posix/

你可能感兴趣的:(鸟哥的Linux私房菜2018简体化 第一章(3)、Linux是什么与如何学习)