Linux系统详解第一篇:Linux简介
导语:
注意:本文章取材广泛,有来自于互联网的,有来自教科书的,有来自自己的笔记的,经过长时间的整理并多次修改后发布。本文章的目的是为了让刚入门Linux的读者对Linux的发展历史和发行版本有个很好的了解。如果发现本文章有什么疏漏的地方前指出,让我们共同努力,共同学习,共同进步!
正文:
背景
从1946年世界上第一台电子计算机诞生开始,计算机的发展已经走过了65个春秋。科学技术的日新月异,为我们开启了无比辉煌的电子时代,在这个高速发展的电子时代中,诞生了无数的电子产品,从硬件到软件。硬件电子技术的发展奠定了软件的基础,而软件的开发又促进了硬件的发展。在软件的发展历史中,操作系统起着至关重要的作用,他本身是软件,但它同时又是其他软件的基础,硬件的灵魂,硬件脱离了系统就像人没有了思想。可见,系统在这个高速发展的电子时代是举足轻重的。那么让我们来回顾一下操作系统的发展历史吧!
上世纪六十年代时,大部份计算机都是采用批处理(Batch Processing)的方式进行工作的,也就是说,当作业积累一定数量的时候,计算机才会进行处理。那时,我们熟知的美国电话及电报公司(American Telephone and Telegraph Inc.;AT&T)、通用电器公司(General Electrics;G.E.)及麻省理工学院(Massachusetts Institute of Technology;MIT)计划合作开发一个多用途(General-Purpose)、分时(Time-Sharing)及多用户(Multi-User)的操作系统,也就是这个MULTICS,其被设计运行在GE-645大型主机上。不过,这个项目由于太过复杂,整个目标过于庞大,糅合了太多的特性,进展太慢,几年下来都没有任何成果,而且性能都很低。于是到了1969年2月,贝尔实验室(Bell Labs)决定退出这个项目。
贝尔实验室中有个叫Ken Thompson的人,他为MULTICS这个操作系统写了个叫“Space Travel”的游戏,在MULTICS上经过实际运行后,他发现游戏速度很慢而且耗费昂贵,每次运行会花费75美元。退出这个项目以后。他为了让这个游戏能玩,所以他找来Dennis Ritchie,让他为这个游戏开发一个比MULTICS简单的操作系统。当时他们本想在DEC-10上写这个系统,可是后来没有申请到,他们只好在实验室的墙角边找了一台被人遗弃的Digital PDP-7的迷你计算机进行他们的系统开发计划。可是遗憾的是,这台计算机上连操作系统也没有。于是他们用汇编语言仅一个月的时间就开发了一个操作系统的原型。可是,他们的同事Brian Kernighan非常不喜欢这个系统,并嘲笑Ken Thompson说:“你写的系统好真差劲,干脆叫Unics算了。”Unics的名字就是相对于MULTICS的一种戏称。
1971年,Ken Thompson写了一篇很长的的申请报告,终于申请到了一台PDP-11/24的机器。在这台台PDP-11/24的机器上他们完成了Unix的第一个版本。这台电脑只有24KB的物理内存和500K磁盘空间。Unix占用了12KB的内存,剩下的一半内存可以支持两用户进行Space Travel的游戏。而著名的fork()系统调用也就是在这时出现的。 到了1973年的时候,Ken Thompson 与Dennis Ritchie感到用汇编语言做移植MULTICS系统的工作太过于头痛,他们想用高级语言来完成第三版,对于当时完全以汇编语言来开发程序的年代,他们的想法算是相当的疯狂。一开始他们想尝试用Fortran,可是失败了。后来他们用一个叫BCPL(Basic Combined Programming Language)的语言开发,他们整合了BCPL形成B语言,后来Dennis Ritchie觉得B语言还是不能满足要求,于是就改良了B语言,这就是今天的大名鼎鼎的C语言。于是,Ken Thompson 与Dennis Ritchie成功地用C语言重写了Unix的第三版内核。至此,Unix这个操作系统修改、移植相当便利,为Unix日后的普及打下了坚实的基础。而Unix和C完美地结合成为一个统一体,C与Unix很快成为世界的主导。 Unix的第一篇文章 “The UNIX Time Sharing System”由Ken Thompson和Dennis Ritchie于1974年7月的 the Communications of the ACM发表。这是UNIX与外界的首次接触。结果引起了学术界的广泛兴趣并对其源码索取,所以,Unix第五版就以“仅用于教育目的”的协议,提供给各大学作为教学之用,成为当时操作系统课程中的范例教材。各大学公司开始通过Unix源码对Unix进行了各种各样的改进和扩展。于是,Unix开始广泛流行起来。
总结一下,到此阶段,为了开发一个能运行Space Travel游戏的操作系统,Ken Thompson 与Dennis Ritchie开发了B语言,改进了B语言又开发了C语言,最终才用C语言成功开发了UNIX
Unix发展流程图
1978年,对 Unix而言是革命性的一年。 Bill Joy,毕业于加利福尼亚州大学伯克利Berkeley分校,当年,他在学校的时候拷贝了Bell 实验室的Unix版本,并且发现了这是一个很不错的可以使用Pascal编译器和文本编译器的操作系统平台。 于是,他更改变扩展了Unix,形成了Unix的第二个最主要的分枝BSD(Berkeley Software Distribution)Unix。在1978年3月,Joy卖出了第一个BSD的拷贝:50美金。 慢慢地,开始形成两个最主要的Unix的分支版本,一个是上面所说的BerkeleyBSD 系列。另一个是下面要讲的AT&T的System系列。
AT&T公司开始注意到Unix所带来的商业价值后,公司的律师开始寻找一些手段来保护Unix,并让其成为一种商业机秘。从1979年Unix的版本V7开始,Unix的许可证开始禁止大学使用Unix的源码,包括在授课中学习。AT&T成立USG(Unix Support Group),将 Unix变成商业化的产品。
从此,BSD的 Unix 便和AT&T 的Unix 分庭抗礼,Unix就分为System IV和4.x BSD这两大主流,各自蓬勃发展。1979年发布的Unix 第七版被称为是最后一个真正的Unix,这个版本的Unix内核只有40K bytes。后来这个版本被移植到VAX机上。20世纪80年代相继发布的8、9、10版本只授权给了少数大学。1982年,AT&T基于版本7开发了UNIX System Ⅲ的第一个版本,这是一个商业版本仅供出售。为了解决混乱的UNIX版本情况,AT&T综合了其他大学和公司开发的各种UNIX,开发了UNIX System V Release 1。这个新的UNIX商业发布版本不再包含源代码,不再开源。所以加州大学Berkeley分校继续开发BSD UNIX,作为UNIX System III和V的替代选择。BSD对UNIX最重要的贡献之一是TCP/IP。BSD 有8个主要的发行版中包含了TCP/IP:4.1c、4.2、4.3、4.3-Tahoe、4.3-Reno、Net2、4.4以及 4.4-lite。这些发布版中的TCP/IP代码几乎是现在所有系统中TCP/IP实现的前辈,包括AT&T System V UNIX 和Microsoft Windows中的TCP/IP都参照了BSD的源码。
Berkeley Software Design,Inc(BSDI)很快就与AT&T的UNIX Systems Laboratories(USL)附属公司产生了法律纠纷,USL是AT&T注册的公司。AT&T为了拥有System V版权,以及Unix商标,为了垄断Unix,1992年,USL正式对BSDI提起诉讼,说BSD剽窃他的源码。而最终了结了好评如潮的BSD系统。这场官司一直打到 AT&T将自己的Unix系统实验室卖掉,新接手的Novell公司采取了一种比较开明的做法,允许BSDI自由发布自己的BSD,但是前提是必须将来自于AT&T的代码完全删除,于是诞生了4.4 BSD Lite版,由于这个版本不存在法律问题,4.4BSD Lite成为了现代BSD系统的基础版本。这桩诉讼最终在1994年1月了结,更多地满足了BSDI的利益。伯克利套件的18,000个文件中,只有3个文件要求删除,另有70个文件要求修改,并显示USL的版权说明。这项调解另外要求,USL不得对4.4BSD提起诉讼,不管是用户还是BSDI代码的分发者。于是,BSD Unix走上了复兴的道路。BSD的开发也走向了几个不同的方向,并最终导致了FreeBSD、OpenBSD和NetBSD的出现。
从AT&T意识到了Unix的商业价值,不再将Unix源码授权给学术机构,到以后的几十年,Unix仍在不断变化,其版权所有者不断变更,授权者的数量也在增加。Unix的版权曾经为AT&T所有,之后Novell拥有了Unix,再之后Novell又将版权出售给了SCO。有很多大公司在取得了Unix的授权之后,开发了自己的Unix产品。由于Unix是由C语言写的,所以修改和移植都很容易,因此,很多商业公司及学术机构均加入这个操作系统的研发,各个不同版本的Unix也开始蓬勃发展。这才产生了今天这么多的各式各样的Unix衍生产品。如AIX、Solaris、HP-UX、IRIX、OSF、Ultrix等。这些商业化的Unix基本上都是源于AT&T授权的Unix System V。
由于在1987年,阿姆斯特朗大学使用版本V6的计算机科学系的教授Andrew Tanenbaum为了方便学生更好的了解操作系统的工作原理,他为教学目的克隆了一个Unix,并对其进行修改,创建一个叫Minix的开源的操作系统,并可以在80286的Intel芯片上运行。Minix从此变成了另一个起点,Linus Torvalids 在1991年使用Minix的基础上开发了大约一万行的代码,将其发布到comps.os.minix论坛上供大家下载,后来在众多网友的支持开发下,终于在1994年3月14日发布了Linux1.0版本。1999年发布了Linux中文版。
纵观操作系统的发展历史,操作系统发展到现在,当今的操作系统已经多种多样,有操作系统的鼻祖Unix,Unix的变体Linux,用户众多的微软Windows,还有华丽的苹果MAC OS等。而在众多的系统中,Linux是系统家族的一个明星。Linux是一个诞生于网络、成长于网络且成熟于网络的的操作系统。1991年,芬兰赫尔辛基的大学生Linus Torvalds萌发了开发一个自由的UNIX操作系统的想法,于是他开始了他编写自由系统的道路,经过他的努力,Unix的变体终于成型。为了不让这个羽毛未丰的操作系统失折,Linus将自已的作品命名为Linux,并通过Internet发布。他把代码上传到社区让网友们自由下载、修改和上传。从此一大批知名的、不知名的电脑爱好者、编程人员加入到开发过程中来,Linux逐渐成长起来。
再后来网友们建议linus给该系统一个代表性的图标。他想了想,就用企鹅作为他作品的图标,之所有用企鹅是因为他小时候有一次去公园看企鹅,结果被企鹅咬了一口,给他留下了深刻的印象。
Linux一开始是要求所有的源码必须公开,并且任何人均不得从Linux交易中获利。然而这种纯粹的自由软件的理想对于Linux的普及和发展是不利的,于是Linux开始转向GPL,成为GNU阵营中的主要一员。 现在,Linux凭借优秀的设计,不凡的性能,加上IBM、INTEL、CA、CORE、ORACLE等国际知名企业的大力支持,市场份额逐步扩大,经过20年的发展,Linux已经成为了当今最为流行的操作系统之一。
Linux的含义
严格的来讲,Linux不算是一个操作系统,只是一个Linux系统中的内核,即计算机软件与硬件通讯之间的平台;Linux的全称是GNU/Linux,这才算是一个真正意义上的Linux系统。GNU是Richard Stallman组织的一个项目,世界各地的程序员可以变形GNU程序,同时遵循GPL协议,允许任何人任意改动。但是,修改后的程序必须遵循GPL协议。
Linux的特点
Linux之所以流行,是因为它拥有如下几方面的特点:
开放性
开放性是指系统遵循世界标准和规范,特别是遵循开发系统互联(OSI)国际标准。凡是,遵循国际标准开发的硬件和软件,都彼此兼容,可以方便的实现互联。
稳定性
Linux的稳定性是众所周知的,由于他没有太多的UI界面,所以他相对其他操作系统较稳定。
多用户
多用户是指系统资源可以被不同用户各自拥有使用,即每个用户对自己的资源,
多任务文件系统,系统设备等。有特定的使用权。而彼此之间却不相互影响。Linux和Unix都具有多用户的特定。
设备独立性
是指操作系统把所有外部设备统一当成文件来看待,只要安装它们的驱动程序,任何用户都可以像使用文件一样,操纵、使用这些设备,而不必知道他们的具体存在形式。
具有设备独立性的操作系统,通过把每一个外围设备看做一个独立的文件来简化增加新设备的工作。当需要向系统添加新设备时,系统管理员就在内核中增加必要的连接。这种连接(也称做设备驱动程序)保证每次调用设备提供服务时,内核都可以使用相同的方式来处理他们。当新的及更好的外设被开发并交付给用户,这些设备都连接到内核后,用户就能够不受限制的立即使用它们。设备独立性的关键在于内核的适应能力。其他的操作系统只允许一定数量或者一定种类的外部设备连接。而设备独立性的系统,能够容纳任意种类及任意数量的设备,因为每一个设备都是通过其与内核的专用连接独立进行访问的。
丰富的网络功能
完善的内置网络是Linux的一大特点。Linux在通信和网络功能方面优越于其他操作系统。其他操作系统不包含如此紧密地和内核结合在一起的连接网络的能力,也没有内置这些联网特性的灵活性。而Linux为用户提供了完善的、强大的网络功能。
可靠的系统安全性
Linux采用了许多安全技术措施,包括对读/写进行权限控制、带保护的子系统、审计跟踪、核心授权等,这为网络多用户环境中的用户提供了安全性。
良好的可移植性
可移植性是指系统从一个平台移植到另一个平台它仍能按其自身的方式运行的能力。Linux是一种可移植的系统,它能够从微型计算机到大型计算机的任何环境中和任何平台上运行。可移植性为运行Linux的不同计算机平台与其他任何机器进行准确而又有效的通信提供了手段,不需要增加任何特殊的和昂贵的通信接口。
支持多种文件系统
Linux能够支持多种文件系统。目前支持的文件系统有EXT2、EXT3、ISOFS、MSDOS、UMSDOS、NFS、SYSV、Minix、SMB、UFS、NCP、VFAT、NTFS、AFFS等数十种。Linux最常用的文件系统是EXT3。
Linux的发行版本
发行版为许多不同的目的而制作, 包括对不同计算机结构的支持, 对一个具体区域或语言的本地化,实时应用,和嵌入式系统,甚至许多版本故意地只加入免费软件。基本上可以分为两大类:一类是由商业提供商提供的,在一定的时间内提供技术支持,该类版本的提供商有Red Hat和SUSE等;另一类是由具有共同的技术爱好者社区提供支持的,如BSD、Slackware、Debian、Fedora、Ubuntu等。以下是发行版本中较为流行的几种:
FreeBSD
需要强调的是:FreeBSD并不是一个Linux系统!但FreeBSD与Linux的用户群有相当一部分是重合的,二者支持的硬件环境也比较一致,所采用的软件也比较类似,所以可以将FreeBSD视为一个Linux版本来比较。FreeBSD拥有两个分支:stable和current。顾名思义,stable是稳定版,而 current则是添加了新技术的测试版。FreeBSD采用Ports包管理系统,与Gentoo类似,基于源代码分发,必须在本地机器编后后才能运行,但是Ports系统没有Portage系统使用简便,使用起来稍微复杂一些。FreeBSD的最大特点就是稳定和高效,是作为服务器操作系统的最佳选择,但对硬件的支持没有Linux完备,所以并不适合作为桌面系统。
Slackware
Slackware是目前所有linux发行版本时间最久的一个版本,始于1993年的Partick Volkerding。它很具有Unix/BSD的风格,它只吸收经过测试且稳定的软件版本,所以稳定性是所有版本的很强的一个。此外,由于缺少其他发行版本的配置工具和系统外壳,它要求用户必须掌握命令行的操作、编辑文本配置文件。所以对于一般接触linux不久的用户上手较难,但是一旦你熟悉了命令行就会让你用起来十分快速。该系统的优点是系统对硬件要求很低,而且运行速度很快;其缺点是支持的软件较少,要熟悉掌握它需要较长的时间摸索。
Debian
Debian系列,包括Debian和Ubuntu等。Debian最早由Ian Murdock于1993年创建,Debian是社区类Linux的典范,是迄今为止最遵循GNU规范的Linux系统,它拥有很多的支持者,社区发展也非常稳定,软件的安装,升级非常方便,Bug补丁发布非常及时。分为三个版本分支:stable, testing 和 unstable。其中,unstable(不稳定)为最新的测试版本,其中包括最新的软件包,但是也有相对较多的bug,适合桌面用户。Testing(测试中)的版本都经过unstable中的测试,相对较为稳定,也支持了不少新技术(比如SMP等)。而stable(稳定)一般只用于服务器,上面的软件包大部分都比较过时,但是稳定和安全性都非常的高。Debian最具特色的是apt-get / dpkg包管理方式,其实Redhat的YUM也是在模仿Debian的APT方式,在二进制文件发行方式中,APT应该是最好的了。
SUSE
SUSE 原是以Slackware Linux为基础,并提供完整德文使用界面的产品。1992年 Peter McDonald成立了Softlanding Linux System(SLS)这个发行版。这套发行版包含的软件非常多,更首次收录了X Window及TCP/IP等套件。Slackware就是一个基于SLS的发行版。原来的名字叫"S.u.S.E."后来改称/简短为"SuSE",意思为"Software- und System-Entwicklung",那是一句德文,英文为"Software and system development"。现在这家公司的名字再度更改成SUSE Linux,"SUSE"一字已经不包含甚么意义了。
2003年11月4日,Novell表示将会对SUSE提出收购。收购的工作于2004年1月完成。Novell也向大家保证SUSE的开发工作仍会继续下去,Novell更把公司内全线电脑的系统换成SUSE LINUX,并同时表示将会把SUSE特有而优秀的系统管理程序 - YaST2以GPL授权释出。
2005年8月4日,Novell公共关系科的领导及代言人 - Bruce Lowry表示,SUSE Linux Professional系列的开发将变得更开放以及让社群参与当中的工作。新的开发计划名为openSUSE,目的是为了吸引更多的使用者及开发人员。相比以往,现在所有的开发人员及使用者能够测试SUSE的产品并一起开发新版本的SUSE。在以往,SUSE的开发工作都是于内部进行的。SUSE 10.0是第一个给予公众测试的版本。为了配合这个转变,用户除了能够购买盒装版本的SUSE外,也可以从网络上免费下载。一系列的改变让于2005年10月6日推出的SUSE Linux有三个版本 - "OSS版" (完全地开放原始码)、"试用版"(同时包含开放原始码的程序及专属程序如Adobe Reader、Real Player等,其实就是盒装零售版,也可以免费下载,可以安装在硬盘上,并且没有使用限制或限期,但不含说明手册及Novell提供的技术支援)及盒装零售版。2010年,Attachmate收购Novell。SUSE成为Attachmate的产品。
需要注意的是,Novell Linux Desktop 系列的新产品以后改称 SUSE Linux Enterprise Desktop。他是德国最著名的Linux发行版,在全世界也享有较高的声誉,号称是世界上最华丽的操作系统。它一直致力于创建一个连接数据库的最佳Linux版本。为了实现这一目的,SuSE与Oracle 和IBM合作,以使他们的产品能稳定地工作。他自主开发的软件包管理系统YaST也得到了大家的好评,SuSE还开发了SuSE Linux eMail Server III,是一个非常稳定的电子邮件群组应用。另外,SuSE的硬件检测也非常优秀,该版本在服务器和工作站上都用得很好。在安装方面,SuSE拥有界面友好的安装过程,还有图形管理工具,可方便地访问Windows磁盘,对于终端用户和管理员来说使用它同样方便,这使它成为了一个强大的服务器平台。在桌面方面,SUSE支持kde和gnome,xface等桌面,桌面特效比较丰富,新手用这个也很容易上手,缺点是KDE虽然华丽多彩,但比较不稳定。
Red Hat
1991年,Linus的Linux内核发布,同年加拿,多伦多大学毕业的Bob Yong在纽约把UNIX用户组引入系统管理自由软件。加强了Linux用户的管理功能。1993年,Bob Yang 创立了ACC公司,主要营销Linux和UNIX的支持软件和书籍杂志。 1994年,美国卡内基梅隆大学毕业的Marc Ewing建立了自己的Linux分销业务,并发布了Red Hat Linux 1.0。 1995年,AAC公司的Bob Yang 收购了Marc Ewing的业务,合并后的ACC公司成为新的Red Hat软件公司,并发布了Red Hat Linux 2.0。 1997年12月,Red Hat Linux 5.0发布,它支持Intel、alpha和Sparc平台和大多数的应用软件。极其简单易用的RPM模块化的安装、配置和卸载工具,使程序的安装可在15分钟内完成。软件升级也很方便,这对刚开始使用Linux的用户来说是非常好的消息。
2003年4月,Red Hat Linux 9.0发布。重点放在改善桌面应用方面,包括改进安装过程、更好的字体浏览、更好的打印服务等。2004年4月30日,Red Hat公司正式停止对Red Hat 9.0版本的支持,标志著Red Hat Linux的正式完结。原本的桌面版Red Hat Linux发行包则与来自社区的Fedora计划合并,成为Fedora Core发行版本。Red Hat公司宣布不再开发桌面版的Linux发行包,而将全部力量集中在服务器版的开发上,也就是Red Hat Enterprise Linux版。
Redhat系列,包括RHEL、Fedora Core(由原来的Redhat桌面版本发展而来,免费版本)、CentOS(RHEL的社区克隆免费版本)。发展到RHEL5时分成了两个版本,Server和Desktop。
Server版本又分为:
Red Hat Enterprise Linux Advanced Platform对应以前的 Red Hat Enterprise Linux AS
Red Hat Enterprise Linux对应以前的Red Hat Enterprise Linux AS
Desktop版本分为:
Red Hat Enterprise Linux Desktop对应以前的Red Hat Desktop
Red Hat Enterprise Linux Desktop with Workstation option 对应以前的Red Hat Enterprise Linux WS
Fedora
Fedora(原名 Fedora Core 自第七版更名为Fedora)是众多 Linux 发行套件之一。是一个开放的、创新的、前瞻性的操作系统和平台,基于 Linux。它允许任何人自由地使用、修改和重发布,无论现在还是将来。Fedora的前身是Red Hat Linux。2003年9月 ,红帽公司 (Red Hat) 突然宣布不再推出个人使用的发行套件Red Hat Linux而专心发展商业版本(Red Hat Enterprise Linux),但红帽公司也同时宣布将原有的 Red Hat Linux 开发计划和 Fedora 计划整合成一个新的 Fedora Project。Fedora Project 将会由红帽公司赞助,以 Red Hat Linux 9 为范本加以改进,原本的开发团队将继续参与 Fedora 开发计划,同时也鼓励开放原始码社群参与开发工作。 Fedora被红帽公司定位为新技术的实验场,与 Red Hat Enterprise Linux 被定位为稳定性优先不同,许多新的技术都会在 Fedora Core 中检验,如果稳定的话红帽公司则会考虑加入 Red Hat Enterprise Linux 中。Fedora 预计每年发行 2~3 次的发行版本。以下是从Fedora Core 1到Fedora 16的版本列表:
版本 | 名称 | 日期 | 状态 | 内核版本 | Xorg | GNOME | KDE |
Fedora 16 | Verne | 2011年11月8日 | 已发行 | 3.1.0 | 1.11 | 3.2 | 4.7 |
Fedora 15 | Lovelock | 2011年05月24日 | 已发行 | 2.6.38 | 1.10.1 | 3.0 | 4.6 |
Fedora 14 | Laughlin | 2010年11月2日 | 已发行 | 2.6.35 | 1.9.1 | 2.32 | 4.5.2 |
Fedora 13 | Goddard | 2010年5月25日 | 已发行 | 2.6.33 | 1.8.0 | 2.30 | 4.4.2 |
Fedora 12 | Constantine | 2009年11月17日 | 停止支持 | 2.6.31 | 1.7.1 | 2.28.0 | 4.3.2 |
Fedora 11 | Leonidas | 2009年6月9日 | 停止支持 | 2.6.29.4 | 1.6 | 2.26.1 | 4.2.2 |
Fedora 10 | Cambridge | 2008年11月25日 | 停止支持 | 2.6.27 | 1.5.2 | 2.24.1 | 4.1.2 |
Fedora 9 | Sulphur | 2008年5月13日 | 停止支持 | 2.6.25 | 1.4.99 | 2.22.1 | 4.0.3 |
Fedora 8 | Werewolf | 2007年11月8日 | 停止支持 | 2.6.23.1 | 1.3.0 | 2.20.1 | 3.5.8 |
Fedora 7 | Moonshine | 2007年5月31日 | 停止支持 | 2.6.21 | 1.3.0 | 2.18.0 | 3.5.6 |
Fedora Core 6 | Zod | 2006年10月24日 | 停止支持 | 2.6.18 | 1.1.1 | 2.16.0 | 3.5.4 |
Fedora Core 5 | Bordeaux | 2006年3月20日 | 停止支持 | 2.6.15 | 1.0.1 | 2.14.0 | 3.5.1 |
Fedora Core 4 | Stentz | 2005年6月13日 | 停止支持 | 2.6.11 | 6.8.2 | 2.10.0 | 3.4.0 |
Fedora Core 3 | Heidelberg | 2004年11月8日 | 停止支持 | 2.6.9 | 6.8.1 | 2.8.1 | 3.3.0 |
Fedora Core 2 | Tettnang | 2004年5月18日 | 停止支持 | 2.6.5 | 6.7.0 | 2.6.0 | 3.2.2 |
Fedora Core 1 | Yarrow | 2003年11月6日 | 停止支持 | 2.4.19 | 4.3.0 (XFree86) | 2.4.0 | 3.1.4 |
Ubuntu
是现在最流行的Linux桌面系统。它简单方便,有KDE和GNOME等视窗界面可供选择,拥有强大的apt-get软件管理程序,安装个管理软件很方便。Ubuntu严格来说不能算一个独立的发行版本,Ubuntu是基于Debian的unstable版本加强而来,可以这么说,Ubuntu就是一个拥有Debian所有的优点,以及自己所加强的优点的近乎完美的 Linux桌面系统。根据选择的桌面系统不同,有三个版本可供选择,基于Gnome的Ubuntu,基于KDE的Kubuntu以及基于Xfc的Xubuntu。特点是界面非常友好,容易上手,对硬件的支持非常全面,是最适合做桌面系统的Linux发行版本。
Gentoo
Gentoo是Linux世界最年轻的发行版本,正因为年轻,所以能吸取在她之前的所有发行版本的优点,这也是Gentoo被称为最完美的Linux发行版本的原因之一。Gentoo最初由Daniel Robbins(FreeBSD的开发者之一)创建,首个稳定版本发布于2002年。由于开发者对FreeBSD的熟识,所以Gentoo拥有媲美FreeBSD的广受美誉的ports系统 ——Portage包管理系统。不同于APT和YUM等二进制文件分发的包管理系统,Portage是基于源代码分发的,必须编译后才能运行,对于大型软件而言比较慢,不过正因为所有软件都是在本地机器编译的,在经过各种定制的编译参数优化后,能将机器的硬件性能发挥到极致。Gentoo是所有Linux发行版本里安装最复杂的,但是又是安装完成后最便于管理的版本,也是在相同硬件环境下运行最快的版本。
版本选择的建议
Linux的版本之多可能让很多刚接触Linux的人有点不知所措,下面我给大家一些建议,提供参考:
服务器版的选择:
如果您是一个狂爱技术的技术爱好者喜欢研究系统的原理或者定制系统等,建议你可以选择BSD(严格讲,不属于Linux,它是基于Unix的)。
如果你需要的是一个的非常稳定的服务器系统来提供稳定的服务,并且不怕花时间来配置服务器,那么你同样可以选择用FreeBSD又或者Slackware
如果您在为你的企业选择一款稳定的、安全的、希望提供技术支持的而且资金没有问题的话,建议你选择付费的RHEL和企业版的SUSE。
如果您的企业不是非常大,想考虑投入生产环境使用的而且又想运行较稳定且安全的服务器系统,但是又不想发大量的资金购买收费的版本,建议您选择CentOS、Debian或者服务器版的Ubuntu。
个人版本的选择:
如果你只是需要一个桌面系统,又不想花大量的钱购买商业软件,那么你就需要一款适合桌面使用的Linux发行版本了,如果你不想自己定制任何东西只是想选择一个像Windows那样易用美观的,不想在系统上浪费太多的时间,那么很简单,你就根据自己的爱好可以在ubuntu、kubuntu、xubuntu等Ubuntu系列中选择一款,三者的区别仅仅是桌面程序的不一样而已。也可以选择基于Ubuntu的Linux Mint,它和windows有着非常类似的风格,且对各地区的语言本地化支持较好。
如果您希望得到最新的开源软件或者进行新软件的测试并且不怕系统稳定性的问题,建议您可以考虑Fedora。它是一个更新快,且包含很多最新的开源软件的linux发布版,因为它充当于RHEL的实验版。
如果你需要一个桌面系统,而且还想非常灵活的定制自己的Linux系统,想让自己的机器跑得更快,也不怕在Linux系统安装方面浪费一点时间,那么你可以选择Gentoo。
总之,没有最好的,只有更好的。在Linux发行版的选择上也如此,你必须明确你的目标是什么再进行选择,选择符合你的才是对的。
Linux的发展前景
Linux以其开发、安全、免费强大的网络功能等特定,已经在各个领域,特别是服务器应用领域得到广泛的应用和发展,同时,Linux在嵌入式和中间件方面也表现出十分优秀的可移植性,利用Linux系统来进行软件开发已经成为了一种趋势,Linux的发展前景十分可观!
Linux、GNU及GPL/LGPL之间的关系
在20 世纪70 年代,UNIX 体系的源程序大多是可以任意流传的。在当时,人们在创作各自的“程序”作品时,都从中享受着从事科学探索、创新活动所特有的那种激情和成就感。那时的程序员,就像艺术家一样,急于“发表”自己的“程序”作品,而不像现在的商业软件模式一样,开发软件,并以许可的方式进行销售以换取高额利润。
1979 年,AT&T宣布了UNIX 的商业化计划,随之出现了各种二进制的商业UNIX 版本。于是就兴起了基于二进制机读代码的“版权产业”(Copyright Industry),使软件业成为一种版权专有式的产业,围绕程序开发的那种创新活动被局限在某些骨干企业的小圈子里,源码程序视为核心“商业机密”。这种做法,一方面产生了大批的商业软件,极大地推动了软件业的发展,诞生了一批软件巨人;另一方面,由于封闭式的开发模式,也阻碍了软件业的进一步深化和提高。由此,人们为商业软件的“专有权”付出了巨大的代价。于是,人们在探索能否有一种方法,让软件的开发像20 世纪70 年代那样。
理查德.斯托曼在1983年9月27日公开发起了GNU计划,意在创建一个自由的、和UNIX类似的操作环境。从那时开始,许多程序员聚集起来开始开发一个自由的、高质量、易理解的软件。理查德·斯托曼最早是在net.unix-wizards新闻组上公布了该消息,并附带一份《GNU宣言》等解释为何发起该计划的文章,其中一个理由就是要像20 世纪70 年代那样重现当年软件界合作互助的团结精神。
GNU是“GNU's Not Unix”的递归缩写,为避免与gnu(非洲牛羚)这个单词混淆,斯托曼宣布GNU应当发音为“Guh-NOO”,该发音与“canoe”的发音相似。
为保证GNU软件可以自由地“使用、复制、修改和发布”,所有GNU软件都包含一份在禁止其他人添加任何限制的情况下,授权所有权利给任何人的协议条款-GNU通用公共许可证(GNU General Public License,GPL)。这个也就是被称为“公共版权”的概念。GPL目前主要有以下三个版本。
(1)GPLv1。GPL版本1,即最初的版本,发布于1989 年1 月,其目的是防止那些阻碍自由软件的行为,而这些阻碍软件开源的行为主要有两种(一种是软件发布者只发布可执行的二进制代码而不发布具有的源代码,一种是软件发布者在软件许可加入限制性条款)。因此按照GPLv1,如果发布了可执行的二进制代码,就必须同时发布可读的源代码,并且在发布任何基于GPL许可的软件时,不能添加任何限制性的条款。
(2)GPLv2。理查德·斯托曼在GPLv2 中所做的最大的改动就是增加了“自由还是死亡”这章条款,即第七章liberty-or-death Presentation。这章中声明道,如果哪个人在发布基于GPL的软件的时候,同时添加强制的条款,以在一定程度上保障和尊重其他一些人的自由和权益,那么他将根本无权发布该软件。到了1990 年,人们普遍认为一个限制性弱的许可证对于自由软件的发展是有战略意义上的好处的,因此当GPL 的第2 个版本(GPLv2)在1991年6月发布时,与此同时第2个许可证程序库GNU通用公共许可证(LGPL,the Library GeneralPublic License)也被发布出来,并且一开始就将其版本定为第2版本以表示其和GPLv2 的互补性。这个版本一直延续到1999 年,并分支出一个派生的LGPL版本号为2.1,并将其重命名为轻量级通用公共许可证,又称宽通用公共许可证(Lesser General Public License),以反映其在整个GNU哲学中的位置。
(3)GPLv3。2005 年,GPL版本3 正是由斯托曼起草的,由伊本·莫格林和软件自由法律中心(Software Freedom Law Center)提供法律咨询,2007 年3月28 日正式启用。斯托曼在2006 年2月25 日自由及开源软件开发者欧洲会议的演讲上说在GPL所有的改动中,最重要的包括以下四点。
1. 解决软件专利问题。
2. 与其他许可证的兼容性。
3. 源代码分割和组成的定义。
4. 解决数字版权管理问题。
到了1990年,GNU计划已经开发出的软件包括了一个功能强大的文字编辑器Emacs、C语言编译器GCC以及大部分UNIX系统的程序库和工具。唯一依然没有完成的重要组件,就是操作系统的内核(称为HURD)。 1991年,林纳斯·托瓦兹编写出了与UNIX兼容的Linux操作系统内核并在GPL条款下发布。Linux之后在网上广泛流传,许多程序员参与了开发与修改。 1992年,Linux与其他GNU软件结合,完全自由的操作系统正式诞生。该操作系统往往被称为“GNU/Linux”或简称Linux。
注意:本文字取材广泛,有来自于互联网的,有来自教科书的,有来自自己的笔记的,经过长时间的整理并多次修改后发布。本文章的目的是为了让刚入门Linux的读者对Linux的发展历史和发行版本有个很好的了解。如果发现本文章有什么疏漏的地方前指出,让我们共同努力,共同学习,共同进步!