这么多Linux版本,你究竟该怎么选择?
Linux有非常多的版本,比如世面上常见的有 Ubuntu、RedHat、Fedora、Centos等等,这么多的版本我们究竟该选哪一个呢?今天我带大家对各个版本进行一下分析和比较,帮助大家来做出更好的选择。
(一)Linux 是什么?
首先了解一下Linux是什么。它是一套类UNIX的操作系统,最初是1991年由芬兰人 Linus Torvald 在赫尔辛基大学读大二时出于个人爱好而编写的(不禁对大神无比的崇拜)。下面那张图左边是他年轻时的样子(年轻时也是小鲜肉一枚);右边是他现在的样子(也已经变成了中年大叔),而且 Linus不仅是个技术大神,还是著名的嘴炮,比如下面这些技术和应用都曾经被他喷过。

”真正的 Emacs 是魔鬼工具。”
”整个GNOME-3的用户体验几乎完全是失败的,’在默认配置下,我们连解决问题的最基本的工具都不给你,但你可以通过非官方的扩展解决它‘。”
”我不关心Java。多么可怕的语言。“
”C ++ 是一个可怕的语言。”
”GCC是废话。“
”XML 是胡扯。解析 XML 对人类来说是讨厌的,甚至对计算机来说也是一场灾难。没有理由让这个可怕垃圾存在。”
”Solaris/x86 是个笑话“
(二)Linux 的发行版什么?
事实上 Linus 在1991年编写的是 Linux 的内核,就是一个操作系统的核心,包括设备驱动、文件系统、进程管理等等。当然一个操作系统只有内核的话,用户是没有办法使用的,所以 Linux 的发行版就是将 Linux 内核和应用软件打了个包,这些应用软件可以包括 GNU 程序库和工具、命令行 Shell 工具、图形界面的 XWindow 系统和相应的桌面环境以及数千种应用软件。
(三)常见的 Linux 版本比较
首先 Linux 的发行版本可以分为几个大的家族,比如 Red Hat、Debian、SlackWare 等等;然后在每个大的家族里又有不同的发行版本。

1) Debian 家族
Debian 最早由Ian Murdock于1993年创建,是社区类Linux的典范,也是迄今为止最遵循GNU规范的Linux系统。Debian在服务器和桌面电脑领域都有着广泛的应用,最具特色的是apt-get / dpkg包管理方式。
Ubuntu 是基于 Debian 发展而来,界面友好,易于上手,而且对硬件的支持也很全面,比较适用于桌面系统。Ubuntu 本身又有很多不同的版本,比如基于 KDE 的 Kubuntu,基于极致轻量的LXDE的Lubuntu,中国定制版的 Ubuntu Kylin等。
Linux Mint 由Linux Mint Team团队于2006年开始发行,基于 Ubuntu衍生,是专注于个人用户的桌面系统,界面更加美观。
2) Red Hat家族
Red Hat 红帽公司创建于1993年,是目前世界上最知名的 Linux厂商之一。Red Hat 公司产品主要包括:
RHEL (Red Hat Enterprise Linux 红帽企业版 Linux),是商业版本,源代码公开,技术支持需要付费,提供原厂服务。
Fedora 是基于 Red Hat Linux的社区版,由Fedora Project社区开发、红帽公司赞助。Fedora会采用最新的技术,尝试很多新功能、新特性,取得成功后会应用到 RHEL版本中,可以理解为是 RHEL的个人桌面版和前期测试版。
CentOS 全称Community Enterprise Operating System(社区企业操作系统),可以理解为是 RHEL 的社区克隆版。完全免费,并且开源。其独有的yum命令支持系统在线升级,可以即时更新。CentOS稳定性较好,在中国应用比较广泛。
3) SlackWare家族
SLES SUSE Linux Enterprise Server ,企业版,基于SlackWare Linux发展而来,由德国的 SuSE Linux AG 公司与1994年发行。
OpenSuse 是 SLES 的社区版本。2004年 SuSE Linux AG 被Novell公司收购以后,成立了OpenSUSE 社区,于是推出了OpenSuse版本,比较适用于桌面系统。它和 SLES有点类似于 Fedora和 RHEL的关系。
4)其他 Linux 版本
Linux 还有很多其他的版本,比如 Gentoo Linux, 它的标志是追求极限的性能,在同样的硬件环境下拥有最快的运行速度。不过它需要采用源码包编译安装操作系统,非常复杂,但这也并不妨碍大量的的用户和开发者拥入它的怀抱。
下面我用一张表格来总结Linux不同家族和发行版本的关系与特点:

(四)Linux 版本选择的建议
如果看了上面的介绍还是不知道该如何选择的朋友,可以参考下面的建议:
1)如果需要一个稳定的服务器,可以使用CentOS (免费,而且国内使用非常广泛),或者使用RHEL(需要付费,但是可以得到大厂的良好支持,保证商业应用)。
2)如果想用个人桌面系统来替代Windows的话,可以尝试用一下Ubuntu的不同版本,安装简便,硬件支持全面,而且界面友好。
3) 如果想深入的学习Linux,更灵活的去定制你的系统,追求极致的性能,那就去体验一下Gentoo给你带来的快感吧。
以上只是个人的建议,其实不管是哪种版本,内核都是一样的,所谓触类旁通、举一反三,只要把一种学习明白,其他版本的使用也就不再是难事了。

这么多Linux版本,你究竟该怎么选择?的更多相关文章
- 使用VS+VisualGDB编译Linux版本RCF
RPC通信框架--RCF介绍中说了,RCF本身是支持跨平台的,其代码放到Linux平台,是可以通过gcc.make等工具,编译通过的. 官方提供的源码中,只有cmake编译脚本,并没有提供Makefi ...
- 查看linux版本
http://nameyjj.blog.51cto.com/788669/557424 1. 查看内核版本命令: 1) [root@q1test01 ~]# cat /proc/version ...
- 最稳定 性能最好 的 Linux 版本?
Ubuntu太他妈不稳定了,简直是一坨屎 CentOS.Ubuntu.Debian三个linux比较异同http://blog.csdn.net/educast/article/details/383 ...
- Ubuntu下查看linux版本,内核版本,系统位数,gcc版本
1. 查看linux版本 sunny@ubuntu:~$cat /etc/issueUbuntu 11.04 \n \l 2. 查看内核版本1) sunny@ubuntu:~$ cat /proc/ ...
- 为Linux版本Oracle 11gR2配置HugePage
HugePage是Oracle在Linux版本下一种性能优化手段.对于共享内存区域(SGA)的数据库系统,Oracle通常都推荐在操作系统层面配置上HugePage,为Oracle实例准备更大的可用共 ...
- 【转】 如何查看linux版本 如何查看LINUX是多少位
原文网址:http://blog.csdn.net/hongweigg/article/details/7192471 一.如何得知自己正在使用的linux是什么版本呢,下面的几种方法将给你带来答案! ...
- 转:如何查看linux版本 如何查看LINUX是多少位
原文来自于:http://blog.csdn.net/hongweigg/article/details/7192471 一.如何得知自己正在使用的linux是什么版本呢,下面的几种方法将给你带来答案 ...
- 如何查看linux版本
1. 查看内核版本命令: 1) [root@q1test01 ~]# cat /proc/version Linux version 2.6.9-22.ELsmp (bhcompile@crowe ...
- 用lsb_release -a 查看linux版本
1.要通过yum 安装上这个命令的软件包 yum -y install redhat-lsb 2.lsb_release -a 查看linux版本信息
随机推荐
- SaaS、PaaS、IaaS的含义与区别
先上个图,直观的了解一下 云计算有SPI,即SaaS.PaaS和IaaS三大服务模式. PaaS和IaaS源于SaaS SaaS Software as a Service 软件即服务,提供给客户的服 ...
- 用Python介绍了企业资产情况的数据爬取、分析与展示。
前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者:张耀杰 PS:如有需要Python学习资料的小伙伴可以加点击下方链接自 ...
- summary && scenarios
小组中期总结 项目目标: 我们的目标是制作一款pdf阅读器的必应查词插件,帮助大家在阅读英文资料的时候查单词更加的方便并且可以帮助人们英语学习. 痛点:对于在电脑上现在屏幕取词软件已经做得相当好了,所 ...
- vue2.x学习笔记(十二)
接着前面的内容:https://www.cnblogs.com/yanggb/p/12592256.html. 组件基础 组件化是vue的一个重要特性,也是vue学习中非常重要的一个知识点. 基础示例 ...
- JavaScript表达式和运算符 —— 基础语法(4)
JavaScript基础语法(4) 运算符 运算符用于将一 个或者多个值变成结果值. 使用运算符的值称为操作数,运算符和操作数的组合称为表达式 JS中的运算符可以分成下面几类: 算术运算符 逻辑运算符 ...
- 用多线程,实现并发,TCP
首先,开启新的线程,是不会新开辟内存空间的,即,子线程和主线程 都在同一个进程里,也就是主进程里,用os.pid(),os.ppid() 服务器: 方式一:Thread实例化 def task(con ...
- 在手机和电脑间双向加密传输文件 —— Windows 安装 Kde Connect
2020-04-27 作为 Kde 项目的一部分,Windows 用户可能很少知道它,但它确实存在,而且超棒. Kde Connect 简直了,现在我的手机和 Linux 主机以及 Win 本完全是一 ...
- php sprintf() 函数把格式化的字符串写入一个变量中。
来源:https://blog.csdn.net/zxh1220/article/details/79709207 HP sprintf() 函数用到的参数 printf — 输出格式化字符串 spr ...
- 在php中如何实现cookie即时生效,不用刷新就可以使用
参考:https://www.jianshu.com/p/0468ef5dbf4d 今天在用php设置cookie的时候,发现cookie如果只是赋值一次的话,要手动刷新一下浏览器才能把数据及时更新, ...
- Java一个简单的贪吃蛇
Java一个简单的贪吃蛇 虽然GUI已经要淘汰了,但是手动写写界面还是有助于理解语法的,像构造函数 ,函数调用,内部类,继承,接口.有助于半初学者强化理解. 直接上代码 游戏主体类: package ...