前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux入门

Linux入门

作者头像
超蛋lhy
发布2018-08-31 11:48:45
3K0
发布2018-08-31 11:48:45
举报
文章被收录于专栏:PythonistaPythonista

 操作系统的分类

代码语言:javascript
复制
Windows系列操作系统,Unix类操作系统,Linux类操作系统,Mac操作系统

提问:为什么要去学习Linux?

代码语言:javascript
复制
同学甲可能要问,超哥你介绍了这么多有关Linux的知识,但我还是懵逼,我从小学去网吧打泡泡堂用的就是Windows,上了这么多年学也是用的Windows,为什么要让我学这个Linux?
代码语言:javascript
复制
同学乙可能要问,听起来Linux好像很高大上,如果我放弃Windows去学Linux,用不了多久就会升职加薪当上总经理赢取白富美吗?想想还很激动。。。

那么超哥要回答了:

  如果Windows意味着生活和游戏,那么Linux久代表着严谨和工作,学习Linux代表着你要开发软件,你要测试程序,你要维护服务器。那么依据呢?请看如下:

代码语言:javascript
复制
由此可见,无论你是python后端开发,还是python测试开发,又或者是爬虫、数据挖掘开发,统统都必须学会Linux,这是开发者必须的技能。

我们都知道Linux这玩意是在电脑上运行的,所以说Linux就是一组软件,问题是这个软件是操作系统还是应用程序?而且Linux可以在哪些种类的电脑上运行呢?Linux来自哪里?为什么Linux不收钱?(万恶的windows分为各种收费版、家庭版、专业版、企业版。。。。)这些问题我们是不是都得了解,以免人家和你聊linux,俺不会尴尬呀。

   我们都知道,整个电脑主机是由一堆硬件所组成,为了有效的控制这些硬件资源,于是就有操作系统的产生了。操作系统除了有效的控制这些硬件资源的运作,并且提供电脑运行所需的功能(例如网络功能)。

  由上图看出操作系统跑于硬件之上,应用程序运行在操作系统之上, 由于Linux只是一套操作系统并不含有其他应用程序,因此工程师需要在下载Linux系统并且安装之后,就可以使用了。

  Shell(也叫做终端或壳)充当的是人与内核(硬件)之间的翻译官,用户吧一些命令“传递”给终端,它就会调用相应的程序服务去完成工作。红帽Linux默认使用的终端是Bash解释器。

1.1  Linux起源与发展

  1991年,一个名不见经传的芬兰研究生购买了自己的第一台PC,并且决定开始开发自己的操作系统。这个想法非常偶然,最初只是为了满足自己读写新闻和邮件的需求。这 个芬兰人选择了 Minix作为自己研究的对象。 Minix是由荷兰教授 Andrew S Tanenbaum开 发的一种模型操作系统,这个开放源代码的操作系统最初只是用于研究目的。 这个研究生名叫 Linus torvalds,他很快编写了自己的磁盘驱动程序和文件系统,并且 慷慨地把源代码上传到互联网上。 Linus把这个操作系统命名为 Linux,意指“ Linus的 Minix” ( Linus, Minix)。 

1.1.1  开源潮流

  简单来说,开源软件的特点就是把软件程序与源代码文件一起打包提供给用户,让用户 在不受限制地使用某个软件功能的基础上还可以按需进行修改,或编制成衍生产品再发布出 去。用户具有使用自由、修改自由、重新发布自由以及创建衍生品的自由。这也正好符合了黑 客和极客对自由的追求,因此国内外开源社区的根基都很庞大,人气也相当高。

坦白来讲,每位投身于 Linux 行业的技术人或者程序员只要听到开源项目就会由衷地感 到自豪,这是一种从骨子里带有的独特情怀。开源的企业不单纯是为了利益,而是互相扶持, 努力服务好更多的用户。

开源软件最重要的特性有下面这些。

代码语言:javascript
复制
使用闭源软件无疑把命运交付给他人,一旦封闭的源代码没有人来维护,你 将进退维谷;而且相较于商业软件公司,开源社区很少存在倒闭的问题。

相较于闭源软件产品,开源项目通常是由开源社区来研发及维护的,参与编 写、维护、测试的用户量众多,一般的 bug 还没有等爆发就已经被修补。

开源工作者都是在幕后默默且无偿地付出劳动成果,为美好的世界贡献一份 力量,因此使用开源社区推动的软件项目可以节省大量的人力、物力和财力。

没有哪个笨蛋会把木马、后门等放到开放的源代码中,这样无疑是把自己的罪行暴露在阳光之下。 

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:可以运行英雄联盟、绝地求生、仙剑三、地下城与勇士、我的世界。。。等等游戏,而Linux开发的游戏几乎很少 

 总结 

代码语言:javascript
复制
1.操作系统是什么
是人与计算机硬件沟通的介质

2.操作系统组成---鸡蛋由几部分组成
1)蛋黄-系统内核
2)蛋清-命令解释器shell
3)蛋壳-应用程序

3.Linux是一套开放源代码程序、且可以自由传播的操作系统

4.掌握centos/redhat能更好的适应互联网服务端开发环境

5.使用linux的好处是自由传播,免费,不会犯法,任意切换图形/命令终端,安全稳定,不用杀毒软件,不卡
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-07-07 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  •  操作系统的分类
  • 提问:为什么要去学习Linux?
  • 1.1  Linux起源与发展
    • 1.1.1  开源潮流
    • 1.2  Linux的发行版本
    • 1.3  Linux与Windows的区别
      • 免费与收费
        • 软件与支持
          • 安全稳定性
            • 使用习惯
              • 应用领域
              •  总结 
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档