Linux入门
Linux起源和发展
1991年,一个名不见经传的芬兰研究生购买了自己的第一台PC,并且决定开始开发自己的操作系统。这个想法非常偶然,最初只是为了满足自己读写新闻和邮件的需求。这 个芬兰人选择了 Minix作为自己研究的对象。 Minix是由荷兰教授 Andrew S Tanenbaum开 发的一种模型操作系统,这个开放源代码的操作系统最初只是用于研究目的。 这个研究生名叫 Linus torvalds,他很快编写了自己的磁盘驱动程序和文件系统,并且 慷慨地把源代码上传到互联网上。 Linus把这个操作系统命名为 Linux,意指“ Linus的 Minix” ( Linus, Minix)。
开源潮流
简单来说,开源软件的特点就是把软件程序与源代码文件一起打包提供给用户,让用户 在不受限制地使用某个软件功能的基础上还可以按需进行修改,或编制成衍生产品再发布出 去。用户具有使用自由、修改自由、重新发布自由以及创建衍生品的自由。这也正好符合了黑 客和极客对自由的追求,因此国内外开源社区的根基都很庞大,人气也相当高。
坦白来讲,每位投身于 Linux 行业的技术人或者程序员只要听到开源项目就会由衷地感 到自豪,这是一种从骨子里带有的独特情怀。开源的企业不单纯是为了利益,而是互相扶持, 努力服务好更多的用户。
开源软件最重要的特性有下面这些。
低风险 使用闭源软件无疑把命运交付给他人,一旦封闭的源代码没有人来维护,你 将进退维谷;而且相较于商业软件公司,开源社区很少存在倒闭的问题。 高品质 相较于闭源软件产品,开源项目通常是由开源社区来研发及维护的,参与编 写、维护、测试的用户量众多,一般的 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/2、Sybase、MySQL、PostgreSQL等。 有完善的图形化用户界面,包括GNOME、KDE等。 有完善的开发平台,包括C/C++、Java、Python等。
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 完全相同,但 是去掉了很多收费的服务套件功能,而且还不提供任何形式的技术支持,出现问题后只能由运维人员自己解决。