Linux世界那些令人印象深刻的发行版

在《老司机的操作系统游记》这篇博文里,我曾建议那些对电脑强烈爱好、并想玩好电脑,以及开发者开始使用 Linux 系统。某些人可能心动了,就问度娘(虽然我很想说那啥,但没梯子做不到啊!),结果会发现许多诸如UbuntuLinux MintCentOS等字眼。许多 Linux 菜鸟就可能“晕菜”了,这都是什么嘛,我只是想装个 Linux ,这都什么鬼,为何要互相伤害!

kernel & distro

要解决这个疑问,我觉得要先弄清楚两个概念,即内核(kernel)发行版(distro)

  • 内核(kernel): 内核是一个操作系统的核心部分,提供诸如调度管理、资源管理、内存分配等等最最基本的功能,换言之,仅有内核只能让计算机启动并进入”standby”状态,是做不了任何具体事务的。用户要操作电脑,还需要内核之上的各种工具或者应用。
  • 发行版(distro):仅提供内核,我相信绝大部分用户是无法使用电脑的,为方便用户,于是就有人或者公司,将一些常用的工具、应用、环境整合在一起,打包成镜像提供给用户安装使用。这种镜像包便称为发行版。可以简单地按这个公式理解: distro = kernel + toolset

Linux 严格意义上来讲只是一个kernel,而基于这个内核的发行版实在太多, Linux 就成了一类系统的统称。如此来说,大家熟知的Android其实也是个 Linux 系统?我说是,你可能觉得有些不可思议,接着可能问:那我能不能在自己电脑上装Android?当然可以,只要Android提供相应的发行版就行。巧合的是,Android还真有x86的版本,而且完全可以装在电脑上运行。但我不建议大家在电脑上使用,毕竟它是一个移动端的系统,你如果强行在电脑上使用,不是不可以,只是可能很费劲。

聪明的人善于利用工具,合适的工具能起到“事半功倍”的效果,反之,则可能是浪费精力。对于那些 Linux 新人来说,面对“浩如烟海”的发行版,该如何选择适合自己的 Linux 系统呢?现在,我就介绍下自己使用过的那些让人印象深刻的 Linux 发行版。

Linux Mint

如果你是一名普通的电脑使用者,听人说过 Linux ,并好奇想体验下,那么 Linux Mint 将是你最好的选择,它是 Windows 绝佳的替代者。

Linux Mint 基于下面即将介绍的 Ubuntu ,继承了其众多优点,同时也加入了很多自己的优秀特性,是一个免费、高效、易用、高雅的桌面 Linux 发行版,具有精美的界面,极快的响应速度,最最关键的是,它“开箱即用”,预装浏览器、邮件、多媒体、办公处理等满足学习工作娱乐基础需求的应用,若没特殊需求,你甚至可以不用安装其他应用和工具。这对许多普通用户很具吸引力,即便要安装应用,它提供的图形化安装管理器,用户可以像在 Windows 上那样安装卸载应用,而且还完全兼容 Ubuntu 软件源。像升级内核、安装源配置、桌面定制等相对比较高级的操作,也有相应用的图形应用来帮用户解决。 Linux Mint 的桌面和菜单简单易用,整体设计功能与 Windows 很相近,这对于那些习惯 Windows 的普通用户,更容易接受。

Linux Mint 默认桌面环境是Cinnamon,一款由GNOME衍生出的并专为 Linux Mint 打造的桌面环境,拥有的清晰、简洁的外观设计,提供桌面部件功能,程序加载与显示速度令人满意,功能配置图形化并具有相当灵活性,整体表现相当稳定。许多用户甚至因为Cinnamon而选择 Linux Mint

当然,如果你不喜欢Cinnamon, Linux Mint 还提供基于MATEXfceKDE桌面环境的发行版本,如果你对这些没有一个清晰的概念或者感受的话,我建议还是使用 Linux Mint 推荐的Cinnamon,毕竟它是专为 Linux Mint 定制开发的,其稳定性肯定更有保障。

原版 Linux Mint 基本没有专门为国内用户定制,虽然安装后,用户的上网、听歌、看电影等基本需求完全没问题,而且国外知识产权意识比较强烈,许多大家常用的应用,因版权等问题,没有预装,所以要玩得爽,可能还要自己做一些定制化的工作。当然,这里面最最关键的是,它没有QQ,可能也没自己喜爱的中文输入法,而这些可能刚好没有 Linux 版本,用户如果自己折腾Wine等玩法,那还是需要一些功底的。于是,网上就出现了一些所谓的“无忧”的再封装版本,有些甚至还要支付一些费用才能得到。说实话,这些号称“无忧”的版本,恰恰还真不能让我无忧,毕竟它们分发的渠道太不正规了,而且你根本不知道人家在里面加了些什么,如果人家在里面藏点私货,即使是 Linux 的老手,也无把握不中招。所以,我强烈不推荐大家去使用这些再封装的版本。

Linux 给人最爽的是“掌控一切”的感觉,如果你需要所谓的“无忧”的版本,那还不如自己去玩 Windows 呢!其实你要知道,你遇到问题,别人很可能也遇到过,而且还有些聪明加无私的人,他们还把自己的经验总结出来分享给大家。Wine装QQ很难吗?不难,人家甚至都把东西都封好成deb包啦,你下载下来双击就能完成安装。关键是你要去寻找并鉴别,更需要自己动手去折腾,否则,我们为何还要使用 Linux 呢?

Ubuntu

如果你是一名开发者,相信你肯定听说甚至使用过 Ubuntu,在开发者圈里,它应该是流行度最高,当然也是我使用时间最长的 Linux 系统。

Ubuntu 基于下面要介绍的 Debian , 最初采用GNOME桌面环境,后来改用基于GNOME定制开发的Unity桌面。 Unity受到很多人批评,认为它过于复杂,也会偶尔抽个疯,让你挠头几天也无法解决。即便Unity有不完美的地方,个人觉得它还是很不错的,相对GNOME,它的功能增强还是非常明显的。

Unity桌面有一定的专业性及复杂性,不建议新手使用,对某些追求简洁高效的开发者而言,他们也很难喜欢。幸好,Ubuntu 有个庞大的家族,有基于MATEUbuntu MATE,基于KDEKubuntu, 基于XfceXubuntu,基于LXDELubuntu,你完全可以根据自己的喜好选择,但我还是建议大家使用 Ubuntu,毕竟它才是嫡长子,开发投入最多,遇到问题,查询解决的途径更多。另外,它还有众多的衍生版本,比如用于服务器的 Ubuntu Server,专为国内用户定制的 Ubuntu Kylin、国内深度定制的 Deepin Linux,以及其他诸如 GobuntuUbuntu StudioUbuntu JeOS 等等,上面刚说过的 Linux Mint 也应该算是它的家族成员,而且它还有移动版本,整个生态发展十分繁荣,毫不夸张地说,它完全可以算得上是 Linux 世界的一哥,近些年来稳坐头把交椅。

Ubuntu 每半年发布一个版本,每两年发布一个LTS版本。目前最新的LTS版本是16.04,追求尝鲜的,可以选择最新版本,追求稳定的,则建议选择最新的LTS版本。

Ubuntu 对硬件要求不高,基本五年前的主流电脑跑起来丝毫不费力气,如果你的电脑配置实在太低,也可以选择 Lubuntu 或者 Xubuntu ,它们更轻量级。所以如果你家里还有旧电脑,跑 Windows 比较吃力的话,不妨就装 Ubuntu 玩玩,也算得上“废物利用”啦。

Ubuntu 想配置得像 Windows 那样易用还是很有难度的(废话!如果简单的话,你让Linux Mint情何以堪!)。开发者有比较专一的需求,除过复杂的.Net或者Windows开发,其他的通过定制,都能达到需求,其中大部分可能还比 Windows 平台上的方便。但对于普通用户多样化的需求,可能就很难达到要求,如果你对电脑特别感兴趣,我相信你应该可以鉴别,对这部分的,完全没必要强求,实在不行,咱就在 Windows 上解决。

因此,对普通用户,我建议 Ubuntu 应该与 Windows 装双系统使用,如果你手头有多余的旧电脑,也可以在旧电脑上装它,在闲暇时尽情折腾,这才是普通用户最好的选择。

Debian

Debian 是个伟大的系统,虽然普通用户或者开发者很少使用原生的 Debian ,但占据 Linux 桌面大半江山的 Linux MintUbuntu , 它们都是站在 Debian 这个巨人肩膀上的。 Linux 世界赫赫有名的APTdpkg也是它提供的。可以这么说,没有 DebianLinux 世界要冷清许多,特别是桌面领域,肯定不会有当今的繁荣局面。在这里,我们(特别是开发者)需要对 Debian 表达一份自己的敬意。

Debian 的发行及其软件源有五个分支:旧稳定分支(oldstable)、稳定分支(stable)、测试分支(testing)、不稳定分支(unstable)、实验分支(experimental)。目前稳定分支的代号Jessie,发布于2015年。

Debian 是相当基础的发行版本,对用户的专业性要求更高,在普通用户和开发者中的流传度不高,主要还是用于专业领域的服务器上。当然,它最大用途还是进行再封装发行衍生出更适合某些领域使用的其他版本。

我曾尝试使用过原生版,说实话,太难受了,相对来说,无论是配置还是软件资源,都需要付出很大的精力,不像基于他的发行版本,有许多现成的环境。在他上面,许多东西都需要自己去折腾,甚至还需要进行大量的源码编译,而且编译之前,很可能还需要做各种定制与配置。

这个系统强烈不建议普通用户使用,如果你想尝鲜,或者是部分专业领域的开发者想学习它,那我建议你使用虚拟机安装尝试。

Arch Linux

Arch Linux 应该说是我个人最喜欢的一个 Linux 发行版,它最大特点就是滚动升级,完全靠网络分发,不像其他常见的发行版或基于 Debian,或基于 Red Hat,它完全是一个独立的发行版本。

Arch Linux 从安装就是一个定制构建的过程,所有的安装配置基本都是基于命令,对使用者的要求很高。它以pacman进行包管理,所有软件安装,包括内核,都提供最新的,软件源也可以根据自己的需要灵活配置,可以这么说,它是一个为“极客而生”的系统。

Arch Linux 是一个可玩度很高的系统,真正喜欢折腾的人,会很享受它带来的那种“一切自己做主”的感觉,连桌面环境,启动引导,都需要自己定制,各种驱动安装,以及输入法配置,都可以按自己的需要来进行定制。安装完这个系统后,特别是自己定制完自己的桌面后,你完全有一种“自己搞了一个系统”的感觉,而且它只属于你自己,为你而生,天然具有精简、优雅、便捷的特点,那种感觉,可以让你兴奋都几晚上睡不着觉,而且你还会有股强烈向别人炫耀的冲动,那股激情久久都无法散去。真的,丝毫没有夸张,这可是我亲身感受。

Arch Linux 滚动升级,提供最新软件源,你可以此来尝鲜各种最新技术(特别是 Linux 内核的新技术),进行各种新技术的验证学习,而且AUR软件仓库可以称得上是世界上最全的 Linux 软件源,有丰富的Wiki资料与活跃的社区,只要你是真正热爱它,并真喜欢折腾,那么肯定能找到不少志同道合者。

Arch Linux 需要较深的功底,一定的 Linux 知识,不建议你将他做为自己的第一个 Linux 系统。如果你喜爱折腾,热爱 Linux 技术,那么请你千万不要错过 Arch Linux。后面我会抽空专门写篇博文介绍如何去构建一个自己喜爱的 Arch Linux 桌面系统,敬请期待。

Manjaro

看了上面我对 Arch Linux 的各种溢美之词,你是不是有些蠢蠢欲动呢?正如我上面所说,对 Linux 菜鸟而言,它还是比较难驾驭的,但如果你有强烈的好奇心想感受下 Arch Linux ,也并不是完全没有机会, Manjaro 就是你比较好的选择。

Manjaro 基于 Arch Linux ,继承了其滚动升级的特点,可以直接使用AUR软件仓库,它采用了图形化安装程序,使安装过程非常轻松、人性化,同时也把安装 Arch Linux 后的大量繁琐工作,如安装配置显卡驱动、AUR、X服务、桌面环境、中文输入法、Flash插件、音频解码器、显示管理器等等,全都做到位了,为新手解决了大麻烦,也为高级用户节省了大量时间。

如果你也喜欢 Arch Linux,但对 Linux 经验有限或者不想耗费太多时间在配置查阅资料文档上面,那么我建议你先玩 Manjaro ,通过它积累一些经验,再去折腾 Arch Linux,非 Linux 老鸟,不建议将它做为自己的主力开发机的系统,我觉得玩 Arch Linux 最大的乐趣就是折腾,既然是折腾,就会有很大风险,万一出点问题,追悔莫及,最好还是在虚拟机上使用,个人观点,老鸟勿喷,特别是 Arch Linux 的“死忠粉”(其实我也是它的死忠粉,手下留情!)。

Deepin Linux

Deepin Linux 是国内深度定制做得最好的,最初基于 Debian,后来改为 Ubuntu,听说最近又改为 Debian。支持“开箱即用”,并为国内环境做了大量定制,预装搜狗中文输入法、Wine版QQ,并为国内用户定制相当多的应用,如深度影院、深度音乐、深度看图等等,很适合国内用户使用。

Deepin Linux 桌面界面精美,即使放眼世界优秀的 Linux 桌面系统,我觉得也算得上首屈一指。与国内其他诸如红旗、麒麟之类的,完全可以秒它们好几条街。不过说实话,我使用它的时间不长,后期也偶有关注。究其原因,很可能就是它太耗资源,响应速度也不尽如人意,在虚拟机上,体验更是差强人意,而且相对而言,其定制性与可玩性比其他差得有些远,加上稳定性也不如人意,所以我对关注度不是太高。

Deepin Linux 最大的特点就是“中国造”,原生支持中文环境,其预装应用也依据国人习惯进行了改造,作为国人定制的最佳系统,还是很适合那些想体验 Linux ,却不愿意费神去折腾各种中文环境以及国内特色应用的人去使用。

RedHat Linux

RedHat 昵称“小红帽”,是老牌的 Linux 发行版,我接触的第一个 Linux 系统,我大学里一直使用。后来Redhat公司关注于企业领域,推出 RHEL(Red Hat Enterprise Linux) 版本,这是商业版本,需要付费获取授权,Redhat公司提供技术支持,在企业特别是大型企业和金融相关企业非常流行。凭借 RedHat LinuxRedHat公司成为 Linux 领域的龙头企业,富有号召力,也是目前最大的开源技术企业之一。

最新个人版是 RedHat Linux 9 ,发布于2003年,已经有十几年的历史,但仍很有市场,许多怀旧的 Linux 老鸟至今仍在使用它。 RedHat Linux 作为 Linux 系统的开路先锋,为 Linux 的普及立下过汗马功劳,虽然现在我不太建议大家去使用它,但它为 Linux 世界留下的东西太多太多啦,影响最深远可能就是RPM啦,另外它对桌面的贡献,也不能低估,所以,对于有兴趣接触使用 Linux 的人来说,我们不应该遗忘它。

CentOS

RedHat Linux 作为一款非常非常优秀的系统,因种种原因,特别是商业的原因,消失在历史长河中,不得不令许多热爱它的人们十分伤感,对当今很多喜爱它却错过它的人而言,不用遗憾,有一个非常好的继承者在沿续着 RedHat Linux 的脚步,它就是 CentOS

CentOS(Community Enterprise Operating System) 来自于 RHEL ,是其依照开放源代码规定所释出的源代码所编译而成(Linux内核是开源产品,按照开源协议,以此为基础源代码应该继续开源,相关信息读者请自行查阅资料),由开源社区驱动的企业级 Linux 系统(当然个人也可以使用)。

CentOSRHEL 源代码再编译的产物,并且在 RHEL 基础上修正了不少已知的Bug,而 RHEL 源自于夙以稳定著称的 RedHat Linux,其稳定性肯定更值得信赖,于是成为大量中小企业服务器首选的 Linux 系统,在服务器领域,占据大半江山。

CentOSyum管理软件包,其默认软件源也许不是最新版本,但绝对是功能最稳定的版本,是经过众多企业与开发者检验的,当然它不可能是最全的,如果有需要,使用者可以自行添加或是安装一些三方源,但是在服务器上,还是谨慎操作为好,不要轻易添加三方源,即使万不得已要添加,也千万要谨慎选择口碑比较好的。

yum还支持插件扩展,社区提供了许多功能优异的插件,比如fastestmirror插件(该插件yum预装),它会自动让yum服务去连接速度最快的镜像源,以提供软件包更快的下载速度,有关yum更多的功能扩展,感兴趣的可进一步查阅相关资料了解。

CentOS 基本每两年更新一个大版本,每半年进行一次版本更新,以期建立一个安全、低维护、稳定、高预测性、高重复性的 Linux 环境。它上面软件更新相对其他发版悄显缓慢,但贵在稳定,毕竟在定位于企业服务,稳定是第一位的,在这方面,它做得相当不错。

CentOS 桌面功能不算强大,界面也算不上精美,普通用户,不推荐这个系统,但你如果是开发者,特别是做服务器相关开发的,我建议开发机还是安装 CentOS 系统,毕竟这样你的开发环境也线上环境比较一致,开发过程中的一些问题,也许可以提前发现,虽然随着Docker的出现,环境一致性已经不再成为一个比较苦恼的问题,但作为服务端开发人员,对线上服务器运行操作系统多了解一些,终归是有好处的。对于那些想学习或者了解服务器系统的读者,也可以采用虚拟机安装体验学习。

Fedora

Fedora 最初只是一个为 Redhat Linux 制作与发布三方软件包的开源社区,Redhat Linux 9 之后, RedHat公司决定关注企业领域,Redhat Linux 被捐赠给Fedora Project,在个人桌面领域,Fedora 正式取代 Redhat Linux

Fedora 对于用户而言,它是一款功能完备,更新快速的免费系统,对于RedHat公司而言,它是许多新技术的测试平台,那些被用户接受的技术,很可能最终会加入到 RHEL中。事实上,Fedora 除了由开源社区许多志愿者维护外,不少RedHat公司的员工也参与了开发,而且 Fedora Project 主要还是由RedHat赞助。

Fedora 每半年更新一个版本,最新的 Fedora 25 在2016年11月发布。它也算得上是一个比较古老的发行分支,并衍生出众多的发行版本,说来可笑,貌似它衍生版本还真没几个弄叫上名来的。

Fedora 个人使用不多,这里不做过多介绍与评价,感兴趣的读者可以自行查阅相关资料。

openSUSE

openSUSE 也算得上是比较古老的发行版本,项目最初由SUSU赞助,前期发展迅速,势头很好,后来被Novell收购,然后Novell又被别人收购,因商业投入及运作的原因,openSUSE 发展速度减缓,只到近几年,它发展又有了新的起色。

openSUSE 在欧洲很受欢迎,发行量在欧洲能排到第一,桌面环境默认采用KDE,以德国人的严谨,整体功能十分完善,界面也很精美,是个值得个人用户尝试的发行版本。

openSUSE 虽然历史比较悠久,但中途因商业并购及投入等问题,严重影响了它的发展,甚至一度出现停滞的状态,错过了那段发展的黄金时间,所以它的影响,远没有 Ubuntu 那么大,虽然近几年有些觉醒的感觉,也有些奋起直追的架势,但整体来说,它的整个生态繁度,远远不及 UbuntuCentOS

普通用户可以尝试,开发者保持一定关注即可,可以使用,但不是特别推荐,毕竟它的环境搭建方面,可能需要耗费更多的心思,而且软件包也不是很丰富,而且相对来说比较沉旧。当然,这是我们几年前使用它的感觉,听说这几年发展很快,但有多大的改观,我还没去亲身体验,不敢枉下结论。

CoreOS

CoreOS 是应近年来云计算兴起而出现的一个发行版,特别是近两年以Docker为代表的容器化技术迅猛发展,更促进了 CoreOS 快速发展。

CoreOS 于2013年发布,2014年7月才发布第一个稳定版本,如今基本所有云服务商都提供 CoreOS 支持,大量数据中心也运行着 CoreOS ,由此可见它发展的速度。

CoreOS 有两个显著特点:

  • CoreOS 采用双系统分区(dual root partition),两个分区分别被设置成主动模式和被动模式。主动分区负责系统运行,被动分区负责系统升级。一旦新版本的操作系统被发布,一个完整的系统文件将被下载至被动分区,并在系统下一次重启时从新版本分区启动,原来的被动分区将切换为主动分区,而之前的主动分区则被切换为被动分区,两个分区扮演的角色将相互对调。同时在系统运行期间系统分区被设置成只读状态,这样也确保了 CoreOS 的安全性。CoreOS 的升级过程在默认条件下将自动完成,并且通过 cgroup 对升级过程中使用到的网络和磁盘资源进行限制,将系统升级所带来的影响降至最低。
  • CoreOS 没有提供包管理工具,而是通过容器化 (containerized) 的运算环境向应用程序提供运算资源。应用程序之间共享系统内核和资源,但是彼此之间又互不可见。这样就意味着应用程序将不会再被直接安装到操作系统中,而是通过 Docker 运行在容器中。这种方式使得操作系统、应用程序及运行环境之间的耦合度大大降低。相对于传统的部署方式而言,在 CoreOS 集群中部署应用程序更加灵活便捷,应用程序运行环境之间的干扰更少,而且操作系统自身的维护也更加容易。

从上面两个特点可以看出,CoreOS 是专为云计算大规模服务器集群而生,所以它是不适合普通用户使用的,而且它不提供包管理工具,无桌面环境,普通用户拿它做不了任何事情。对于开发者,要以它做开发也是不太现实的。现在技术已经发展云时代,大集群、微服务、容器化已经成为当前技术主流,所以如果开发者(特别是服务端开发者)不去了解 CoreOS 是完全不现实的。如何去了解学习 CoreOS 呢,还是得通过虚拟机,去创建 CoreOS 服务器集群,以此来学习 CoreOS

Alpine

Alpine 是一款极度轻量极的 Linux 发行版,主要是因近年来移动嵌入式发展而出现的。目前主要用于嵌入式设备以及Docker镜像。不适合普通用户使用,相关开发者可以通过Docker容器学习,当然有条件的开发者,也可以在树莓派 (RASPBERRY PI)尝试。这个系统我也只在镜像做底包使用过,感兴趣的读者请自行查阅资料。

总结

不像Windows那样单一,Linux 世界百花齐放,新用户面对那些五花八门的发行版,可能无所适从,即使稍有经验的开发者,也可能难抉择。这篇文章,粗浅地介绍了我使用过那些发行版以及个人感受,提供的建议,也希望可以真正帮忙到大家。 Linux 世界很精彩,选择很多,只要你肯花时间与精力去折腾,你一定会找到最合适你,也是你最喜爱的 Linux 系统。

本文文字及图片出自 www.jianshu.com

余下全文(1/3)
分享这篇文章:

请关注我们:

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注