以新版本为例,全面比较Fedora与Ubuntu

译文
开发 前端 Linux
本文将选用最近更新的Ubuntu 20.10和Fedora 33为例,进行全面比较,并最终给出实际应用场景的选择建议。

[[375717]]

【51CTO.com快译】UbuntuFedora都是历史悠久的著名操作系统。它们看似有着许多相似之处,但实际上大不相同。由于Fedora更像是Red Hat开发者版的测试环境,因此它的更新比较频繁,当然也就不太稳定,可能出现某些错误。而由于Ubuntu是从Debian衍生出来的发行版,因此它比较稳定、易用,而且包含了用户可能用到的所有服务。

本文将选用最近更新的Ubuntu 20.10和Fedora 33为例,进行全面比较。首先让我们通过如下列表,宏观地了解两者之间的不同:

下面,我们来探讨一下两者在关键领域中的比较:

核心语言

由于Fedora是Red Hat企业版的克隆,因此那些让Red Hat开发人员,无法直接在运行中的服务器上执行的更新包,都被放入了Fedora。当然,Fedora也就更适合不同的工作领域与场景。

Ubuntu是从Debian派生出的Linux纯正发行版。多年来,由于得到了明星公司 Canonical的常年支持,因此它很适合于处理桌面、以及在服务器端运行的应用程序。当然,Ubuntu也有诸如:XUbuntu和Kubuntu等许多其他的发行版。

安装过程

Fedora提供了一个专有的安装程序--Anaconda Installer。通过它,您可以在系统启动之前,自由地预安装和卸载部分软件,或自定义某些应用。不过,由于它过于专业化,除了系统专家,普通人基本上不怎么会用到。

而Ubuntu则附带了Ubiquity Installer。它让整个安装过程就像在桌面上安装Windows一样简单。此外,如果您的电脑上已经安装了Windows系统,它会自动检测到,并会帮助您实现Windows和Ubuntu的双启动模式。

桌面环境

虽然Ubuntu和Fedora都使用相同的桌面环境—GNOME(,但是两者略有不同。

Fedora使用未经修改的GNOME作为默认的桌面环境。当然,Fedora也会提供其他桌面环境。它们被统称为Fedora spins,您可以从中选择自己喜欢的一款。其精美的界面比较适合被运行在台式机上。

而Ubuntu所提供的Gnome是被修改过的,被称为Unity Desktop environment。此外,由于Canonical公司仅支持Gnome,因此Ubuntu没再提供其他的桌面环境。不过,一些志愿者对Ubuntu进行了扩展,使其能够兼容并与其他桌面环境一起使用。据此,普通用户可以通过下载具有不同桌面环境的Ubuntu样式包,来更改Xubuntu、Lubuntu、以及Kubuntu。

包管理器

在Linux中,包管理器通常负责诸如安装,删除,更新和卸载之类的操作。因此,要想熟练地操控Linux的各项功能,我们必须事先了解不同包管理器的相关命令。而Fedora和Ubuntu都能够支持不同类型的软件包。

Fedora继承了Red hat Linux。最初它使用的是Yum软件包管理器,来管理其.rpm包。现在,它采用了比.yum更快、更可靠的.dnf程序包管理器。而且,.dnf不但能够与.rpm程序包相兼容,而且会在Fedora的新版本发布后,自动执行更新基本软件包的进程。

Ubuntu的软件包主要继承的是Debian-family,而且,Ubuntu的软件包管理器是以APT后面加命令的格式,来管理其软件包的。它与.deb软件包完全兼容。由于Ubuntu追求的是稳定性,因此APT包管理器不会自动更新,而是需要用户通过附加的命令,来手动更新系统上的所有软件。

硬件和驱动程序的支持

总的说来,在对于硬件种类和驱动程序的支持方面,Ubuntu要胜过Fedora。

由于Fedora源自Red Hat Linux,因此那些被Linux支持的所有开源硬件驱动,也都能够与Fedora兼容。而且,Fedora也在不断更新中。

而得益于Cononicial公司的支持,Ubuntu不仅能够兼容Fedora支持的所有硬件和驱动程序,而且能够轻松地支持FOSS(Free and Open Source Software)硬件。

储存库(Repositories)

简单而言,由于Fedora的粉丝群比Ubuntu的粉丝少,因此带有.rpm的软件数量比.deb要少一些。同时,由于大多数知名软件的开发者,逐渐愿意向更多数量的Linux用户提供相应的软件,而且.deb软件包也附带了大量的Linux发行版,因此他们在构建各种游戏或应用程序时,倾向与.deb相兼容,并开发出了各种Linux基本软件,以及第三方的工具。这就使得Ubuntu存储库的总量比Fedora存储库要多一些。

发布周期

Ubuntu有两个版本,分别是Ubuntu LTS和Ubuntu。它们之间的区别主要体现在发布周期上。Ubuntu LTS的版本发布周期为两年,其支持周期为五年。因此它更适合那些不想定期更新、且追求稳定的用户。而Ubuntu则被称为Ubuntu non-LTS的常规版。

non-LTS Ubuntu和Fedora具有相同的发布周期,即:六个月。它们的支持周期仅为十五个月。也就是说,您必须每九个月更新一次。因此,它们适合那些乐于尝试新功能、愿意持续更新的用户。

社区

如您所知,Linux给我们带来的最大好处就是社区文化。如果您遇到任何故障或问题,都可以问计于庞大的社区。也许有人已经提出了类似的问题,也许有人很快会回应出某种解决方案。相互比较而言,Ubuntu具有更广泛的用户基础,因此拥有两个大型社区论坛:Ubuntu forumsAsk Ubuntu。而Fedora只有一个论坛:Fedora community

那么问题来了,我们到底应该在何种应用场景中,做出何种选择呢?

机器学习项目

与Fedora相比,由于Ubuntu能够官方支持KubeFlow、Kubernetes、Docker和CUDA等工具,因此它在机器学习方面略胜一筹。

当然,由于Fedora在Linux的众多操作系统中,长期属于第二流行的,因此它能够通过RHEL环境,保障项目在服务器或云端平稳地运行。

编程或开发

Fedora和Ubuntu都提供了大量的代码编辑器、软件库、以及包管理工具。当然,您需要在做出选择之前,让开发人员知晓自己能否从两类不同的社区处,及时地获取支持与帮助。

值得一提的是,如果您希望在老旧的台式机或笔记本电脑上进行编程,并希望消耗尽可能少的资源,那么Fedora会带给您更好的体验。毕竟它自带有现成的、低资源消耗的GUI。

游戏

由于Fedora和Ubuntu都通过Linux内核提供了丰富的驱动程序,并能够流畅地支持和调用游戏手柄、图形显卡、WiFi适配器等设备硬件,因此它在游戏运行方面不分伯仲。

当然,由于Fedora在安装WINELUTRIS之类的软件包时带有许多依赖项,因此有些游戏仅与Ubuntu兼容,而不兼容Fedora。不过,只要您愿意问计于社区论坛,总归能够找到合理的解决方法。

简单而言,Ubuntu适合于新手玩家,而Fedora更适合那些愿意“折腾”的极客玩家。

小结

总的说来,如果您是一名开发人员或游戏资深玩家,而且乐于尝试更新,那么请选用Fedora。而且,的确有许多开发人员正在从Ubuntu切换到Fedora。毕竟Fedora打造的是Red Hat开发者版本,而非发行版环境。

而Ubuntu更注重打造的是全面稳定的服务产品线,其中有用于桌面端、服务器的Ubuntu,用于电话和移动设备的touch,以及用于ARM的Ubuntu Mate。因此,如果您是一位初学者,那么Ubuntu是值得选用的Linux发行版。而且,有一些用户恰好就来自Windows。

原文标题:Fedora vs Ubuntu: An Updated Comparison,作者:shahidsidd

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】

 

责任编辑:华轩 来源: 51CTO
相关推荐

2009-12-31 11:09:36

Ubuntu wine

2009-12-29 13:43:21

Ubuntu 9.10

2023-10-13 12:32:54

2009-11-04 10:15:27

Ubuntu袁萌Ubuntu 9.10

2013-12-27 10:25:24

Ubuntu操作系统

2015-10-30 11:52:52

PHP 7HHVM

2015-11-04 12:15:11

应用交付深信服OpenStack

2012-10-22 10:56:59

Ubuntu

2011-08-01 15:35:51

GlassFishJava 7

2012-06-04 11:01:44

Windows 8版本

2009-05-19 08:51:42

2020-08-14 13:50:13

UbuntuHandbrakeLinux

2011-06-07 15:19:19

PuppetUbuntu

2020-02-25 20:50:38

UbuntuLinuxGit

2023-12-21 14:18:42

统信UOS操作系统

2013-03-28 15:59:34

为知笔记

2012-05-09 08:55:41

Windows 8 R微软

2009-06-17 09:24:34

学习strutsStruts新版本

2015-02-05 16:59:36

平安WiFiiOS
点赞
收藏

51CTO技术栈公众号