1.1 UNIX与Linux发展历史
1.1.1 UNIX发展历史和发行版本
UNIX发展历史
UNIX操作系统(尤尼斯),是一个强大的多用户、多任务操作系统,支持多种处理器架构,按照操作系统的分类,属于分时操作系统,最早由KenThompson、Dennis Ritchie和Douglas McIlroy于1969年在AT&T的贝尔实验室开发。目前它的商标权由国际开放标准组织所拥有,只有符合单一UNIX规范的UNIX系统才能使用UNIX这个名称,否则只能称为类UNIX(UNIX-like)。UNIX主要发行版本
操作系统 |
公司 |
硬件平台 |
AIX |
IBM |
PowerPC |
HP-UX |
HP |
PA-RISC |
Solaris |
Sun |
SPARC |
Linux |
Red Hat Linux、Ubuntu Linux …… |
IA(Intel、AMD、Cyrix、RISE……) |
1.1.2 Linux发展历史和发行版本
Linux 发展历史
Linux 操作系统的诞生、发展和成长过程始终依赖着五个重要支柱:UNIX 操作系统、MINIX 操作系统、GNU计划、POSIX 标准和Internet 网络。
1981 年IBM公司推出微型计算机IBM PC。
1991年,GNU计划已经开发出了许多工具软件,最受期盼的GNU C编译器已经出现,GNU的操作系统核心HURD一直处于实验阶段,没有任何可用性,实质上也没能开发出完整的GNU操作系统,但是GNU奠定了Linux用户基础和开发环境。
1991年初,林纳斯·托瓦兹开始在一台386sx兼容微机上学习minix操作系统。1991年4月,林纳斯·托瓦兹开始酝酿并着手编制自己的操作系统。
1991 年4 月13 日在comp.os.minix 上发布说自己已经成功地将bash 移植到了minix 上,而且已经爱不释手、不能离开这个shell 软件了。
1991年7月3日,第一个与Linux有关的消息是在comp.os.minix上发布的(当然此时还不存在Linux这个名称,当时林纳斯·托瓦兹的脑子里想的可能是FREAX,FREAX的英文含义是怪诞的、怪物、异想天开等)。
1991年的10月5日,林纳斯·托瓦兹在comp.os.minix新闻组上发布消息,正式向外宣布Linux内核的诞生(Freeminix-likekernel sourcesfor 386-AT)。
1993年,大约有100余名程序员参与了Linux内核代码编写/修改工作,其中核心组由5人组成,此时Linux 0.99的代码大约有十万行,用户大约有10万左右。
1994年3月,Linux1.0发布,代码量17万行,当时是按照完全自由免费的协议发布,随后正式采用GPL协议。
1995年1月,Bob Young创办了RedHat(小红帽),以GNU/Linux为核心,集成了400多个源代码开放的程序模块,搞出了一种冠以品牌的Linux,即RedHat Linux,称为Linux"发行版",在市场上出售。这在经营模式上是一种创举。
1996年6月,Linux 2.0内核发布,此内核有大约40万行代码,并可以支持多个处理器。此时的Linux 已经进入了实用阶段,全球大约有350万人使用。
1998年2月,以Eric Raymond为首的一批年轻的"老牛羚骨干分子"终于认识到GNU/Linux体系的产业化道路的本质,并非是什么自由哲学,而是市场竞争的驱动,创办了"Open Source Intiative"(开放源代码促进会)"复兴"的大旗,在互联网世界里展开了一场历史性的Linux产业化运动。
2001年1月,Linux 2.4发布,它进一步地提升了SMP系统的扩展性,同时它也集成了很多用于支持桌面系统的特性:USB,PC卡(PCMCIA)的支持,内置的即插即用,等等功能。
2003年12月,Linux 2.6版内核发布,相对于2.4版内核2.6在对系统的支持都有很大的变化。
2004年的第1月,SuSE嫁到了Novell,SCO继续顶着骂名四处强行“化缘”, Asianux, MandrakeSoft也在五年中首次宣布季度赢利。3月,SGI宣布成功实现了Linux操作系统支持256个Itanium 2处理器。
Linux内核版本
Linux内核官网:www.kernel.org
内核版本说明
2.6.18
目前最新的内核版本
目前linux内核4.0版本已经问世!!!
Linux主要发行版本
发行版为许多不同的目的而制作, 包括对不同计算机结构的支持, 对一个具体区域或语言的本地化,实时应用,和嵌入式系统,甚至许多版本故意地只加入免费软件。已经有超过三百个发行版被积极的开发,最普遍被使用的发行版有大约十二个。
[Fedora Core]
Fedora Core(自第七版直接更名为Fedora)是众多 Linux 发行版之一。它是一套从Red Hat Linux发展出来的免费Linux系统。Fedora Core 的前身就是Red HatLinux。Fedora是一个开放的、创新的、前瞻性的操作系统和平台,基于Linux。它允许任何人自由地使用、修改和重发布,无论现在还是将来。它由一个强大的社群开发,这个社群的成员以自己的不懈努力,提供并维护自由、开放源码的软件和开放的标准。Fedora 项目由 Fedora 基金会管理和控制,得到了 Red Hat, Inc. 的支持。Fedora 是一个独立的操作系统,是Linux的一个发行版,可运行的体系结构包括 x86(即i386-i686), x86_64 和 PowerPC。
[Debian]
Debian Project诞生于1993年8月13日,它的目标是提供一个稳定容错的Linux版本。支持Debian的不是某家公司,而是许多在其改进过程中投入了大量时间的开发人员,这种改进吸取了早期Linux的经验。
Debian以其稳定性著称,虽然它的早期版本Slink有一些问题,但是它的现有版本Potato已经相当稳定了。这个版本更多的使用了 pluggable authentication modules (PAM),综合了一些更易于处理的需要认证的软件(如winbind for Samba)。
Debian的安装完全是基于文本的,对于其本身来说这不是一件坏事。但对于初级用户来说却并非这样。因为它仅仅使用fdisk 作为分区工具而没有自动分区功能,所以它的磁盘分区过程令人十分讨厌。磁盘设置完毕后,软件工具包的选择通过一个名为dselect的工具实现,但它不向用户提供安装基本工具组(如开发工具)的简易设置步骤。最后需要使用anXious工具配置X Windows,这个过程与其他版本的X Windows配置过程类似。完成这些配置后,Debian就可以使用了。
Debian主要通过基于Web的论坛和邮件列表来提供技术支持。作为服务器平台,Debian提供一个稳定的环境。为了保证它的稳定性,开发者不会在其中随意添加新技术,而是通过多次测试之后才选定合适的技术加入。当前最新正式版本是Debian 6,采用的内核是Linux2.6.32。Debian 6 第一次包含了一个100%开源的Linux内核,这个内核中不再包含任何闭源的硬件驱动。所有的闭源软件都被隔离成单独的软件包,放到Debian软件源的 "non-free" 部分。由此,Debian用户便可以自由地选择是使用一个完全开源的系统还是添加一些闭源驱动。
[Mandrake]
MandrakeSoft,Linux Mandrake的发行商,在1998年由一个推崇Linux的小组创立,它的目标是尽量让工作变得更简单。最终,Mandrake给人们提供了一个优秀的图形安装界面,它的最新版本还包含了许多Linux软件包。
作为Red Hat Linux的一个分支,Mandrake将自己定位在桌面市场的最佳Linux版本上。但该公司还是支持服务器上的安装,而且成绩并不坏。Mandrake的安装非常简单明了,为初级用户设置了简单的安装选项。它完全使用GUI界面,还为磁盘分区制作了一个适合各类用户的简单GUI界面。软件包的选择非常标准,另外还有对软件组和单个工具包的选项。安装完毕后,用户只需重启系统并登录进入即可。
Mandrake主要通过邮件列表和Mandrak 自己的Web论坛提供技术支持。Mandrak对桌面用户来说是一个非常不错的选择,它还可作为一款优秀的服务器系统,尤其适合Linux新手使用。它使用最新版本的内核,拥有许多用户需要在Linux服务器环境中使用的软件——数据库和Web服务器。
Mandrak没有重大的软件缺陷,只是它更加关注桌面市场,较少关注服务器市场。
[Ubuntu]
Ubuntu是一个以桌面应用为主的Linux操作系统,其名称来自非洲南部祖鲁语或豪萨语的“ubuntu”一词(译为吾帮托或乌班图),意思是“人性”、“我的存在是因为大家的存在”,是非洲传统的一种价值观,类似华人社会的“仁爱”思想。Ubuntu基于Debian发行版和GNOME桌面环境,与Debian的不同在于它每6个月会发布一个新版本。Ubuntu的目标在于为一般用户提供一个最新的、同时又相当稳定的主要由自由软件构建而成的操作系统。Ubuntu具有庞大的社区力量,用户可以方便地从社区获得帮助。随着云计算的流行,ubuntu推出了一个云计算环境搭建的解决方案,可以在其官方网站找到相关信息。于2012年4月26日发布最终版ubuntu 12.04,ubuntu 12.04是长期支持的版本。
[Red Hat Linux]
可能这是最著名的Linux版本了,Red Hat Linux已经创造了自己的品牌,越来越多的人听说过它。Red Hat在1994年创业,当时聘用了全世界500多名员工,他们都致力于开放的源代码体系。
Red Hat Linux是公共环境中表现上佳的服务器。它拥有自己的公司,能向用户提供一套完整的服务,这使得它特别适合在公共网络中使用。这个版本的Linux也使用最新的内核,还拥有大多数人都需要使用的主体软件包。
Red Hat Linux的安装过程也十分简单明了。它的图形安装过程提供简易设置服务器的全部信息。磁盘分区过程可以自动完成,还可以选择GUI工具完成,即使对于 Linux新手来说这些都非常简单。选择软件包的过程也与其他版本类似;用户可以选择软件包种类或特殊的软件包。系统运行起来后,用户可以从Web站点和 Red Hat那里得到充分的技术支持。我发现Red Hat是一个符合大众需求的最优版本。在服务器和桌面系统中它都工作得很好。Red Hat的唯一缺陷是带有一些不标准的内核补丁,这使得它难于按用户的需求进行定制。 Red Hat通过论坛和邮件列表提供广泛的技术支持,它还有自己公司的电话技术支持,后者对要求更高技术支持水平的集团客户更有吸引力。
[SuSE]
总部设在德国的SuSE AG在商界已经奋斗了8年多,它一直致力于创建一个连接数据库的最佳Linux版本。为了实现这一目的,SuSE与Oracle 和IBM合作,以使他们的产品能稳定地工作。SuSE还开发了SuSE Linux eMail Server III,一个非常稳定的电子邮件群组应用。
基于2.4.10内核的SuSE 7.3,在原有版本的基础上提高了易用性。安装过程通过GUI完成,磁盘分区过程也非常简单,但它没有为用户提供更多的控制和选择。
在SuSE 操作系统下,可以非常方便地访问Windows磁盘,这使得两种平台之间的切换,以及使用双系统启动变得更容易。SuSE的硬件检测非常优秀,该版本在服务器和工作站上都用得很好。
SuSE拥有界面友好的安装过程,还有图形管理工具,可方便地访问Windows磁盘,对于终端用户和管理员来说使用它同样方便,这使它成为了一个强大的服务器平台。 SuSE也通过基于Web的论坛提供技术支持,另外我还发现它有电话技术支持。
[Linux Mint]
Linux Mint是一份基于Ubuntu的发行版,其目标是提供一种更完整的即刻可用体验,这包括提供浏览器插件、多媒体编解码器、对DVD播放的支持、Java和其他组件。它与Ubuntu软件仓库兼容。Linux Mint 是一个为pc和X86电脑设计的操作系统。
因此,一个可以跑得动Windows的电脑也可以使用Linux Mint来代替Windows,或者两个都跑。既有Windows又有Linux的系统就是传说中的“双系统”。同样,MAC,BSD或者其他的Linux版本也可以和Linux Mint 共存。一台装有多系统的电脑在开机的时候会出现一个供你选择操作系统的菜单。Linux Mint可以很好的在一个单系统的电脑上运行,但是它也可以自动检测其他操作系统并与其互动,例如,如果你安装Linux Mint在一个安装了Windows版本的(xp,vista或者其他版本),它会自动检测并建立双启动以供您在开机的时候选择启动哪个系统。并且你可以在Linux Mint下访问Windows分区。Linux是更安全,更稳定,更有效并且日益易于操作的甚至可以和Windows相媲美的系统,它越来越让人感到难以抉择了。
[Gentoo]
Gentoo是Linux世界最年轻的发行版本,正因为年轻,所以能吸取在她之前的所有发行版本的优点。Gentoo最初由Daniel Robbins(FreeBSD的开发者之一)创建,首个稳定版本发布于2002年。由于开发者对FreeBSD的熟识,所以Gentoo拥有媲美FreeBSD的广受美誉的ports系统 ——Portage包管理系统。
[centos]
CentOS(Community ENTerprise Operating System)是Linux发行版之一,它是来自于Red Hat Enterprise Linux依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定性的服务器以CentOS替代商业版的Red Hat Enterprise Linux使用。两者的不同,在于CentOS并不包含封闭源代码软件,CentOS 是一个基于Red Hat Linux 提供的可自由使用源代码的企业级Linux发行版本。每个版本的 CentOS都会获得十年的支持(通过安全更新方式)。新版本的 CentOS 大约每两年发行一次,而每个版本的 CentOS 会定期(大概每六个月)更新一次,以便支持新的硬件。这样,建立一个安全、低维护、稳定、高预测性、高重复性的 Linux 环境。CentOS是Community Enterprise Operating System的缩写。
CentOS 是RHEL(Red Hat Enterprise Linux)源代码再编译的产物,而且在RHEL的基础上修正了不少已知的 Bug ,相对于其他 Linux 发行版,其稳定性值得信赖。
RHEL 在发行的时候,有两种方式。一种是二进制的发行方式,另外一种是源代码的发行方式。
1.2 开源软件简介
开源软件
(1)使用的自由
绝大多数开元软件免费
(2)研究的自由
可以获得软件源代码
(3)散布及改良的自由
可以自由传播、改良甚至销售
支撑互联网的开源技术
LAMP(Linux操作系统+ApacheWeb服务器+MySQL数据库+PHP编程语言)
1.3 Linux应用领域
(1)基于Linux的企业服务器
1) Google:Goobuntu,内部使用的Linux定制系统
Google可能是使用Linux桌面系统的最著名公司,它内部使用的Goobuntu是Ubuntu长期支持版本(LTS)的改进版本。如果Google工作人员要使用Windows操作系统,必须要特别申请才行。据Google内部项目负责人介绍,Windows存在“特殊”的安全问题,所以员工使用Windows操作系统必须获得上级负责人许可。
Goobuntu的用户数量近万名,使用人群从设计师、销售人员到工程师、部门主管,有对UNIX系统驾轻就熟的员工,也有对计算机知之甚少的员工。
2) NASA
NASA负责人介绍说,之所以将国际空间站的关键部分操作系统从Windows切换到Linux,主要是出于稳定性和可靠性的考虑,Linux的可定制性也考虑在内,因为NASA科学家可以灵活地对空间站操作系统进行调整、安装补丁。
3) 法国警察部队
法国准军事警察部队(国家宪兵),与城市慕尼黑一样,也花了将近10年多的时间将办公系统切换到Linux和开源软件上来。整个迁移项目在今年最终完成,72000台PC由Windows XP迁移到GendBuntu——一个基于Ubuntu LTS定制的系统。
除了迁移操作系统,警察部队也将办公套件从MicroSoft Office迁移到OpenOffice,浏览器从IE切换为Firefox,采用Thunderbird来收发邮件,同样也采用了图像编辑器软件GIMP、视频播放器VLC。GendBuntu操作系统的迁移采取了分步实施,先是在5000台PC上进行测试,接着,又在30000台机子上进行正式部署实施,以至最终全部迁移过来。
4.美国国防部
美国国防部出于隐私保护方面的考虑,自己开发了一个基于Linux的U盘操作系统,可以帮助政府人员在不受信任的电脑上安全使用网络。该系统可以直接安装在CD或U盘上,插拔方便,不会在电脑硬盘上留下活动痕迹。
5. CERN(欧洲核研究实验室)
欧洲核研究实验室CERN也是一个长期的Linux用户。CERN的研究员们使用的3000多台电脑都运行着定制的Scientific Linux。
(2)嵌入式应用
1)手机、平板电脑
2)其他嵌入式应用
智能家电:机顶盒、游戏机、数码相机
智能卡系统
航空系统
银行系统
卡拉OK点歌系统
……
(3)Linux在电影娱乐业
1.4 Linux学习方法
(1)为什么选择命令行
实际上,许多命令的功能都可以通过图形化界面来实现,学习这些命令的意义在哪里呢?
在UNIX发育的大部分历史上,用户都是通过shell来工作的。大部分命令都已经经过了几十年的发展和改良,功能强大,性能稳定。Linux继承自UNIX,自然也是如此。此外Linux的图形化界面并不好,并不是所有的命令都有对应的图形按钮。更别说在图形化界面崩溃的情况下,你就要靠shell输入命令来恢复计算机了。
命令本身是一个函数 (function),是一个小的功能模块。当我们想要让计算机做很复杂的事情 (比如说: 在晚上12:00下载某个页面的所有链接,然后复制到移动硬盘)的时候,不断地去按各个图形化按钮并不是个很聪明的事情 (1. 要点很多下,2. 必须等到12:00)。我们通常是通过shell编程来实现这样一些复杂任务,这时,就可以把命令作为函数,嵌入到我们的shell程序中, 从而让不同命令协同工作 (比如使用date来查询时间,再根据时间来使用wget下载等等)。
(2)解决问题的智慧
帮助、文档、示例、查找
(3)英文提示的困惑
Commandnot found
NoSuch file or directory
(4)忘掉Windows的思维方式
计划、专注、坚持
下一章将介绍Linux系统的安装与虚拟机的使用方法。