精华内容
下载资源
问答
  • 本文是Linux Shell系列教程的第(十三)篇,更多Linux Shell教程请看:Linux Shell系列教程 分支语句非常实用,基本上高级语言都支持分支语句(python 没有),大多数都使用switch ... case格式,但是在Shell却...

    本文是Linux Shell系列教程的第(十三)篇,更多Linux Shell教程请看:Linux Shell系列教程

    分支语句非常实用,基本上高级语言都支持分支语句(python 没有),大多数都使用switch ... case格式,但是在Shell却没有switch ... case,不过别担心,Shell是支持分支语句的,只不过使用case ... esac格式而已。二者在本质上是相同的。

    Shell分支case

    一、Shell分支语句case···esac语法

    casein
    模式1)
        command1
        command2
        command3
        ;;
    模式2)
        command1
        command2
        command3
        ;;
    *)
        command1
        command2
        command3
        ;;
    esac

    说明:case后为取值,值后为关键字 in,接下来是匹配的各种模式,每一模式最后必须以右括号结束。

    值可以为变量或常数。

    模式支持正则表达式,可以用以下字符:

    *       任意字串
    ?       任意字元
    [abc]   a, b, 或c三字元其中之一
    [a-n]   从a到n的任一字元
    |       多重选择

    匹配发现取值符合某一模式后,其间所有命令开始执行直至 ;;。

    ;; 与其他语言中的 break 类似,意思是不执行接下来的语句而是跳到整个 case 语句的最后。

    *)与default相似,如果上面没有匹配到的模式,则执行*)里的内容。

    二、Shell分支语句case···esac使用举例

    通过一个例子来学习下case…esac命令:

    #!/bin/sh 
    #auther:linuxdaxue.com
    #date:2016-05-30
    case $1 in
    start | begin)
        echo "I am started!"  
        ;;
    stop | end)
        echo "I am stopped!"  
        ;;
    *)
        echo "Other command!"  
        ;;
    esac

    说明:这个脚本练习的是模式匹配,模式匹配支持‘|’符,有一个条件符合就会执行命令。

    输出:

    $./test.sh start
    I am started!
    $./test.sh stop
    I am stopped!
    $./test.sh begin
    I am started!
    $/test.sh hello
    Other command!

    接下来给大家演示一个通过case…esac语句产生菜单的例子:

    #!/bin/bash  
    #Author:linuxdaxue.com
    #Date:2016-05-30
    #Desc:Shell case菜单练习
    
    clear # 清屏.  
    
    echo "          Contact List"  
    echo "          ------- ----"  
    echo "Choose one of the following persons:"  
    echo  
    echo "[E]vans, Roland"  
    echo "[J]ones, Mildred"  
    echo "[S]mith, Julie"  
    echo "[Z]ane, Morris"  
    echo  
    
    read person  
    
    case "$person" in  
    # 注意, 变量是被""引用的.  
    
    "E" | "e" )  
    # 接受大写或者小写输入.  
    echo  
    echo "Roland Evans"  
    echo "4321 Floppy Dr."  
    echo "Hardscrabble, CO 80753"  
    echo "(303) 734-9874"  
    echo "(303) 734-9892 fax"  
    echo "revans@zzy.net"  
    echo "Business partner & old friend"  
    ;;  
    # 注意, 每个选项后边都要以双分号;;结尾.  
    
    "J" | "j" )  
    echo  
    echo "Mildred Jones"  
    echo "249 E. 7th St., Apt. 19"  
    echo "New York, NY 10009"  
    echo "(212) 533-2814"  
    echo "(212) 533-9972 fax"  
    echo "milliej@loisaida.com"  
    echo "Ex-girlfriend"  
    echo "Birthday: Feb. 11"  
    ;;  
    
    # 后边的 Smith 和 Zane 的信息在这里就省略了.  
    
    * )  
    # 默认选项.  
    # 空输入(敲回车RETURN), 也适用于这里.  
    echo  
    echo "Not yet in database."  
    ;;  
    
    esac  
    
    echo  
    
    #  练习:  
    #  -----  
    #  修改这个脚本, 让它能够接受多个输入,  
    #+ 并且能够显示多个地址.  
    
    exit 0

    说明:这个例子主要为大家演示了如何用case…esac语句产生菜单,让大家可以更形象、灵活的来学习case…esac语句的用法。

    输出:

    Contact List
              ------- ----
    Choose one of the following persons:
    
    [E]vans, Roland
    [J]ones, Mildred
    [S]mith, Julie
    [Z]ane, Morris
    
    E
    
    Roland Evans
    4321 Floppy Dr.
    Hardscrabble, CO 80753
    (303) 734-9874
    (303) 734-9892 fax
    revans@zzy.net
    Business partner & old friend

    上面是输入E参数的输出,输入S或者Z,则会输出如下:

    Contact List
              ------- ----
    Choose one of the following persons:
    
    [E]vans, Roland
    [J]ones, Mildred
    [S]mith, Julie
    [Z]ane, Morris
    
    Z
    
    Not yet in database.

    好了,关于Shell中分支语句case…esac的用法就先为大家介绍到这里,case…esac是一个非常强大的命令,大家可以用其来做非常多的事情,这篇文章仅仅只是入门作用,更多的需要大家在实际使用中多多尝试,多多练习。

    更多Linux Shell教程请看:Linux Shell系列教程


    展开全文
  • linux版本分支

    千次阅读 2017-11-25 21:23:46
    Linux,最早由Linus Benedict Torvalds在1991年开始编写。在这之前,Richard Stallman创建了Free Software Foundation(FSF)组织以及GNU项目,并不断的编写创建GNU程序(此类程序的许可方式均为GPL: General ...

    Linux,最早由Linus Benedict Torvalds在1991年开始编写。在这之前,Richard Stallman创建了Free Software Foundation(FSF)组织以及GNU项目,并不断的编写创建GNU程序(此类程序的许可方式均为GPL: General Public License)。在不断的有杰出的程序员和开发者加入到GNU组织中后,便造就了今天我们所看到的Linux,或称GNU/Linux。

    Linux的发行版本可以大体分为两类,一类是商业公司维护的发行版本,一类是社区组织维护的发行版本

    前者以著名的Redhat(RHEL)为代表,后者以Debian为代表。


    Linux 发行版:

    Redhat,应该称为Redhat系列,包括RHEL(Redhat Enterprise Linux,也就是所谓的Redhat Advance Server,收费版本)、Fedora Core(由原来的Redhat桌面版本发展而来,免费版本)、CentOS(RHEL的社区克隆版本,免费)。Redhat应该说是在国内使用人群最多的Linux版本,甚至有人将Redhat等同于Linux,而有些老鸟更是只用这一个版本的Linux。所以这个版本的特点就是使用人群数量大,资料非常多,言下之意就是如果你有什么不明白的地方,很容易找到人来问,而且网上的一般Linux教程都是以Redhat为例来讲解的。Redhat系列的包管理方式采用的是基于RPM包的YUM包管理方式,包分发方式是编译好的二进制文件。稳定性方面RHEL和CentOS的稳定性非常好,适合于服务器使用,但是Fedora Core的稳定性较差,最好只用于桌面应用。

    Debian,或者称Debian系列,包括Debian和Ubuntu等。Debian是社区类Linux的典范,是迄今为止最遵循GNU规范的Linux系统。Debian最早由Ian Murdock于1993年创建,分为三个版本分支(branch): stable, testing 和 unstable。其中,unstable为最新的测试版本,其中包括最新的软件包,但是也有相对较多的bug,适合桌面用户。testing的版本都经 过unstable中的测试,相对较为稳定,也支持了不少新技术(比如SMP等)。而stable一般只用于服务器,上面的软件包大部分都比较过时,但是 稳定和安全性都非常的高。Debian最具特色的是apt-get / dpkg包管理方式,其实Redhat的YUM也是在模仿Debian的APT方式,但在二进制文件发行方式中,APT应该是最好的了。Debian的资 料也很丰富,有很多支持的社区,有问题求教也有地方可去:)

    Ubuntu严格来说不能算一个独立的发行版本,Ubuntu是基于Debian的unstable版本加强而来,可以这么说,Ubuntu就是 一个拥有Debian所有的优点,以及自己所加强的优点的近乎完美的 Linux桌面系统。根据选择的桌面系统不同,有三个版本可供选择,基于Gnome的Ubuntu,基于KDE的Kubuntu以及基于Xfc的 Xubuntu。特点是界面非常友好,容易上手,对硬件的支持非常全面,是最适合做桌面系统的Linux发行版本。

    Gentoo,伟大的Gentoo是Linux世界最年轻的发行版本,正因为年轻,所以能吸取在她之前的所有发行版本的优点,这也是Gentoo 被称为最完美的Linux发行版本的原因之一。Gentoo最初由Daniel Robbins(FreeBSD的开发者之一)创建,首个稳定版本发布于2002年。由于开发者对FreeBSD的熟识,所以Gentoo拥有媲美 FreeBSD的广受美誉的ports系统 ——Portage包管理系统。不同于APT和YUM等二进制文件分发的包管理系统,Portage是基于源代码分发的,必须编译后才能运行,对于大型软 件而言比较慢,不过正因为所有软件都是在本地机器编译的,在经过各种定制的编译参数优化后,能将机器的硬件性能发挥到极致。Gentoo是所有Linux 发行版本里安装最复杂的,但是又是安装完成后最便于管理的版本,也是在相同硬件环境下运行最快的版本。

    FreeBSD,是一个自由的、免费的类UNIX操作系统(Unix-like),经由BSD UNIX由AT&T UNIX衍生而来,FreeBSD由于法律原因不能称为UNIX,但由于直接衍生于BSD UNIX,并且一些原来BSD UNIX的开发者后来转到FreeBSD的开发,使得FreeBSD在内部结构和系统API上和UNIX有很大的兼容性。由于FreeBSD宽松的法律条款,其代码被好多其他系统借鉴包括苹果公司的MacOS X,正因此由于MacOS X的UNIX兼容性,使得MacOS X获得了UNIX商标认证。

    它并不是一个Linux系统!但FreeBSD与Linux的用户群有相当一部分是重合的,二者支持的硬件环境也比较一致,所采用的软件也比较类似,所以可以将FreeBSD视为一个Linux版本来比较。FreeBSD拥有两个分支: stable和current。顾名思义,stable是稳定版,而 current则是添加了新技术的测试版。FreeBSD采用Ports包管理系统,与Gentoo类似,基于源代码分发,必须在本地机器编后后才能运行,但是Ports系统没有Portage系统使用简便,使用起来稍微复杂一些。FreeBSD的最大特点就是稳定和高效,是作为服务器操作系统的最佳选 择,但对硬件的支持没有Linux完备,所以并不适合作为桌面系统。


    SUSE Linux简称"SuSE",发音为/zuz/,意思为"Software- und System-Entwicklung",这是一句德文,英文为"Software and system development"。现在这家公司的名字再度更改成SUSE Linux。它原德国的 SuSE Linux AG公司发行维护的Linux发行版,是属于此公司的注册商标。2004年这家公司被Novell公司收购。广义上SUSE Linux是一系列Linux发行版,第一个版本出现在1994年初,SUSE现存的最古老的商业发行版之一,起源于德国,而SUSE Linux 针对个人用户。SUSE Linux原是以Slackware Linux为基础,并提供完整德文使用界面的产品。1992年 Peter McDonald成立了Softlanding Linux System(SLS)这个发行版。这套发行版包含的软件非常多,更首次收录了X Window及TCP/IP等套件。Slackware就是一个基于SLS的发行版。


    Mandriva,是目前全球最优秀的Linux发行版之一,稳居于linux排行榜第一梯队。2005年之前稳居linux排行榜NO.1。它是目前最易用的linux发行版,也是众多国际级linux发行版中唯一一个默认即支持中文环境的linux。它是法国的Mandriva公司(前身为Mandrake公司)开发的Linux发行版。Mandriva公司现在仍然是欧洲最大的Linux厂商,Mandriva Linux的前身为著名的Mandrake Linux。Mandriva(Mandrake)项目是世界上第一个为非技术类用户设计的易于使用、安装和管理的linux版本。Mandriva(Mandrake Linux)早期方便的字体安装工具和默认的中文支持,为Linux普及做出了很大的贡献。现在的Mandriva是由mandrake和Conectiva结合发展而来的。


    Slackware,是由Patrick Volkerding开发的GNU/Linux发行版。与很多其他的发行版不同,它坚持KISS(Keep It Simple Stupid)的原则,就是说没有任何配置系统的图形界面工具。一开始,配置系统会有一些困难,但是更有经验的用户会喜欢这种方式的透明性和灵活性。 Slackware Linux的另一个突出的特性也符合KISS原则:Slackware没有如RPM之类的成熟的软件包管理器。Slackware的软件包都是通常的tgz(tar/gzip)格式文件再加上安装脚本。Tgz对于有经验的用户来说,比RPM更为强大,并避免了RPM之类管理器的依赖性问题。Slackware与其他的发行版本(Red Hat、Debian、Gentoo、SuSE、 Mandriva、Ubuntu等)不同的道路,它力图成为“UNIX风格”的Linux发行版本。只吸收稳定版本的应用程序,并且缺少其他linux版本中那些为发行版本定制的配置工具。



    Linux 发行版(移动):

    Android,是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。尚未有统一中文名称,中国大陆地区较多人使用“安卓”或“安致”。Android操作系统最初由Andy Rubin开发,主要支持手机。2005年8月由Google收购注资。2007年11月,Google与84家硬件制造商、软件开发商及电信营运商组建开放手机联盟共同研发改良Android系统。随后Google以Apache开源许可证的授权方式,发布了Android的源代码。第一部Android智能手机发布于2008年10月。Android逐渐扩展到平板电脑及其他领域上,如电视、数码相机、游戏机等。2011年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。 2012年11月数据显示,Android占据全球智能手机操作系统市场76%的份额,中国市场占有率为90%。


    MeeGo,是一种基于Linux的自由、开放源代码的移动便携设备操作系统。它在2010年2月的全球移动通信大会中发布,主要推动者为诺基亚与英特尔。MeeGo融合了诺基亚的Maemo及英特尔的Moblin平台,并由Linux基金会主导。MeeGo主要定位在移动设备、家电数码等消费类电子产品市场,可用于智能手机、平板电脑、上网本、智能电视和车载系统等平台。2011年9月28日,继诺基亚宣布放弃开发meego之后,英特尔也正式宣布将MeeGo与LiMo合并成为新的系统:Tizen。2012年7月,在诺基亚的支持下,Jolla Mobile公司成立。并基于Meego研发sailfish os,将在华发布新一代Jolla手机。


    Chrome OS,是一款基于Linux的开源PC操作系统,定位于上网本、紧凑型以及低成本电脑。这款开源软件将被命名为Chrome OS,谷歌公司于2010年12月7日在美国举行Chrome相关产品发布会,发布会上正式发布Chrome Web store和Chrome OS。Chromium OS是Google Chrome OS计算机操作系统的开源项目,主要是提供给开发者用的,每个人可以检查、修改代码甚至是编译出自己的版本。


    webOS,是一个嵌入式操作系统,以Linux内核为主体并加上部份Palm公司开发的专有软件,它主要是为Palm 智能手机而开发。该平台于2009年1月8日的拉斯维加斯国际消费电子展宣布给公众,并于2009年6月6日发布。该平台是事实上的PalmOS继任者,webOS将在线社交网络和Web 2.0一体化作为重点。第一款搭载webOS系统的智能手机是Palm Pre,于2009年6月6日发售。由于Palm被HP收购,webOS被收归HP旗下。2011年8月19日凌晨,在惠普第三季度财报会议上,惠普宣布正式放弃围绕TouchPad平板电脑和webOS手机的所有运营。


    Tizen,(中文名:泰泽)是两大Linux联盟 LiMo Foundation和 Linux Foundation整合资源优势,携手英特尔三星电子,共同开发针对手机和其它设备的操作系统。该系统整合了LiMoMeeGo两个操作系统,并且预计于2012年2月正式公布。Tizen系统是英特尔MeeGo系统与三星LiMo系统的混合体。  随着惠普放弃开发webOS智能手机和平板电脑,RIM的Playbook艰难求生,诺基亚剧变,运营商们希望能出现一个可替代的新操作系统,没人希望看到Android和iOS双寡头垄断的局面。  同时由于英特尔三星各自在MeeGo及Bada发展遭遇困难,双方便携手全新平台Tizen系统,这样可以降低开发资源与人力,并强化技术及应用程序商店功能,包括宏碁、华硕均将加入Tizen平台开发计划,宏达电也正评估中,Tizen平台是否有机会形成 OS 平台第4势力,与Android、iOS、Windows相较劲,备受业界关注。


    BADA,是韩国三星电子自行开发的智能手机平台,底层为Linux核心。支援丰富功能和用户体验的软件应用,于2009年11月10日发布。bada在韩语裏是“海洋”的意思。bada的设计目标是开创人人能用的智能手机的时代。它的特点是配置灵活、用户交互性佳、面向服务优,非常重视SNS整合和基于位置服务应用。bada系统由操作系统内核层、设备层、服务层和框架层组成,支持设备应用、服务应用和Web与Flash应用。



    Linux 发行版(国内 ):

    RedFlag,红旗Linux是由北京中科红旗软件技术有限公司开发的一系列Linux发行版,包括桌面版、工作站版、数据中心服务器版、HA集群版和红旗嵌入式Linux等产品。目前在中国各软件专卖店可以购买到光盘版,同时官方网站也提供光盘镜像免费下载。红旗Linux是中国较大、较成熟的Linux发行版之一。


    Kylin,中标麒麟(原名中标普华Linux),2010年12月底,中标普华与国防科技大学强强联手进行操作系统方面的技术合作,合作之后的中标普华Linux操作系统更名为“中标麒麟”,而且也进一步更换了新操作系统的Logo。此次合作,是民用“中标普华”操作系统的易操作性与军用的“银河麒麟”的高度安全性在技术上的深层次合作,双方分别将各自的特色性能融合到新操作系统中。中标麒麟操作系统采用强化的Linux内核,分成桌面版、通用版、高级版和安全版等,满足不同客户的要求,已经广泛的使用在能源、金融、交通、政府、央企等行业领域。中标麒麟增强安全操作系统采用银河麒麟KACF强制访问控制框架和RBA角色权限管理机制,支持以模块化方式实现安全策略,提供多种访问控制策略的统一平台,是一款真正超越“多权分立”的B2级结构化保护操作系统产品。


    华镭Linux,通用操作系统RAYS 是由新华科技系统软件有限公司自主研发的中文Linux操作系统。它在Linux稳定内核的基础上融合了多项先进技术,能全面满足政府、公司、个人、家庭在办公、娱乐、学习和教育等多方面的应用需求。此外,华镭通用操作系统全面支持包括龙芯、众志在内的多款国产CPU,实现了“国产CPU+国产操作系统+国产应用软件”的完整产业链。


    Magic Linux,是一个新的Linux发行,简称 MGC,是针对中国人的版本,由中国Linux公社的社区会员和Linux爱好者制作的中文 Linux 发行版,现基于Fedora修改而来。Magic Linux的目的很简单:让大家真正地用Linux,而不是去一个接一个的汉化Linux。Magic Linux的口号是:没有实现不了的梦。2002年,cjacker 在中国Linux公社的论坛发布了自己为了学习而做的 Linux中文版,在 Red Hat 8.0的基础上修改而成,版本1.0。之后 cjacker 投身于北京中科红旗软件技术有限公司,Magic Linux 后续开发遇到了前所未有的困难。KanKer、KDE、sejishikong 等中国 Linux 公社会员加入了开发,重写了 Magic Linux,发布了 Magic Linux 2.0,最终形成了现在独立的稳定发行版本 2.5.X,2012年开发组正积极地研发以 Live 安装为主的 3.0。


    共创Linux,一款基于Linux的桌面操作系统,功能丰富,可以部分地替代现有常用的Windows桌面操作系统。它采用类似于Windows XP风格的图形用户界面,符合Windows XP的操作习惯,让用户使用起来感觉更熟悉,更易用,降低了培训成本。提供了优秀的中文支持能力,字体显示效果十分美观。高度智能化的中文拼音输入法,使用方便、输入效率高,达到Windows下拼音输入法同等的水平。



    Linux 桌面版:

    如果你只是需要一个桌面系统,而且既不想使用盗版,又不想花大量的钱购买商业软件,那么你就需要一款适合桌面使用的Linux发行版本了,如:Ubuntu

    如果你不想自己定制任何东西,不想在系统上浪费太多时间,那么很简单,你就根据自己的爱好在ubuntu、kubuntu以及xubuntu中选一款吧,三者的区别仅仅是桌面程序的不一样。

    如果你需要一个桌面系统,而且还想非常灵活的定制自己的Linux系统,想让自己的机器跑得更欢,不介意在Linux系统安装方面浪费一点时间,那么你的唯一选择就是Gentoo,尽情享受Gentoo带来的自由快感吧!

    如果你需要的是一个服务器系统,而且你已经非常厌烦各种Linux的配置,只是想要一个比较稳定的服务器系统而已,那么你最好的选择就是CentOS了,安装完成后,经过简单的配置就能提供非常稳定的服务了。

    如果你需要的是一个坚如磐石的非常稳定的服务器系统,那么你的唯一选择就是FreeBSD。

    如果你需要一个稳定的服务器系统,而且想深入摸索一下Linux的各个方面的知识,想自己定制许多内容,那么我推荐你使用Gentoo。   


    Linux 服务器:

    CentOS,其实是Redhat的内核,感觉是会成熟稳定一点,相比旧Redhat,他多了一个yum的命令,学Debian一样自动安装软件;但我感觉CentOS的可以Yum的东西相比Debian或Ubuntu实在太少了;CentOS介于年轻与成熟之间,它比Ubuntu更注重安全性,默认一装好就自带并打开防火墙就知道;而且有一个叫SELinux的东东在里面,让不同的程序之间权限有所限制,这也是我装CentOS一些软件经常莫名奇妙地告诉我“没有权限”的一个原因。后来因为一些软件搞了一夜,都没有搞成功,比如VSftp+PAM_MYSQL的认证,一气之下把他格掉了。

    Ubuntu,就是Debian的延续版,apt-get自动安装、更新软件的方式,是Debian首创。相比起来apt-get软件库及源强大很多,也多很多,我们的服务器除了一个magickWand(imageMagick的PHP API),其它东西全部都是apt-get下来的,安装不需要一分钟;感觉Ubuntu更加自由,小巧,灵活,有点年轻人的感觉。

    Gentoo,估计是性能最好的,因为他安装超麻烦;据说他的理念就是,让你明白Linux的每一样东西是如何出来的!全部由你定制来决定。

    FreeBSD,是另外一种类UNIX内核,不属于Linux,适做服务器就是采用FreeBSD,据说是性能最强劲的。但内核不一样,我们这次不敢尝试。



    Linux发行版 (列表)

    基于Debian
     Debian  Ubuntu  Linux Mint
     Knoppix  MEPIS  sidux
     CrunchBang Linux  Chromium OS  Google Chrome OS
    基于Red Hat
     Red Hat Enterprise Linux  Fedora  CentOS
     Scientific Linux  Oracle Linux  
    基于Mandriva
     Mandriva Linux  PCLinuxOS  Unity Linux
     Mageia    
    基于Gentoo
     Gentoo Linux  Sabayon Linux  Calculate Linux
     Funtoo Linux    
    基于Slackware
     Slackware  Zenwalk  VectorLinux
    其它
     SUSE  Arch Linux  Puppy Linux
     Damn Small Linux  MeeGo  Slitaz
     Tizen  StartOS  






    学习资料参考于:

    http://blog.csdn.net/ithomer/article/details/9729933

    展开全文
  • Linux kernel的主线分支只有一个master分支,该分支由Linus Torvalds维护,对于不同的版本的内核是采用打tag的方式进行发布的,一般在发布一个正式版本之前,都会先发布一系列的候选版本,比如linux-5.6最终版发布...

    mainline分支维护

    Linux kernel的主线分支只有一个master分支,该分支由Linus Torvalds维护,对于不同的版本的内核是采用打tag的方式进行发布的,一般在发布一个正式版本之前,都会先发布一系列的候选版本,比如linux-5.6最终版发布之前先发布了linux-5.6.rc1到linux-5.6.rc7,rc值越大越接近最终版本linux-5.6。

    从linux-3.0之后的版本,mainline中的内核版本号只涉及主版本号和次版本号两个:linux-x.y,对于我们在网上搜索到的linux-x.y.z版本的内核一般都是指stable版本,stable版本会在主版本和次版本之后再多一个版本号,用来记录稳定版的更新。

    stable分支维护

    以linux stable仓库为例,针对不同的大版本内核做了不同的分支:

    比如 linux-5.6.y 分支,表示的实际上就是linux-5.6版本stable内核,它的提交历史:

    1.当Linus Torvalds维护的mainline分支中发布了linux5.6之后(commit节点被Linus Torvalds标记tag为linux5.6),从mainline分支中checkout出来一个分支linux-5.6.y,此时linux-5.6.y分支的状态也就是linux-5.6的最终版本。

    2.后续linux-5.6.y分支的维护将由stable分支维护者进行维护,内核版本号变为linux-5.6.y,这里的y从1开始以此递增。

    3.自此之后linux-5.6.y stable分支将和Linus Torvalds维护的mainline分支分道扬镳,mainline继续新特性的开发,stable则只会合入特定的一些patch以保证稳定性,并且定期打上tag:linux-5.6.y。

    linux-next

    下一个周期补丁合并的主要树是linux-next,由Stephen Rothwell 维护。根据设计 linux-next 提前包含了下一个合并窗口要合并的patch,理论上应该是下一个合并窗口关闭之后主线应该要成为的样子。可从以下位置下载:

    
    http://www.kernel.org/pub/linux/kernel/next/
    

    Linux-next 已经成为内核开发过程中不可或缺的一部分;在一个给定的合并窗口中合并 的所有补丁都应该在合并窗口打开之前的一段时间内找到进入Linux-next 的方法。当Linus发布一个Mainline主线内核时,一个为期2周的主线合并窗口就会打开,在此期间,mainline分支会从linux-next以及各个子模块的维护者处接收合并patch,当合入一些patch后,就会形成下一个版本的rc候选版本,一般会经历多个rc版本,等待时机成熟,就会发布下一个版本的Mainline内核。

    
    The primary tree for next-cycle patch merging is linux-next, maintained by
    
    Stephen Rothwell.  The linux-next tree is, by design, a snapshot of what
    
    the mainline is expected to look like after the next merge window closes.
    
    Linux-next trees are announced on the linux-kernel and linux-next mailing
    
    lists when they are assembled; they can be downloaded from:
    
    
    
        http://www.kernel.org/pub/linux/kernel/next/
    
    
    
    Linux-next has become an integral part of the kernel development process;
    
    all patches merged during a given merge window should really have found
    
    their way into linux-next some time before the merge window opens.
    
    
    展开全文
  • 前一节给大家介绍了linux的应用场景,今天给大家介绍一下Linux常见的发行版本。 将linux内核源码打包编译成二进制文件,并做一定程度的客制化,使其能够友好地为客户端所接受和使用是一件颇为复杂的事情。因此,...

    前一节给大家介绍了linux的应用场景,今天给大家介绍一下Linux常见的发行版本。

    将linux内核源码打包编译成二进制文件,并做一定程度的客制化,使其能够友好地为客户端所接受和使用是一件颇为复杂的事情。因此,大量linux发行商涌现,也就出现了大量的linux发行版本。我们没有必要把每一个发行版都单独拎出来学习。因为其中很大一部分发行版你可能一辈子都不会遇到。而且,各个发行版之间是遵循着一定标准的(LSB:Linux Standard Base),因此,当你熟悉一种发行版再去碰其他的发行版,感觉会非常熟悉,甚至不需要进行二次学习。

    主流分支

    目前主流的三大分支:Debian、Slackware(SUSE)、RedHat。

    其中,基于Debian二次开发的Ubuntu知名度较高,早期是为了桌面应用而发行,现在在服务器端也有着不俗的表现。

    Slackware系列中较为抢眼的应该是openSUSE,同样有着不错的市场占有率

    RedHat系较为著名的分支颇多,有Fedroa(早期为个人桌面版,目前不仅限于桌面领域),RHEL(红帽企业版),Centos(红帽企业版的二次发行版。社区企业版)

    这里要提及一下,Centos和RHEL之间的爱恨情仇。

    Centos和RHEL之间的爱恨情仇

    红帽企业版遵循GPL协定,因此所有人都可以从互联网下载并使用。但是如果系统出现了漏洞或者bug,更新的程序红帽只提供源码包。而计算机只能执行二进制指令,因此使用者只能从源码编译安装。如果你想要编译完成的程序,则需要向红帽支付相关的服务费。如果软件要升级,不给钱还是只有源码包,因此对未付费的企业来说,简直就是“噩梦”。

    后来就出现了一群大侠,他们吧红帽提供的源码包,以完全与红帽兼容的方式编译好,开源提供。任何人都能使用和下载,他们把这一发行版本称为Centos。

    不过在2014年,Centos被红帽收购了,以后还会不会免费,这个说不准,不过至少四年过去了,他依然是免费的,不是么?

    选择哪一款入门

    我们说过,linux各大发行版之间遵循着LSB标准,所以当你熟悉了一款发行版后,熟悉其他的发行版学习代价极小,而且很多Linux发行版市场占有率并不高,以后未必能遇见。因此不必过分纠结于学哪一个发行版,选择一个市场占有率高、免费的发行版即可,本教程选用的是Centos,现在Centos最新的发行版是2018年5月发行的Centos7.5,如果不做特别申明,以后的教程示例以Centos7为例。于此同时,Centos6还依然活跃,因此我会兼顾Centos6和Centos7,至于Centos5,大概是半截脖子入土的老古董了,大可不必深究。

    接下来我会介绍Centos6和Centos7的安装,再此之前,希望读者先行安装VMware Workstation Pro。这款软件可以让你利用你的电脑硬件资源虚拟出一台虚拟机,与物理机几乎没有差别。至于这款软件的下载与安装,大家可以自行百度一下,网络上有大量资源与教程。

    关注公众号获取每日更新:

     

    展开全文
  • Linux珍藏系列图书

    千次阅读 2010-01-31 21:32:00
    第1章 Linux概述 2 1.1 Linux的起源和发展 2 1.1.1 Linux的起源 2 1.1.2 追溯到UNIX 2 1.1.3 影响世界的开源潮流 3 1.1.4 GNU公共许可证:GPL 4 1.2 为什么选择Linux 4 1.2.1 作为服务器 4 1.2.2
  • 在上一篇文章:Linux Shell系列教程之(十三)Shell分支语句case … esac教程 的最后,我们简单的介绍了一下使用case…esac来建立菜单的方法,其实shell中还有另外一种更专业的建立菜单的语句:select语句。...
  • Linux 介绍 1)Linux怎么读 Linux读法有很多,有十多种。 通常这三种读法是比较常见的:【里纽克斯】、【里尼克斯】、【里纳克斯】。 2)Linux的特点 首先Linux是一款操作系统。 它免费、开源、安全、高效、稳定、...
  • 本文是Linux Shell系列教程的第(九)篇,更多shell教程请看:Linux Shell系列教程 判断语句是每个语言都必不可少的关键语法,Shell命令当然也不例外。今天就给大家介绍下Shell判断语句 if else 用法。 ...
  • Linux Shell超详细系列教程

    千次阅读 2016-06-17 15:14:21
    系列适合Linux初学者,属于Linux入门级教程,主要介绍了Shell的分类、语法格式以及脚本的使用和编写格式等。 不断更新中,是Shell学习的必读经典教程。 现主要包含以下文章: Linux Shell系列教程之(一...
  • linux 各个系列介绍(转)

    千次阅读 2012-11-28 10:16:24
    Linux操作系统的发行版本可以大体分为两类,一类是商业公司维护的...Redhat,应该称为Redhat系列,包括RHEL(Redhat Enterprise Linux,也就是所谓的Redhat Advance Server,收费版本)、Fedora Core(由原来的Redhat桌
  • 嵌入式Linux开发系列之一: 走进嵌入式Linux的世界内容:一、嵌入式系统二、嵌入式Linux三、关键技术四、小结五、参考资源关于作者<!--相关内容:介绍介绍 -->
  • 01-从Linux内核角度看linux系统编程 02-进程逻辑空间课堂答疑 03-fork系统调用实现剖析-王保明 04-fork系统进程测试框架及学习方法说明 05-僵尸进程孤儿进程知识点 06-中午课程复习 07-ue编辑开发环境 08-多...
  • Linux 4.20内核系列发布两周后,著名的内核开发人员Greg Kroah-Hartman今天发布了第一个维护更新Linux 4.20.1,标志着新分支稳定并可以进行大规模部署。Linux 4.20内核系列由Linus Torvalds于2018年12月23日发布,它...
  • 1.单分支if条件语句 if [ 条件判断式 ]; then 程序 fi 或者另外一种形式 if [ 条件判断式 ] then  程序 fi 注意: 1.if语句使用fi结尾,和一般的语言使用大括号结尾不同 2.[ 条件判断式 ]就是使用test...
  • 想知道到Linux操作系统的真相么,想知道Linux操作系统中藏有的内在奥义么,只有我来给大家全面讲解介绍Linux操作系统。Linux操作系统的发行版本可以大体分为...Redhat,应该称为Redhat系列,包括RHEL(Redhat Enterprise
  • Linux Linux 集群

    千次阅读 2011-09-02 09:13:52
    Linux 集群 Page navigation 什么是集群?集群分类基于 Linux 的集群Linux 服务器集群系统Linux 高性能计算集群集群系统 MOSIX构建 Linux 集群IBM 与 Linux 集群 本专
  • 嵌入式Linux开发系列之一

    千次阅读 2006-03-07 13:23:00
    目前几乎每个半导体制造商都生产嵌入式处理器,并且越来越多的公司开始拥有自主的处理器设计部门,据不完全统计,全世界嵌入式处理器已经超过1000多种,流行的体系结构有30多个系列,其中以ARM、PowerPC、MC 68000、...
  • 马哥Linux系列之零基础企业级Linux系统工程师网络高级就业班培训 下载地址 http://www.kuaipan.cn/file/id_192202874577511548.htm?source=1 课程内容 Linux系统基础(RH124) 1、 操作...
  • 著名的Linux内核开发人员Greg Kroah-Hartman在周末宣布,最新的Linux 5.3内核系列现已标记为稳定并且可以大规模部署。 Linux Kernel 5.3正式版由Linus Torvalds于9月15日发布,是面向GNU/Linux发行版本的最新和最...
  • 本文是Linux Shell脚本系列教程的第(十二)篇,更多Linux Shell教程请看:Linux Shell脚本系列教程 在上两篇文章Linux Shell系列教程之(十)Shell for循环和Linux Shell系列教程之(十一)Shell while循环中,...
  • 创建项目分支 每个员工开发期的代码互不干扰,并行开发,则每人使用一条分支 项目开发中公用分支包括master、dev 分支master用于发布,默认分支,当需要发布时将dev分支合并 分支dev开发阶段性的代码合并,每个...
  • linux

    千次阅读 2010-08-25 19:36:00
    linux百科名片Linux是一类Unix计算机操作系统的统称。Linux操作系统的内核的名字也是“Linux”。Linux操作系统也是自由软件和开放源代码发展中最著名的例子。严格来讲,Linux这个词本身只表示Linux内核,但在实际上...
  • 第1章 Linux是什么与如何学习 1.1 Linux是什么  Linux的核心是1991年由托瓦兹(Linus Torvalds)基于386的计算机开发的; 1.1.1 Linux是什么?操作系统 / 应用程序  Linux就是一套操作系统,拥有操作系统的...
  • 初学Linux很土鳖?带你认识Linux,如何安装Linux

    万次阅读 多人点赞 2020-05-07 00:46:43
    Description:怀着对Linux的好奇,今天终于开始学习Linux了。一直以来都是用微软的Windows进行操作,Windows也是当今最流行最火的操作系统,殊不知还有个Linux。两者各有千秋吧。今天我也是怀着激动心情学习Linux,...
  • Linux 就该这么学

    万次阅读 多人点赞 2018-08-14 00:44:41
    本书源自日均阅读量近万次火爆的线上同名课程,口碑与影响力俱佳,旨在打造简单易学且实用性强的轻量级 Linux 入门教程。 本书基于红帽 RHEL 系统编写,且内容通用于 CentOS、Fedora 等系统。本书共分为20章,内容...
  • Linux

    千次阅读 2018-09-07 17:48:30
    Linux 在服务器领域的应用是其重要分支 Linux 免费、稳定、高效等特点在这里得到了很好的体现 早期因为维护、运行等原因同样受到了很大的限制 近些年来 Linux 服务器市场得到了飞速的提升,尤其在一些高端...
  • 从零开始学习Linux笔记

    万次阅读 多人点赞 2020-05-15 19:12:14
    从零开始学习Linux,记录笔记,担心自己以后会忘,也供大家茶余饭后,闲来无事看看,自己的理解只能到这,也希望大家可以指出我的错误 让我可以有一点点进步,以后会一直更新
  • clear linux

    千次阅读 2019-02-14 13:51:28
    Intel出的一个linux发布,据说做了很多云化和容器相关的优化; https://clearlinux.org/ 镜像下载地址 https://download.clearlinux.org/image/ 学习一下 https://github.com/clearlinux   来源: 2018最佳...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 33,965
精华内容 13,586
关键字:

linux分支系列

linux 订阅