操做系统的分类
Windows系列操做系统,Unix类操做系统,Linux类操做系统,Mac操做系统
提问:为何要去学习Linux?
同窗甲可能要问,超哥你介绍了这么多有关Linux的知识,但我仍是懵逼,我从小学去网吧打泡泡堂用的就是Windows,上了这么多年学也是用的Windows,为何要让我学这个Linux?
同窗乙可能要问,听起来Linux好像很高大上,若是我放弃Windows去学Linux,用不了多久就会升职加薪当上总经理赢取白富美吗?想一想还很激动。。。
那么超哥要回答了:python
若是Windows意味着生活和游戏,那么Linux久表明着严谨和工做,学习Linux表明着你要开发软件,你要测试程序,你要维护服务器。那么依据呢?请看以下:linux
因而可知,不管你是python后端开发,仍是python测试开发,又或者是爬虫、数据挖掘开发,通通都必须学会Linux,这是开发者必须的技能。
咱们都知道Linux这玩意是在电脑上运行的,因此说Linux就是一组软件,问题是这个软件是操做系统仍是应用程序?并且Linux能够在哪些种类的电脑上运行呢?Linux来自哪里?为何Linux不收钱?(万恶的windows分为各类收费版、家庭版、专业版、企业版。。。。)这些问题咱们是否是都得了解,以避免人家和你聊linux,俺不会尴尬呀。程序员
什么是操做系统
咱们都知道windows 7/8/xp 其实就是操做系统,操做系统全称是Operating System,简称OS,是计算机系统中必不可少的基础系统软件,它是应用程序运行及用户操做必备的基础环境支撑。
整个电脑主机是由一堆硬件所组成,为了有效的控制这些硬件资源,因而就有操做系统的产生了。操做系统除了有效的控制这些硬件资源的运做,而且提供电脑运行所需的功能(例如网络功能)。
由上图看出操做系统跑于硬件之上,应用程序运行在操做系统之上, 因为Linux只是一套操做系统并不含有其余应用程序,所以工程师须要在下载Linux系统而且安装以后,就可使用了。shell
Shell(也叫作终端或壳)充当的是人与内核(硬件)之间的翻译官,用户吧一些命令“传递”给终端,它就会调用相应的程序服务去完成工做。红帽Linux默认使用的终端是Bash解释器。数据库
1.1 Linux起源与发展
1991年,一个名不见经传的芬兰研究生购买了本身的第一台PC,而且决定开始开发本身的操做系统。这个想法很是偶然,最初只是为了知足本身读写新闻和邮件的需求。这 个芬兰人选择了 Minix做为本身研究的对象。 Minix是由荷兰教授 Andrew S Tanenbaum开 发的一种模型操做系统,这个开放源代码的操做系统最初只是用于研究目的。 这个研究生名叫 Linus torvalds,他很快编写了本身的磁盘驱动程序和文件系统,而且 慷慨地把源代码上传到互联网上。 Linus把这个操做系统命名为 Linux,意指“ Linus的 Minix” ( Linus, Minix)。 windows
1.1.1 开源潮流
简单来讲,开源软件的特色就是把软件程序与源代码文件一块儿打包提供给用户,让用户 在不受限制地使用某个软件功能的基础上还能够按需进行修改,或编制成衍生产品再发布出 去。用户具备使用自由、修改自由、从新发布自由以及建立衍生品的自由。这也正好符合了黑 客和极客对自由的追求,所以国内外开源社区的根基都很庞大,人气也至关高。后端
坦白来说,每位投身于 Linux 行业的技术人或者程序员只要听到开源项目就会由衷地感 到自豪,这是一种从骨子里带有的独特情怀。开源的企业不单纯是为了利益,而是互相扶持, 努力服务好更多的用户。centos
开源软件最重要的特性有下面这些。安全
低风险 使用闭源软件无疑把命运交付给他人,一旦封闭的源代码没有人来维护,你 将进退维谷;并且相较于商业软件公司,开源社区不多存在倒闭的问题。
高品质 相较于闭源软件产品,开源项目一般是由开源社区来研发及维护的,参与编 写、维护、测试的用户量众多,通常的 bug 尚未等爆发就已经被修补。
低成本 开源工做者都是在幕后默默且无偿地付出劳动成果,为美好的世界贡献一份 力量,所以使用开源社区推进的软件项目能够节省大量的人力、物力和财力。
更透明 没有哪一个笨蛋会把木马、后门等放到开放的源代码中,这样无疑是把本身的罪行暴露在阳光之下。
若是开源软件一味的追求“自由”缺牺牲了程序员的利益,这样也会影响程序员的激情,所以世界上就有了“开源许可协议”来保证开源工做者的权益。服务器
GNU GPL (GNU General Public License GNU):
只要软件中包含了遵循 GPL 协议的产品或代码,该软件就必须也遵循 GPL 许可协议且开源、免费, 所以这个协议并不适合商用软件。
遵循了此协议的就包括Linux和大多数开源软件
GNU的特色是:
复制自由
传播自由
收费传播 开源软件都是经过对用户提供有偿服务形式来盈利
修改自由 开发人员容许增长和删除软件的功能,可是还必须遵循GPL许可协议
BSD Berkeley Software Distribution 伯克利软件发布版本许可协议
用户可使用、修改和从新发布遵循该许可的软件,而且能够将软件做为商业软件发布和销售,前提须要知足下面3个条件。
若是在发布的软件中包含源代码,则源代码必须继续遵循BSD许可协议
若是再发布的软件中只有二进制程序,则须要在相关文档或版权中声明该代码遵循了BSD协议
不容许用原始软件的名字、做者名字或机构名称进行市场推广
Linux为何受欢迎
Linux以高效和灵活主城,Linux同事具备多任务、多用户的能力,支持多线程,多CPU。
Linux包括了文本编辑器,高级语言编译器,以及图形用户界面登应用软件,固然绝大多数服务器都是使用命令行,文本模式操做Linux的。
Linux遵循GNU通用公共许可协议,属于自由软件,用户不须要支付费用就能够得到系统和系统源代码,免费使用且自由传播。
Linux具备很高的系统稳定性和可靠性。
具备很高的系统安全性
众多业界厂商支持,如IBM、Oracle、Intel、HP、Google等
有完善的数据库平台,包括Oracle、DB/二、Sybase、MySQL、PostgreSQL等。
有完善的图形化用户界面,包括GNOME、KDE等。
有完善的开发平台,包括C/C++、Java、Python等。
1.2 Linux的发行版本
其实啊Linux这个词并不能(表明)操做系统,Linux实际上只是定义了一个操做系统的内核,这个内核由kernel.org维护。不一样的企业和组织在基础上开发了一系列的辅助软件,打包发布本身的“发行”版本。
在介绍常见的 Linux 系统版本以前,首先须要区分 Linux 系统内核与 Linux 发行版的不一样。
Linux 系统内核指的是一个由 Linus Torvalds 负责维护,提供硬件抽象层、硬盘及文件 系统控制及多任务功能的系统核心程序。
Linux 发行版系统是咱们常说的 Linux 操做系统,也便是由 Linux 内核与各类经常使用 软件的集合产品。
全球大约有数百款的 Linux 系统版本,每一个系统版本都有本身的特性和目标人群,下面 将能够从用户的角度选出最热门的几款进行介绍。
RedHat Enterprise Linux RHEL :
红帽公司是全球最大的开源技术厂商,RHEL 是全世界内使 用最普遍的 Linux 系统。RHEL 系统具备极强的性能与稳定 性,而且在全球范围内拥有完善的技术支持。
Community Enterprise Operating System
CentOS 经过把 RHEL 系统从新编译并发布给用户无偿使用的 Linux 系统,具备普遍的使用人群。CentOS 当前已被红帽公司 “收编”。
openSUSE
源自德国的一款著名的 Linux 系统,在全球范围内 有着不错的声誉及市场占有率。主要使用客户是中国移动、中国电信、交通银行、浦发银行等等安全性极高的客户
Debian
稳定性、安全性强,提供了免费的基础支持,能够良好地支持各类硬件架构,以及提供近十万种不一样的开源软件,在国外拥有很高的承认度和使用率。

Ubuntu
是一款派生自 Debian 的操做系统,对新款硬件具备极 强的兼容能力。Ubuntu 与 Fedora 都是极其出色的 Linux 桌面系统,并且 Ubuntu 也可用于服务器领域。
在过去的10年中, Red hat公司一直是 Linux乃至开源世界的领导者。2003年,公司高层决定将其产品分红两个不一样的发行版本。商业版本被称为 Red Hat Enterprise Linux,这个发行版本专一于企业级应用,并向使用它的企业提供全套技术支持, Red Hat公司从中收取相关许可证费。
RedHat Linux对硬件的支持很是友好,主流硬件厂商早早的将服务器拿去测试,不多碰见硬件兼容性问题,大量的商业软件都是基于RedHat认证的,例如Oracle。Linux内核代码的贡献,redhat厂商的大牛也是最多,要知道全世界的互联网大客户,通常都会使用商业服务器,由于出了问题有专业的技术人员技术支持。
CentOS 系统是经过把 RHEL 系统释放出的程序源代码经 过二次编译以后生成的一种 Linux 系统,其命令操做和服务配置方法与 RHEL 彻底相同,但 是去掉了不少收费的服务套件功能,并且还不提供任何形式的技术支持,出现问题后只能由运维人员本身解决。
为什么重点推荐redhat,缘由是熟悉了centos/redhat找工做更容易。。。
1.3 Linux与Windows的区别
免费与收费
- 最新正版Windows10官方售价¥888
- Linux几乎免费(更多人愿意钻研开源软件,而收费的产品出现更多的盗版)
软件与支持
- Windows平台:数量和质量的优点,补过大部分为收费软件;由微软提供技术支持和服务
- Linux平台:大多为开源软件,用户能够修改定制与发布,因为免费没有资金支持,部分软件质量可能欠缺
安全稳定性
- Windows平台:三天两头修复补丁,仍然会中毒(即使装了360,瑞星,金山毒霸。。。。)
- Linux平台:安全问题不多,无需安装xx杀毒,xx卫士
使用习惯
- Windows:普通用户基本依靠图形界面操做,鼠标和键盘完成一切需求,上手简单容易
- Linux:兼具图形界面(须要带有桌面环境的发行版Linux)和彻底命令行操做,没法使用鼠标,新手入门困难,须要学习后方可以使用,熟练后效率极高!
应用领域
- Linux:人们平常在Windows上访问的百度、谷歌、淘宝、qq、迅雷(xxxx大片),支撑这些软件运行的,后台是成千上万的Linux服务器,它们时时刻刻进行着忙碌的数据处理和运算
- Windows:能够运行英雄联盟、绝地求生、仙剑3、地下城与勇士、个人世界。。。等等游戏,而Linux开发的游戏几乎不多
总结
1.操做系统是什么 是人与计算机硬件沟通的介质 2.操做系统组成---鸡蛋由几部分组成 1)蛋黄-系统内核 2)蛋清-命令解释器shell 3)蛋壳-应用程序 3.Linux是一套开放源代码程序、且能够自由传播的操做系统4.掌握centos/redhat能更好的适应互联网服务端开发环境5.使用linux的好处是自由传播,免费,不会犯法,任意切换图形/命令终端,安全稳定,不用杀毒软件,不卡