Linux之初见

 前言

       第一次听到Linux的大名是在进行网络培训的时候,隔壁的红帽子培训时听到的。由于这样,导致我很长一段时间都以为Linux就是红帽,红帽就是Linux,当听到Ubantu的时候,还以为又是另一个全新的,区别于windows和Linux的版本,现在想起来很是羞愧。近期因为工作的原因需要掌握Linux,因此开启了一次全新的学习之旅。正所谓工欲善其事,必先利其器。对Linux的初步了解是必须的。

 Linux概述

        Linux是一个可以免费使用,传播的 Like-Unix操作系统,可以多用户、多任务、多线程和多CPU。如同Windows一样,它也有32位和64位两种版本,分别支持不同的硬件。严格来讲,Linux其实只能表示其内核(Kernel),只有结合了内核之上的各种库和应用工具才真正算得是一个完整的操作系统。但大家习惯都用Linux来指代整个含有Linux内核和软件,库的操作系统。

Linux发行版本

        Linux由于其开源的特性,因此产生了很多的版本,但目前主流的应用为三大版本,包括: slackware,debian,redhat。这其中相对来说,redhat的知名度要略高一些。根据这三大主流发行版本,又产生了很多的二次乃至与三次开发版。比如,slackware的二次发行版中具有很高知名度的SUSE,debian中的Ubuntu等。而针对redhat的二次开发版,则包含了基于企业层面的 rhel 和桌面应用的 fedora。同时,由于rhel提供补丁升级包时,并非是直接提供经过编译后的二进制安装包,从而激发部分有能力的人员,发布了完全兼容 rhel 格式的 CentOS。

开源协议

       学习Linux,开源协议这个话题是无论如何也不能绕开的。Linux本身是基于GPL (General Public Licence)协议来进行开发的。除了GPL协议,目前流行的几种开源协议中,还包含了LGPL,Apache,BSD等,从各自不同的规定内容也可以发现几个开源协议之间的不同。

       GPL协议:主要是针对代码的开源,包括免费使用,修改,乃至于其衍生代码的开源和免费使用。但该协议明确禁止修改后或者是衍生的代码作为闭源的商业软件发布和销售。只要是你使用了采用GPL协议的代码,则你所写的代码也必须继承GPL协议,必须为开源和免费。

       LGPL协议:LGPL主要是为类库使用设计的开源协议。它可以允许商业软件通过类库引用方式来使用LGPL类库,而不是直接使用开源代码,这样就避免了开源其商业软件代码,从而使商业软件可以发布及销售。

       Apache协议:可以免费使用,修改代码。但必须尊重原作者的著作权,且再发布或商业软件时,必须遵循如下的条件:1、需要给代码的用户一份Apache Licence;2、如果你修改了代码,需要在被修改的文件中说明;3、在延伸的代码中(修改和有原代码衍生的代码中)需要带有原来代码中的协议,商标,专利声明和其他原来作者规定需要包含的说明;4、如果再发布的产品中包含一个Notice文件,则在Notice文件中需要带有Apache Licence。你可以在Notice中增加自己的许可,但不可以表现为对Apache Licence构成更改。

       BSD协议:与Apache协议一样,可以自由使用和修改源代码,并可以将修改的代码作为开源或者专有软件予以发布,但同样有前提:1、如果再发布的产品中包含源代码,则在源代码中必须带有原来代码中的BSD协议;2、如果再发布的只是二进制类库/软件,则需要在类库/软件的文档和版权声明中包含原来代码中的BSD协议;3、不可以用开源代码的作者/机构名字和原来产品的名字作市场推广。

总结

        路漫漫其修远兮,吾将上下而求索。Linux的学习征程已经迈开了第一步,唯有努力方可见成效!

原创文章,作者:迷途小书僮,如若转载,请注明出处:http://www.178linux.com/11082

(0)
迷途小书僮迷途小书僮
上一篇 2016-02-14
下一篇 2016-02-14

相关推荐

  • 程序包管理:rpm、yum以及(make)源代码编译安装

    程序包管理:rpm、yum以及(make)源代码编译安装 在Linux上安装程序一般都有三种方法:源代码编译安装,rpm包安装和rpm包的前端安装yum, (rpm,和yum程序包管理器是针对CentOS6平台的) 程序包管理方式都大同小异:  源代码–>目标二进制格式(二进制程序、库文件、配置文件、帮助文件)–&gt…

    Linux干货 2017-01-10
  • 软件包管理2

    四、程序包编译     程序包编译安装:     Application-VERSION-release.src.rpm –> 安装后,使用rpmbuild命令制作成二进制格式的rpm包,而后再安装     源代码&#82…

    Linux干货 2016-08-27
  • Linux系统程序包管理工具-RPM

    一、rpm是什么 RPM 是RPM Package Manager(RPM软件包管理器)的缩写,这一文件格式名称虽然打上了RedHat的标志,但是其原始设计理念是开放式的。RPM包管理器(RPM)是一个强大的命令行驱动的包管理系统能够安装、卸载、验证、查询和更新计算机软件包。每个软件包包括存档的文件连同包和它的版本信息,描述等。还有一个库API,允…

    Linux干货 2015-11-19
  • Linux http服务

                               Linux http服务   网络服务通信基础:   1、端口号就是进程标识,每个用户最多只能打开1024个进程。   2、MAC地址仅…

    系统运维 2016-11-18
  • zabbix low-level discover 监控端口

    zabbix通过调用jason格式的输出,实现数据的收集 获取端口的shell脚本   #!/bin/bash port_array=(`netstat -tnl|egrep -i "$1"|awk {'print $4'}|awk -F':' '{if ($NF~/^[0-9]…

    Linux干货 2016-06-09
  • grub详解

    grub详解 1、GRUB(Boot Loader): grub:grub 0.x:grub1 legacy传统的版本 grub 1.x:grub2 grub legacy: 第1阶段:mbr 第1.5阶段:mbr之后的扇区中,让第一阶段中的boot loader能识别第二阶段所在分区上的文件系统 第2阶段:磁盘分区(/boot/grub/) 配置文件/et…

    2017-09-03