Linux:初识linux操作系统
本文目录:
一、linux简介
1.什么是操作系统
三句话之内说明白什么是操作系统:1.是一个人与计算机硬件的中介;2.没有用的砖头===>可以玩的砖头;3.内核+shell+扩展软件:windows也有内核+explorer.exe+软件;操作系统英文名称Operating System,简称OS,是计算机系统中必不可少的基础系统软件,它是应用程序运行以及用户操作必备的基础环境支撑,是计算机系统的核心。
操作系统的作用:是管理和控制计算机系统中的硬件和软件资源,例如,它负责直接管理计算机系统的各种硬件资源,如对CPU、内存、磁盘等的管理,同时对系统资源供需的优先次序进行管理。操作系统还可以控制设备的输入、输出以及操作网络与管理文件系统等事务。同时,它也负责对计算机系统中各类软件资源的管理。例如各类应用软件的安装、运行环境设置等。
(下图给出了操作系统与计算机硬件、软件之间的关系示意图)
小结:
操作系统就是处于用户与计算机系统硬件之间用于传递信息的系统程序软件。例如:操作系统会在接收到用户输入的信息后,将其传给计算机系统硬件核心进行处理,然后再把计算机系统硬件的处理结果返回给使用者。
2.什么是linux
定义:类似windows,Linux也是一个操作系统软件,Linux是一套开放源代码程序的、并可以自由传播的类Unix操作系统软件,多用户、多任务并且支持多线程和多CPU的操作系统。Linux系统主要被应用于服务器端、嵌入式开发和个人PC桌面3大领域,其中服务器端领域是重中之重。
我们熟知的大型、超大型互联网企业(百度,Sina,淘宝等)都在使用Linux系统作为其服务器端的程序运行平台,全球及国内排名前十的网站使用的主流系统几乎都是Linux系统。
Linux操作系统具有如下一些特点:
1.是开放源代码的程序软件,可自由修改;
2. Unix系统兼容,具备几乎所有Unix的优秀特性;
3.可自由传播,无任何商业化版权制约;
4.适合Intel等x86 系列架构的计算机;
二、linux的起源
1.Unix历史
Unix系统于1969年在AT&T的贝尔实验室诞生,20世纪70年代,它逐步盛行,这期间,又产生了一个比较重要的分支,就是大约1977年诞生的BSD(Berkeley Software Distribution)系统。从BSD系统开始,各大厂商及商业公司开始了根据自身公司的硬件架构,并以BSD系统为基础进行Unix系统的研发,从而产生了各种版本的Unix系统,例如:SUN公司的Solaris,IBM公司的AIX,HP公司的HP UNIX等。
(下图给出了Unix系统诞生、发展的时间及版本分支介绍,供读者参考)
在上图中可以看到,本章的“主人公”Linux系统,诞生于1991年左右,因此,可以说Linux是从Unix发展而来的。
(下图为unix-linux发展史简介)
2.Unix的五大优秀特性
1.技术成熟,可靠性高
2.极强的可伸缩性
Unix支持的CPU处理器体系架构非常多,包括Intel/AMD及HP-PA、MIPS、PowerPC、UltraSPARC、ALPHA等RISC芯片,以及SMP、MPP等技术。
提示:可能是由于早期各大厂商都基于Unix进行适合自己的硬件开发,因此,Unix支持的CPU架构才更多。
3.强大的网络功能
Internet互联网最重要的协议TCP/IP就是在Unix上开发和发展起来的。此外,Unix还支持非常多的常用的网络通信协议,如NFS、DCE、IPX/SPX、SLIP、PPP等。
4.强大的数据库支持能力
Oracle、DB2、Sybase、Informix等大型数据库,都把Unix作为其主要的数据库开发和运行平台,一直到目前为止,依然如此。
5.强大的开发功能
正是Unix促使了C语言的诞生。
3.Unix操作系统的革命
70年代中后期,由于各厂商及商业公司开发的Unix及内置软件都是针对自己公司特定硬件的,因此在其他公司的硬件上基本上无法直接运行。
70年代末,Unix又面临了突如其来的被AT&T(美国电信公司)回收版权的重大问题,特别是要求禁止对学生群体提供Unix系统源代码。
也是在80年代初期,同样是由于之前的Unix系统版权和源代码限制等问题,使得当时大学里教学Unix系统的束缚很大。因此,当时的一个大学的教授,名字为Andrew Tanenbaum(谭宁邦),研发了并且可以运行于x86 PC平台上面的系统,这个系统的名字为Minix。
补充:由于谭宁邦开发的这个Minix系统的目的只是用于教学,因此,Minix系统的功能无法满足商用的需求,但是Minix的产生对于Linux的诞生又是至关重要的一个部分。
1984年,Richard Stallman(斯托曼)发起了开发自由软件的运动,并成立了自由软件基金会(Free Software Foundation,FSF)和GNU项目。
当时发起这个自由软件运动和创建GNU项目的目的其实很简单,就是想开发一个类似Unix系统、并且是自由软件的完整操作系统,也就是要解决70年代末Unix版权问题以及软件源代码面临闭源的问题,这个系统叫做GNU操作系统。
补充:这个GNU系统后来没有流行起来。现在的GNU系统通常是使用Linux系统的内核,以及使用了GNU项目贡献的一些组件加上其它相关程序组成,这样的组合被称为GNU/Linux操作系统。
三、linux的发展历程
1.linux的发展历程简介
Linux系统的诞生开始于芬兰的赫尔辛基大学的一位计算机系的学生,名字为Linus Torvalds。
Linux的标志和吉祥物为一只名字叫作Tux的企鹅——Torvalds’Unix。
1)1984年,Andrew S. Tanenbaum(谭宁邦)开发了用于教学的Unix系统,命名为MINIX。
2)1989年,Andrew S. Tanenbaum将MINIX系统运行于x86的PC计算机平台。
3)1990年,芬兰赫尔辛基大学学生Linus Torvalds首次接触MINIX系统。
4)1991年,Linus Torvalds开始在MINIX上编写各种驱动程序等操作系统内核组件。
5)1991年底,Linus Torvalds 公开了Linux内核源码0.02版(http://www.kernel.org),注意,这里公开的Linux内核源码并不是我们现在使用的Linux系统的全部,而仅仅是Linux内核kernel部分的代码。
6) 1993年,Linux 1.0版发行,Linux转向GPL版权协议。
7) 1994年,Linux的第一个商业发行版Slackware问世。
8) 1996年,美国国家标准技术局的计算机系统实验室确认Linux 版本1.2.13 (由Open Linux公司打包)符合POSIX标准。
9) 1999年,Linux的简体中文发行版问世。
10) 2000年后,Linux系统日趋成熟,涌现大量基于Linux服务器平台的应用,并广泛应用于基于ARM技术的嵌入式系统中。
2.linux发展历程中重要人物
(Linux系统诞生发展过程中关键代表人物)
四、linux核心概念知识
1.自由软件与FSF
自由软件
简单地理解,自由软件的核心就是没有商业化软件版权制约,源代码开放,可无约束自由传播。注意:自由软件强调的是权利问题,而非是否免费的问题。大家一定要理解这个概念,自由软件中的自由是“言论自由”中的“自由”,而不是“免费啤酒”中的“免费”。自由意味着freedom,而免费意味着free,这是完全不同的概念。例如:Red Hat Linux自由但不免费,CentOS Linux是自由且免费的。自由软件关乎使用者运行、复制、发布、研究、修改和改进该软件的自由。
自由软件基金会FSF
FSF(Free Software Foundation)的中文意思是自由软件基金会,是Richard Stallman于1984年发起和创办的。FSF的主要项目是GNU项目。GNU项目本身产生的主要软件包括:Emacs编辑软件、gcc编译软件、bash命令解释程序和编程语言、内核hurd(开发中),以及gawk 等。
2.GNU知识
GNU的全称为GNU is not unix,意思是“GNU不是UNIX”,GNU计划,又称革奴计划,是由Richard Stallman在1984年公开发起的,是FSF的主要项目。前面已经提到过,这个项目的目标是建立一套完全自由的和可移植的类Unix操作系统。但是GNU自己的内核Hurd仍在开发中,离实用还有一定的距离。现在的GNU系统通常是使用Linux系统的内核、加上GNU项目贡献的一些组件,以及其他相关程序组成的,这样的组合被称为GNU/Linux操作系统。到1991年Linux内核发布的时候,GNU项目已经完成了除系统内核之外的各种必备软件的开发。在Linus Torvalds和其他开发人员的努力下, GNU项目的部分组件又运行到了Linux内核之上,例如:GNU项目里的Emacs、gcc、bash、gawk等,至今都是Linux系统中很重要的基础软件。
3.GPL知识
GPL全称为General Public License,中文名为通用公共许可,是一个最著名的开源许可协议,开源社区最著名的Linux内核就是在GPL许可下发布的。GPL许可是由自由软件基金会(Free Software foundation)创建的。
1984年,Richard Stallman发起开发自由软件的运动后不久,在其他人的协作下,他创立了通用公共许可证(GPL),这对推动自由软件的发展起了至关重要的作用,那么,这个GPL到底是什么意思呢?简单的理解,GPL许可的核心,是保证任何人有共享和修改自由软件的自由,任何人有权取得、修改和重新发布自由软件的源代码权利,但都必须同时给出具体更改的源代码。虽然整个Linux内核是基于GNU通用公共许可的,但是Linux内核并不是GNU计划的一部分,这一点请读者不要混淆。
4.FSF,GNU,GPL小结
FSF自由软件基金会(公司)==>GNU(项目)==> emacs、gcc、bash(命令解释器)、hurd(内核开发中)、gawk FSF(公司)===>GPL(员工守则)==>自由传播 修改源代码 但是必须把修改后也要发布出来。 Linus Torvalds==>linux内核
5.linux系统组成
Linux操作系统=linux内核+GNU软件及系统软件+必要的应用程序
(下图:Linux系统各组成部分的贡献人员)
(下图:linux系统的核心组成原理示意图)
五、linux特点
Linux系统之所以受到广大计算机爱好者的喜爱,主要原因有两个:
一是,Linux属于自由软件,用户不用支付任何费用就可以获得系统和系统的源代码,并且可以根据自己的需要对源代码进行必要的修改,无偿使用,无约束地自由传播。
l 二是,Linux具有Unix的全部优秀特性,任何使用Unix操作系统或想要学习Unix操作系统的人,都可以通过学习Linux来了解Unix,同样可以获得Unix中的几乎所有优秀功能,并且Linux系统更开放,社区开发和全世界的使用者也更活跃。
六、linux的应用领域
与Windows操作系统软件一样,Linux也是一个操作系统软件。但与Windows不同的是,Linux是一套开放源代码程序的,并可以自由传播的类UNIX操作系统软件,随着信息技术的更新变化,Linux应用领域已趋于广泛。
1.IT服务端
如今的IT服务器领域是Linux、UNIX、Windows三分天下,Linux系统可谓是后起之秀,尤其是近几年,服务器端Linux操作系统不断地扩大着市场份额,每年增长势头迅猛,并对Windows及UNIX服务器市场的地位构成严重的威胁。
Linux作为企业级服务器的应用十分广泛,利用Linux系统可以为企业构架Web服务器、数据库服务器、负载均衡服务器、邮件服务器、DNS服务器、代理服务器(透明网关)、路由器等,不但使企业降低了运营成本,同时还获得了Linux系
统带来的高稳定性和高可靠性。
随着Linux在服务器领域的广泛应用,从近几年的发展来看,该系统已经渗透到了电信、金融、政府、教育、银行、石油等各个行业,同时各大硬件厂商也相继支持Linux操作系统。这一切都在表明,Linux在服务器市场的前景是光明的。
同时,大型、超大型互联网企业(百度、新浪、淘宝等)都在使用Linux系统作为其服务器端的程序运行平台,全球及国内排名前十的网站使用的几乎都是Linux系统,Linux已经逐步渗透到各个领域的企业里。
2.嵌入式开发平台
由于linux系统的开源代码,功能强大、可靠、稳定性强、灵活而且具有强大的伸缩性,在加上它广泛的支持大量的未处理器体系结构,硬件设备、图形支持和通信协议,因此在嵌入式应用的领域里,从英特网的设备(路由器、交换机、防火墙、邮件服务器、DNS服务器、负载均衡器)到专用的控制系统(自动售卖机、手机、pad,各种家用电器等),linux系统都有广泛的应用市场。特别是经过这几年的发展,他已经成功跻身主流嵌入式开发平台。
例如:在智能手机领域,Android Linux已经在智能手机开发平台牢牢占据一席之地。
3.个人PC桌面
所谓个人桌面系统,其实就是我们在办公室使用的个人计算机系统, 例如: Windows XP、Windows 7、MAC等。Linux系统在这方面的支持也已经非常好了,完全可以满足日常的办公及家用需求,例如:
浏览器上网浏览(例如:Firefox浏览器);
办公室软件(OpenOffice,兼容微软Office软件)处理数据;
收发电子邮件(例如:ThunderBird 软件);
实时通信(例如:QQ 等);
文字编辑(例如:vi、vim、emac);
多媒体应用。
虽然Linux个人桌面系统的支持已经很广泛了,但是在当前的桌面市场份额还远远无法与Windows系统竞争,这其中的障碍可能不在于Linux桌面系统产品本身,而在于用户的使用观念、操作习惯和应用技能,以及曾经在Windows上开发的软件的移植问题。
七、linux的发行版本
版本介绍
Linux内核(kernel)版本主要有4个系列,分别为Linux kernel 2.2、Linux kernel 2.4、Linux kernel 2.6,Linux kernel3.x ,更多更新的内核版本请浏览https://www.kernel.org/。
Linux的发行商包括Slackware、Redhat、Debian、Fedora、TurboLinux、Mandrake、SUSE、CentOS、Ubuntu、红旗、麒麟等。
下面来看看其中几个重要的发行版本: 1)Red Hat:Red Hat Linux 9.0的内核为2.4.20。在版本9.0后,Red Hat不再遵循GPL协议,成为收费产品(但仍开源),发展的新版本依次为Red Hat 3.x、Red Hat 4.x、Red Hat 5.x、Red Hat 6.x、Red Hat 7.x。Red Hat Enterprise 6.x 2) Fedora:为Red Hat的一个分支,仍遵循GPL协议,可以认为是Red Hat预发布版。(游戏公测) 3) CentOS (Community Enterprise Operating System):与redhat几乎一模一样。Red Hat的另一个重要分支,以Red Hat 所发布的源代码重建符合GPL许可协议的Linux系统,即将Red Hat Linux源代码的商标LOGO以及非自由软件部分去除后再编译而成的版本,目前CentOS已被Red Hat公司收购,但仍开源免费。 CentOS Linux是国内互联网公司使用最多的Linux系统版本,也是本书的“主人公”,本书后面所有的内容讲解都是基于CentOS这个操作系统的,绝大部分内容几乎无需任何修改同样适合其它操作系统版本。 提示:有关Linux操作系统,记住Redhat、CentOS、Ubuntu、Fedora、SUSE、Debian等即可。Redhat与CentOS的区别和联系,有时会被面试官问到,需要重点了解。
八、选择适合的linux系统学习
1.linux发行版本应用场景
2.选择CentOS Linux的版本
Linux运维技术主要是基于CentOS x86_64 Linux的,绝大部分知识几乎无需任何修改同样也适用于Red Hat Linux等同源或类似Linux系统版本
下面是CentOS的主流版本在国内互联网企业的使用现状说明: CentOS 5系列:占20%左右,主流版本有CentOS 5.5、CentOS 5.8、CentOS 5.10、CentOS 5.11,不推荐新手学习了。===>linux 2.4 CentOS 6系列:占45%左右,主流版本有CentOS 6.2、CentOS 6.4、CentOS 6.6、CentOS 6.8,推荐新手学习。===>linux 2.6 CentOS 7系列:占35%左右,主流版本有CentOS 7.0、CentOS 7.2、CentOS 7.4、CentOS 7.5等。 推荐新手学习,也是我们上课所使用的===> linux 3.10 面试技巧:大家被面试官问及使用的是什么操作系统时,一定要一次性说出来(系统版本、内核版本、32位还是64位),例如:我的工作中使用的是CentOS 6.9 x86_64位Linux系统,内核版本为2.6.32-573,这才是一个合格的Linux运维人员的表现。
3.问答题
当他人问起使用什么系统时,要回答完整
Linux操作系统=内核+系统软件+应用程序
centos7.4 x86_64 内核版本3.10.0-693
[root@oldboyedu ~]# cat /etc/redhat-release CentOS release 7.4 (Final) [root@oldboyedu ~]# uname -r 3.10.0-693.el6.x86_64 [root@oldboyedu ~]# uname -m x86_64 [root@oldboyedu ~]# uname -a Linux oldboyedu 3.10.0-693.el6.x86_64 #1 SMP Thu Jul 23 15:44:03 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
九、linux先关认证介绍RHCSA/RHCE/RHCA