为什么我抛弃了 Ubuntu?

2019 年 10 月 22 日 程序猿

本文经授权转自公众号CSDN(ID:CSDNnews)

作者:Dave McKay,从打孔纸带时期就开始从事计算机行业的编程工作,曾编写过6502汇编、Lisp、Forth、C#等所有类型的程序。现任国际软件开发团队经理,及IT服务项目经理。
译者 | 弯月,责编 | 郭芮
Ubuntu 是很多开发者优先选择的 Linux 发行版之一,但是本文的作者在使用了十年之后却最终“抛弃”它转投“他人”怀抱。原因何在?
以下为译文:
十多年来,我一直在使用Ubuntu的Linux发行版。但是,经过这么长时间以后,我第一次改变了心意。如今我开始使用Manjaro,而且感觉非常好!

一、Ubuntu非常棒!

对于Ubuntu,我仍然会给予很高的评价,而且我非常敬仰Canonical。在企业界,没有人能像红帽那样将Linux作为一种严格的企业基础设施工具予以大力推广。Canonical也同样功不可没,它成功地将Linux桌面版推广到了很多新手用户群中。
很多人第一次尝试Linux都是从Ubuntu开始。在他们站稳脚跟,并获得一些经验后,一些人就会尝试使用其他发行版。无论是在现实生活中还是在网上,我都听到了很多类似的故事。很多人告诉我他们特别喜欢某个发行版,比如Fedora、Debian等,但刚开始时他们接触的都是Ubuntu。如果从一开始他们就尝试自己喜欢的发行版的话,可能未必能够坚持下来。这一点完全归功于Ubuntu。
没有企业或公司是完美的。多年来,Canonical也曾做出过一些考虑不周的决策,例如将Unity桌面(旨在最大程度地增加小笔记本的屏幕空间)强加到所有其他计算机上。但是,它虚心地听取了用户群的意见,并推翻了部分决定。取消默认情况下亚马逊的搜索结果就是一个很好的例子。总体而言,我仍然认为Canonical在Linux领域发挥着良好的作用。我此次的决定与Ubuntu背后的组织无关。
那么,为什么我要换到Manjaro,这个决定适合你吗?

二、Manjaro的速度超越了Ubuntu

出于研究及其他目的,我保留了许多Linux发行版的VirtualBox镜像。我发现,在虚拟机中运行Manjaro几乎与在我的机器上直接运行Ubuntu一样快。
这是一个非常引人注目的因素,因为我经常需要编译大型代码库。我的计算机完成这项任务的速度越快,我就可以越快地展开下一项任务。
Manjaro可以更快地加载应用程序、在应用程序之间切换、移动到其他工作区以及启动和关闭。而且所有这些加速都可以叠加。
刚刚安装好的操作系统一般都很快,这样的比较公平吗?我认为很公平。今年4月下旬我刚刚安装了Disco Dingo 19.04,在这么短的时间内,Ubuntu的速度下降不应该如此明显。我一直在Ubuntu上使用GNOME,而且如今也在Manjaro中使用GNOME——虽然Manjaro还提供Xfce、KDE以及命令行安装方式。
那么,为什么Manjaro会具备这样的速度优势呢?下面让我们看一看默认情况下运行的服务和守护进程的数量。它们都会消耗系统资源,例如少量的内存和一些内核时间。你可以通过在终端窗口中键入以下命令,来检查已启用的服务和守护进程:
1systemctl list-unit-files --state=enabled --no-pager

Ubuntu上的结果如下:

Manjaro上的结果如下:

这两个系统都是全新安装的。如上所示,Manjaro拥有24个启用的守护进程,而Ubuntu拥有90个启用的守护进程。这种开销势必会产生影响。
你的实际情况可能会略有所不同,但我认为,就速度而言,Manjaro拥有绝对性的优势。

三、Manjaro是一种精益、精简的Linux系统

Ubuntu配备了许多应用程序。而Manjaro基于Arch Linux,并采纳了很多Arch Linux的原理和哲学,因此与Ubuntu有所不同。

与Ubuntu相比,Manjaro似乎很简陋。你可以简化安装(这意味着安装时间很短),然后再决定所需的应用程序。简化版带有电子邮件客户端、Web浏览器、办公套件以及其他一些必需品,但除此之外,安装哪些应用程序完全取决于你。
Manjaro感觉就像驾驶自制的卡丁车。而Ubuntu感觉像是一个大型、舒适、库存充足的旅行房车。两种方式各有所长。但是,似乎最初只加载必需的应用程序更合乎逻辑。如果你喜欢“包罗万象”的方式,那么Ubuntu应该更合乎你的胃口。

Manjaro不像Arch Linux那样追求极简主义。在使用Arch的时候,你的确可以从零开始,然后手动调整设置。你需要编辑一个文件来指定键盘布局,然后再通过另一个文件来设置终端字体。默认的Arch安装完成后,你可以通过命令行运行Linux实例。如果需要图形的桌面环境,则需要更进一步,从诸多选项中选择一个,然后再安装与配置。
如果说Manjaro感觉就像驾驶自制的卡丁车,那么Arch感觉就像需要亲手冶铁,然后再制造卡丁车。但这就是Arch的特色——预先确定的功能几乎为零。
如果你不是纯粹主义者,而且你也不需要这种程度的详细控制,那么可能Manjaro更接近“无掺杂”的Linux。它与Ubuntu的体验完全不同,感觉很纯净、清爽而且反应很灵敏。
如果你曾经使用过Google官方的智能手机(Nexus或Pixel等),而且也体验过Android裸机,那么你会非常喜欢Manjaro的这种与众不同。与其他手机制造商不同,Google官方的智能手机中用户和操作系统、工具之间并没有那些所谓的“改进”。
这就是我个人对Manjaro的感觉。

四、最尖端的滚动发布

Ubuntu每年都会发行两个常规版本:一个在四月发布,另一个在十月发布。因此它被称为固定发布或定点发布系统。所有应用程序和功能经过开发和测试后,提交到下一个版本中进行发布。当发布日期到来时,Ubuntu会提供全新的发行版。
在滚动发布中,代码库中的应用程序在通过开发人员测试,并经过验收测试后就会被更新。然后就可供用户下载了。这种持续的更新是不间断的。整个发行版不会出现“下一个版本”的重大跳转。这两种方式都有各自的优点和缺点。
在滚动发布模型中,你不必经历每年两次的系统升级。你可以及时地获取新功能、内核和应用程序。但是,因此付出的代价是稳定性。“最尖端”的锋利性是双刃剑。

Manjaro将新应用程序和功能的发布推迟了数周,并希望以此来规避滚动发布模型的大部分风险。所有应用程序和功能都需要经过测试,并证明安全后才能使用,但依然难免有漏网之鱼。
当然,即便某个功能出了问题,你也很容易就可以追查到,因为你知道最后更新的内容。因此回滚也更加容易。也就是说,如果在你升级或安装不久后发现了问题(或问题本身广为人知),那么你就知道最后一次更新出了问题。
我花了两天的时间试图弄清楚我的以太网连接到哪里去了。但它好像销声匿迹了,无论是命令行或图形界面工具中都没有它的任何踪迹。最终,我发现是我自己的问题,我利用不匹配的软件模块构建了一个VirtualBox,我的错!
同样,每次在新版的Ubuntu发布后,我经常发现常用的应用程序被删除了,或者我依赖的某个应用程序无法正常工作了。为什么每次升级后,我都必须修改fstab中Samba SMB挂载的设置呢?
而Manjaro建立了一种干净轻松的方式,帮助你保持自己希望的状态。我喜欢这种方式,因为你可以选择与“最尖端”的距离——你可以远远地观望,也可以勇敢地去尝试。
当然,许多使用Linux的人都不想太靠近“最尖端”。他们渴望的是长期的支持和稳定性,以及两年一次的升级。
滚动分布模型是我更加偏向于Manjaro的另一个因素。

五、更好的第三方软件库

Ubuntu的apt-get软件包管理器和Ubuntu Software应用程序都非常优秀。虽然有些年头了,而且略显笨拙,但依然可以正常工作。而且由于Ubuntu非常流行,因此许多不属于核心发行版的应用程序(例如Slack)都提供了“ .deb”文件,以简化安装。
但是,效果不太理想的是Personal Package Archives(PPAs)的管理。PPA是一个或多个应用程序的代码库,通常由开发人员单独提供。如果想使用PPA,那么你需要通过终端窗口中将其添加到系统中,并运行sudo apt-get update。然后,再通过sudo apt-get安装该软件。
虽然这个过程不需要花费太多时间,但接下来管理PPA的工作非常麻烦。PPA在到期时应该被清除。如果重新安装Ubuntu,那么还需要恢复这些PPA。它们可能会被遗弃,无人管理,而且还没有任何通知。
对于许多人来说,Ubuntu的升级可以无缝进行,但是对于有些人来说,Ubuntu的升级苦不堪言。这些不幸的人需要重新安装才能迁移到新版本。而且在快速重新安装系统后,恢复所有的PPA非常繁琐。

Manjaro的代码库聚集了一大批软件,且由社区志愿者控制和管理。Manjaro中的软件包管理可以满足你的所有需求,你可以在众多命令行和GUI中进行选择。
在使用Manjaro的时候,你还可以访问Arch用户代码库(Arch User Repository,即AUR),该库可能是满足所有发行版需求的最大的代码库。当然,AUR中还包含最新的产品。
再次重申,“最尖端”有利也有弊。但是,如果你想要的某个功能尚未添加到Manjaro库,那么就可以利用AUR。

Manjaro的软件包管理感觉像一股清流。你拥有标准的代码库,而寻求刺激的开发人员可以利用AUR。与众多PPA的管理相比,这种方式非常简洁。
Manjaro再得一分。

六、三思而后行

当然,在安装最新版的Manjaro之前,最好还是先试试看。如果你有闲置的硬件,那么可以试试看,确保Manjaro发行版符合你的期望,然后再在你日常使用的计算机上安装。
你也可以通过Manjaro Live CD,亲身感受Manjaro。但是,由于CD-ROM驱动器的吞吐量瓶颈,性能会很差。另外你也可以选择USB的方式,但同样,性能取决于USB驱动器。如果你直接在硬件上安装Manjaro,则会有完全不同的体验。
如果你使用VirtualBox或QEMU,则可以在虚拟计算机中快速尝试最新版的Manjaro。
你还可以尝试DistroTest上非常棒的资源。你可以从Manjaro支持的数百种Linux发行版中选择的虚拟机。你可以通过选择桌面环境来测试大多数发行版。你可以测试的版本超过700多种。

七、底层都是Linux

我换成Manjaro 的原因总结起来如下:
  • 速度快,不臃肿。

  • 滚动发布模型。

  • 简单的包管理。

当然,这些都是主观看法,也许有些对你也很重要。
即使从一种发行版换成另一种,你也可以放心地继续使用自己需要和熟悉的应用程序。这是Linux的优势之一。这种转换速度很快,且能让你感觉宾至如归。
不断探索是一件好事,学无止境!
原文: https://www.howtogeek.com/430556/why-i-switched-from-ubuntu-to-manjaro-linux/

本文转自公众号“CSDN”,ID:CSDNnews


●编号4147,输入编号直达本文

●输入m获取文章目录

推荐↓↓↓

运维

更多推荐25个技术类公众微信

涵盖:程序人生、算法与数据结构、黑客技术与网络安全、大数据技术、前端开发、Java、Python、Web开发、安卓开发、iOS开发、C/C++、.NET、Linux、数据库、运维等。

登录查看更多
0

相关内容

Ubuntu[国际音标:[uːˈbuːntuː](英语);[ùɓúntú](祖鲁语)]是一个以桌面应用为主的GNU/Linux操作系统,其名称来自非洲南部祖鲁语或豪萨语的“ubuntu”一词(官方译名“友帮拓”,另有“吾帮托”、“乌班图”、“有奔头”或“乌斑兔”等译名),意思是“人性”、“我的存在是因为大家的存在”,是非洲传统的一种价值观,类似华人社会的“仁爱”思想。 Ubuntu基于Debian发行版和GNOME桌面环境,与Debian的不同在于它每6个月会发布一个新版本。
【2020新书】实战R语言4,323页pdf
专知会员服务
100+阅读 · 2020年7月1日
【实用书】流数据处理,Streaming Data,219页pdf
专知会员服务
76+阅读 · 2020年4月24日
【2020新书】如何认真写好的代码和软件,318页pdf
专知会员服务
63+阅读 · 2020年3月26日
21个必须知道的机器学习开源工具!
AI100
13+阅读 · 2019年9月13日
可能是 Android 上最好用的写作 App
少数派
10+阅读 · 2018年12月21日
Pipenv: 吹嘘自己无所不能,实际上没什么卵用
Python程序员
3+阅读 · 2018年12月21日
Python 杠上 Java、C/C++,赢面有几成?
CSDN
6+阅读 · 2018年4月12日
Python为啥这么牛?
Python程序员
3+阅读 · 2018年3月30日
为什么你应该学 Python ?
计算机与网络安全
4+阅读 · 2018年3月24日
为什么 Python 更适合做 AI/机器学习?
计算机与网络安全
10+阅读 · 2018年3月18日
如何运用Python建一个聊天机器人?
七月在线实验室
17+阅读 · 2018年1月23日
十五条有用的Golang编程经验
CSDN大数据
5+阅读 · 2017年8月7日
这位程序员为什么要弃用Facebook?
CSDN
5+阅读 · 2017年7月14日
Arxiv
8+阅读 · 2018年1月19日
Arxiv
3+阅读 · 2017年12月18日
Arxiv
3+阅读 · 2015年5月16日
VIP会员
相关资讯
21个必须知道的机器学习开源工具!
AI100
13+阅读 · 2019年9月13日
可能是 Android 上最好用的写作 App
少数派
10+阅读 · 2018年12月21日
Pipenv: 吹嘘自己无所不能,实际上没什么卵用
Python程序员
3+阅读 · 2018年12月21日
Python 杠上 Java、C/C++,赢面有几成?
CSDN
6+阅读 · 2018年4月12日
Python为啥这么牛?
Python程序员
3+阅读 · 2018年3月30日
为什么你应该学 Python ?
计算机与网络安全
4+阅读 · 2018年3月24日
为什么 Python 更适合做 AI/机器学习?
计算机与网络安全
10+阅读 · 2018年3月18日
如何运用Python建一个聊天机器人?
七月在线实验室
17+阅读 · 2018年1月23日
十五条有用的Golang编程经验
CSDN大数据
5+阅读 · 2017年8月7日
这位程序员为什么要弃用Facebook?
CSDN
5+阅读 · 2017年7月14日
Top
微信扫码咨询专知VIP会员