来自:码农网
原文:https://dzone.com/articles/which-distribution-of-linux-should-i-use
很多人经常会问我这样一个问题:“嘿,你是用 Linux 的,对吧?我应该使用 Linux 的哪个版本?我有这个朋友推荐我_____,你觉得怎么样?” 我通常会以这样的问题回复:这取决于你想做什么?
今天我决定写一篇关于如何选择 Linux 发行版的博客文章,以便于大家借鉴。
我与 Linux 的历史
我觉得我应该先介绍一下我和 Linux 的过往,以防你在阅读本文时无法理解我。当然,如果你不在乎,你也可以跳过。
我在 1996 年左右开始使用 Linux。我和 Linux 的第一次亲密接触是 Slackware 4,这是我在 Egghead Software 购买的一套 CD(没错,是旧的)。我的一个朋友告诉我这个 Unix 非常棒,他说我只需要尝试一下,就会喜欢它。
我读过关于 Unix 的很多文章,对此非常好奇。我在互联网服务提供商那有一个 shell 账户,我曾经笨拙地修改过。在使用 Unix 的起初我有点犹豫:“为什么我要用 Unix?” 他的回答很简单:“因为你非常讨厌 Windows 95,喜欢 DOS,所以你会喜欢 Unix”。然后我就买了它。他是对的。
我拿了一个旧硬盘来安装。经过若干小时又若干天的战斗,我终于启动了桌面,可以开始运行了。我不知道是什么驱使我渡过了这段难熬的时光,但我心中有一个念想就是我一定一定要弄清楚如何使这个系统工作,即便困难重重。我必须非常了解我的硬件!简单的事情突然再次变得困难起来。最终我成功了。我开始构建一些愚蠢的脚本以获得乐趣。系统速度很快,这种可以掌控操纵一切的感觉棒极了。
有内置的 C 编译器吗?因为不懂这个,因此我刚买了某个非常昂贵的 Borland 软件包。但是这个操作系统内置了一个编译器?!还有免费的图像编辑器?!我被完全迷住了!
此后多年,我尝试过大量发行版。甚至是 BSD Unix 系列的。我的 “主计算机” 总是双启动的,其中一些是纯 Linux。21 世纪初的大部分时间里,我完全避开了 Windows。所以到今年为止,关于我的 “主机”,它是这样的:
1996-1999:Slackware
1999-2002:Redhat(及 FreeBSD)
2003-2005:FreeBSD / Knoppix
2005-2009:Gentoo
2009-2011:Linux Mint
2011-2018:Arch Linux / Debian
我使用过大约 50 个或更多发行版,运行在我的 “主机” 上,用于工作、浏览和开发以及其他任何事情。很明显,Arch 迄今为止运行时间最长,主要是因为我对其进行配置之后,很长一段时间遗忘了它。
因此,最近几年我 “真正用于工作” 的主要发行版本是 Debian。
下面,让我们谈谈你应该使用哪个版本。
你想做什么?
我将根据常见需求对 Linux 版本进行分类。这里有一些重叠的地方,而且如果准备充分的话,这些 Linux 发行版任何一个都可以满足你的期望需求。Linux 的一大优点是允许你随心所欲。但是,归根结底,发行版之间还是有区别的,有些能为你做很多工作,或者某个版本具有更适合针对某个目标的设计。下面我会根据实现目标的最简单途径来对这些发行版分类。
我是刚刚入门的 Linux 新手
有很长一段时间,我会给 Linux 新手推荐 Ubuntu。就易用性和兼容性而言,Ubuntu 非常棒。但我现在非常讨厌 Ubuntu。不过,我仍然会在我的课程和文章的 demo 中使用,因为用 Ubuntu 的人很多,但我不喜欢他们运行这种发行版的方式——内置 Amazon 广告软件,而且 Unity 相当令人讨厌。
所以如果你刚入门,我的建议是:
Linux Mint Download
Debian Download
这是一个骗局,因为 Linux Mint 与 Debian 有密切关系,但 Mint 看起来更漂亮并且有一些跨平台的东西。
出于以下目的,可以使用这些发布版:
类似 Windows 的体验
安装简单
可靠
“类似 Linux”,且不自成一派
“恰好管用”
好吧,最后一条真的很重要。我们需要的就是有效和管用。这些发行版都是即插即用的。设置好了即可。我的开发机器现在越来越依赖 Debian,因为有时我并不关心操作系统,也不希望它来妨碍我。当我处于一种只想构建东西的状态时,就会所向无敌。
我想了解关于 Linux / Unix 和硬件的更多信息
也许你正处于一种嬉戏和试验的心情。你想挑战自己,想要通过实践来强迫自己学习。这很好,这也正是我所做的。
如果你想挑战自我并学习一些东西,我的建议是:
Slackware Linux
Arch Linux
Gentoo Linux
FreeBSD(不是 Linux,但适合分到这一类别)
这些发行版中的每一个都需要大量配置,硬件发现和源代码编译。Gentoo,你必须编译所有东西。这是绝对完全掌控操作系统的好方法。
出于以下目的,可以使用这些发布版:
完全掌控你的电脑和操作系统
了解 Linux 内部
精简的优化系统
这需要付出代价:主要是时间。完整安装这些可能需要几个小时。从好的一面来看,它们可以运行很久。
我在 Lenvov 上安装 Arch Install,差不过周六一天时间都花在了配置上,之后又大概花了 10 个小时甚至更长时间。它毫不费力就运行了 5 年(直到笔记本电脑硬件报废)。偶尔需要更新一下,但是它让我可靠地使用了整整 5 年时间。因此,这是一次很有价值的投资。
我想要成为技术弄潮儿
好吧,也许你不在乎其稳定性如何,只想要最新最好的软件。你想要摆弄内核,或者做一些其他程序员昨天提交的很酷的玩意儿。
为了稳定性和安全,现在你需要的是最新的:
Arch Linux
OpenSuse Tumbleweed
Fedora Rawhide
Gentoo Unstable
出于以下目的,可以使用这些发布版:
为学习最新的东西而甘冒风险
最新和最伟大的功能
有趣的配置以便于处理重大更改
公平地说,我个人使用过 Arch 和 Gentoo,虽然没有出现严重的稳定性问题,但是是有风险的。
我只想完成一些工作
好的,也许你并不关心操作系统的细节,只是想要 GSD(Get Stuff Done 完成任务)。也许你想要构建 Node 或 GoLang app,道听途说 Linux 最适合。
如果你想完成工作的话,下面这些很有帮助:
Debian Download
Fedora
openSuse Leap
Ubuntu Studio (虽然它是 Ubuntu,但可以很好地组合在一起)
出于以下目的,可以使用这些发布版:
运行平稳,维护量低
最小配置
大部分事情可以自动完成
兼容硬件和软件
正如我所说的,我现在经常使用 Debian,因为我通常只是制作一些东西,而不是真的想要修整和优化。它稳定,快速,并且不会妨碍我的行事方式。我正是在 Debian 9 中写的这篇文章。
我想构建服务器
也许你想建立一个 Web 服务器或虚拟主机,却不知道要用哪个版本。此分类中的第一个就是用于虚拟主机的主要发布版,所以如果你想要一些可以模拟托管软件的网站的东西,那么试试 CentOS(或学习 Docker!)
下面这些是用于虚拟主机的坚实可靠的帮手:
CentOS
Red Hat Enterprise Linux (RHEL)
Debian 9 Download
FreeBSD (不是 Linux,但适合分到这个类别)
出于以下目的,可以使用这些发布版:
稳定性
安全
支持其他出于同样原因的程序员使用
我相信任何 Linux 发行版都可以有效地用于虚拟主机,但有些会更繁琐。
我想尽可能大地提升性能
如果你是那种每一次性能提升都想出成果的类型(曾经我也是如此),那么这些发行版对你而言肯定很棒。其中一些需要编译所有源代码,以便为处理器生成优化的二进制文件。超有意思!
Clear Linux (For Intel CPUS, by Intel)
Gentoo Linux
Arch Linux
FreeBSD (不是 Linux,但适合分到这个类别)
出于以下目的,可以使用这些发布版:
显著的性能提升
高负载计算
请记住,硬件已经达到了性能要求,因此它不再像以前那样显得至关重要。15 年前,你可以破解内核并拨号服务,然后发现会有一个大的提升。现在,硬件的差异可以忽略不计。运行任何 Linux 都能够非常流畅。
我想要安全的桌面
或者你想建立一个很难侵入的系统,无论出于何种原因。有若干安全性发布版值得成为关注的焦点。如果你真的担心锁定主机,那么可以看看这些:
TAILS Linux
Alpine Linux
CoreOS
TENS Linux (DOD Project)
Tin Hat Linux
OpenBSD (不是 Linux,但适合分到这个类别)
出于以下目的,可以使用这些发布版:
安全性
匿名性
我想要最小的计算机系统
好的,有时你只想要一些精简和轻巧的东西,完成某项工作即可。我绝对理解。也许你有一个想重新定位的旧奔腾处理器。也许操作系统只是目标的一小部分,你想要最小化的容量和配置。
ArchBang
Lubuntu
Puppy Linux
Tiny Core Linux
Bodhi Linux
出于以下目的,可以使用这些发布版:
将在旧的硬件上运行
尽可能最小化
结论
可能你觉得这篇文章看上去有点琐碎,但你可以根据你的具体情况和实际目的,从我给出的分类中挑选 Linux 发行版,并将其配置和调整成你想要的模样。这就是 Linux 的本质,最大化的可自定义。这些都是允许快速入门的极佳发布版。如果你认为我有遗漏的地方,欢迎随时在评论中留言。
不管你是干什么的,如果你因为对 Linux 好奇而打开这个页面,那么务必请尝试一回!就是现在!绝对物有所值,让你爱不释手!
●编号476,输入编号直达本文
●输入m获取文章目录
推荐↓↓↓
Python编程
更多推荐《18个技术类微信公众号》
涵盖:程序人生、算法与数据结构、黑客技术与网络安全、大数据技术、前端开发、Java、Python、Web开发、安卓开发、iOS开发、C/C++、.NET、Linux、数据库、运维等。
领取专属 10元无门槛券
私享最新 技术干货