编程学习网 > 编程语言 > 如何选择更适合你的 Linux 发行版?
2018
05-28

如何选择更适合你的 Linux 发行版?

  很多人经常会问我这样一个问题:“嘿,你是用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与Debian有密切关系,但Mint看起来更漂亮并且有一些跨平台的东西。

  出于以下目的,可以使用这些发布版:

  • 类似Windows的体验
  • 安装简单
  • 可靠
  • “类似Linux”,且不自成一派
  • “恰好管用”

  好吧,最后一条真的很重要。我们需要的就是有效和管用。这些发行版都是即插即用的。设置好了即可。我的开发机器现在越来越依赖Debian,因为有时我并不关心操作系统,也不希望它来妨碍我。当我处于一种只想构建东西的状态时,就会所向无敌。

 我想了解关于Linux / Unix和硬件的更多信息

  也许你正处于一种嬉戏和试验的心情。你想挑战自己,想要通过实践来强迫自己学习。这很好,这也正是我所做的。

  如果你想挑战自我并学习一些东西,我的建议是:

  这些发行版中的每一个都需要大量配置,硬件发现和源代码编译。Gentoo,你必须编译所有东西。这是绝对完全掌控操作系统的好方法。

  出于以下目的,可以使用这些发布版:

  • 完全掌控你的电脑和操作系统
  • 了解Linux内部
  • 精简的优化系统

  这需要付出代价:主要是时间。完整安装这些可能需要几个小时。从好的一面来看,它们可以运行很久。

  我在Lenvov上安装Arch Install,差不过周六一天时间都花在了配置上,之后又大概花了10个小时甚至更长时间。它毫不费力就运行了5年(直到笔记本电脑硬件报废)。偶尔需要更新一下,但是它让我可靠地使用了整整5年时间。因此,这是一次很有价值的投资。

 我想要成为技术弄潮儿

  好吧,也许你不在乎其稳定性如何,只想要最新最好的软件。你想要摆弄内核,或者做一些其他程序员昨天提交的很酷的玩意儿。

  为了稳定性和安全,现在你需要的是最新的:

  出于以下目的,可以使用这些发布版:

  • 为学习最新的东西而甘冒风险
  • 最新和最伟大的功能
  • 有趣的配置以便于处理重大更改

  公平地说,我个人使用过Arch和Gentoo,虽然没有出现严重的稳定性问题,但是是有风险的。

 我只想完成一些工作

  好的,也许你并不关心操作系统的细节,只是想要GSD(Get Stuff Done完成任务)。也许你想要构建Node或GoLang app,道听途说Linux最适合。

  如果你想完成工作的话,下面这些很有帮助:

  出于以下目的,可以使用这些发布版:

  • 运行平稳,维护量低
  • 最小配置
  • 大部分事情可以自动完成
  • 兼容硬件和软件

  正如我所说的,我现在经常使用Debian,因为我通常只是制作一些东西,而不是真的想要修整和优化。它稳定,快速,并且不会妨碍我的行事方式。我正是在Debian 9中写的这篇文章。

 我想构建服务器

  也许你想建立一个Web服务器或虚拟主机,却不知道要用哪个版本。此分类中的第一个就是用于虚拟主机的主要发布版,所以如果你想要一些可以模拟托管软件的网站的东西,那么试试CentOS(或学习Docker!)

  下面这些是用于虚拟主机的坚实可靠的帮手:

  出于以下目的,可以使用这些发布版:

  • 稳定性
  • 安全
  • 支持其他出于同样原因的程序员使用

  我相信任何Linux发行版都可以有效地用于虚拟主机,但有些会更繁琐。

 我想尽可能大地提升性能

  如果你是那种每一次性能提升都想出成果的类型(曾经我也是如此),那么这些发行版对你而言肯定很棒。其中一些需要编译所有源代码,以便为处理器生成优化的二进制文件。超有意思!

  出于以下目的,可以使用这些发布版:

  • 显著的性能提升
  • 高负载计算

  请记住,硬件已经达到了性能要求,因此它不再像以前那样显得至关重要。15年前,你可以破解内核并拨号服务,然后发现会有一个大的提升。现在,硬件的差异可以忽略不计。运行任何Linux都能够非常流畅。

 我想要安全的桌面

  或者你想建立一个很难侵入的系统,无论出于何种原因。有若干安全性发布版值得成为关注的焦点。如果你真的担心锁定主机,那么可以看看这些:

  出于以下目的,可以使用这些发布版:

  • 安全性
  • 匿名性

 我想要最小的计算机系统

  好的,有时你只想要一些精简和轻巧的东西,完成某项工作即可。我绝对理解。也许你有一个想重新定位的旧奔腾处理器。也许操作系统只是目标的一小部分,你想要最小化的容量和配置。

  出于以下目的,可以使用这些发布版:

  • 将在旧的硬件上运行
  • 尽可能最小化

 结论

  可能你觉得这篇文章看上去有点琐碎,但你可以根据你的具体情况和实际目的,从我给出的分类中挑选Linux发行版,并将其配置和调整成你想要的模样。这就是Linux的本质,最大化的可自定义。这些都是允许快速入门的极佳发布版。如果你认为我有遗漏的地方,欢迎随时在评论中留言。

  不管你是干什么的,如果你因为对Linux好奇而打开这个页面,那么务必请尝试一回!就是现在!绝对物有所值,让你爱不释手!

  英文原文:Which Distribution of Linux Should I Use?

扫码二维码 获取免费视频学习资料

Python编程学习

查 看2022高级编程视频教程免费获取