了解不同的 Linux 发行版

了解不同的 Linux 发行版

在理解基于 Linux 的操作系统时,我有点困惑。当我下载最新版本的 Mint 和 Ubuntu 时,它们的核心(内核)不是“相同”吗?看起来他们有不同的 GUI?从技术上讲,GUI 不就是一个在计算机启动时运行的程序吗?与 Windows 相同(dos 是核心,但 explorer.exe 是 GUI)。有人能解释一下吗?

使用 sudo apt-get 命令我不能从 mint 终端安装 Ubuntu 吗?

我知道这是一堆乱七八糟的问题,但希望有人能够在 GUI 出现之前以及 GUI 出现之后澄清多个发行版之间的差异。

答案1

第一:Windows 已经有一段时间没有成为 DOS GUI 了;基于 NT 的 Windows (NT/2000/XP/Vista/7/8) 完全独立于 DOS。 explorer.exe 也不是 GUI:它只是一个 shell(您也可以找到 Windows 的 shell 替代品)

从本质上讲,所有发行版都基于 Linux 内核;发行版之间的主要区别(从最终用户的角度来看 - 例如 init 系统、下面的文件/etc和其他地方存在差异)是:

  • 包管理

Ubuntu、Mint 和所有其他基于 Debian 的发行版都使用 dpkg/APT 作为打包系统。其他发行版将使用其他系统(例如Red Hat、Fedora、SuSE 将使用RPM,Arch 将使用pacman)。

  • 套餐选择

有效地,Mint 是一个带有一些额外软件包的 Ubuntu(例如编解码器,由于专利/版权原因未包含在 Ubuntu 中)和不同的主题(创建自定义标识并避免商标/抄袭问题和用户混淆)。

当然,您可以在 Mint 中安装任何其他 GUI:您可以使用 Mint 的桌面环境(肉桂)在 Ubuntu 中,从技术上讲(现实是另一个故事:你可能会遇到包冲突),你应该能够在 Mint 中安装 Unity 和 Ubuntu 的视觉标识(主题、图标)。

所以,理论上你可以把你的 Ubuntu 变成 Mint-ish 系统,但实际上这是很难做到的。


根据有关“接口”和“外壳”之间差异的评论,这可能会引起一些混乱:

在 UNIX 世界中,“shell”已经存在具有特定的、被广泛接受的含义:

Unix shell 是一种命令行解释器或 shell,为 Unix 操作系统和类 Unix 系统提供传统的用户界面。

与 Windows shell 相比,完全不同的事情:

Windows shell 是 Microsoft Windows 中的主要图形用户界面。 Windows shell 包括众所周知的 Windows 组件,例如任务栏和“开始”菜单。 Windows shell 与“命令行 shell”不同,但两个概念是相关的。

在我们的例子中,我们将 Cinnamon(或 KDE、GNOME、Unity、XFCE)称为桌面环境:一组提供用户体验的应用程序(窗口管理器、面板、通知托盘项等...)。

答案2

要了解发行版之间的区别,也许您应该再次看看发行版是什么。

什么是发行版?

您可能知道这一切,但请再考虑一下。 Linux只是一个内核。在大多数情况下,这本身是完全没有用的。它所做的大部分工作只是为计算机上的硬件提供软件接口,以便其他程序可以使用它。

分布比这复杂得多。考虑到:

  • 特定于发行版使用的应用程序和库的选择。
  • 管理和维护系统的工具。
  • 文档和支持渠道。
  • 发布周期和社区管理。

在 Linux 之上添加了许多软件层来创建像 Ubuntu 或 Mint 这样的东西,并具有无限的配置和选择的可能性。

您还应该考虑发行版编辑器的性质。 Red Hat、SuSE 或 Ubuntu 等项目服务于企业目的,而 Mint、Debian 或 Gentoo 等其他项目则由志愿者管理。

一个发行版和另一个发行版有什么区别?

事实上,在发行版上运行的任何应用程序都可以(或轻松移植)到另一个发行版。毕竟它们都是非常相似的Unix系统。但是,无论您做什么,您都无法更改发行版的发布周期、打包新版本的速度,或者仅仅是官方论坛的外观。也许一个例子会更好地向您展示:

假设我正在不耐烦地等待软件的新版本,例如几天后就要发布的 Python-3.3。它如何适用于不同的发行版:

  • 滚动发布发行版(如 Arch Linux 或 Gentoo)将在其存储库中快速提供它。一旦维护者将其打包并运行基本测试,它就可用。
  • 企业发行版可能会承诺“即将推出的版本”。与此同时,它仍然可用,但不会出现在任何官方渠道中。
  • Debian 不会在经过彻底测试之前将其发布,这个过程可能需要数年时间。然而,它使得测试存储库很容易向公众开放。 (例如,Ubuntu 每 6 个月从该版本存储库创建自己的版本)。

Mint 和 Ubuntu 之间的真正区别是什么?

作为记录,我应该指出,我已经有两年多没有使用 Ubuntu 了,四年前也有几个月几乎没有使用过 Mint。我在这里说的可能不太准确。

Mint 和 Ubuntu 之间的差异很小,毕竟 Mint 完全基于 Ubuntu。最初,Mint 只是 Ubuntu 的重新包装,有 3 个不同点:

  • 它在默认安装中提供了专有技术(Ubuntu 没有)。
  • 它提供了一些图形工具,例如任务栏菜单或在基本 Ubuntu 安装之上修补的应用程序安装程序。
  • 它更加注重美学。它的口号仍然是“优雅源于自由”。

几年前,当 Ubuntu 试图推动 Unity 图形环境时,分裂扩大,Mint 社区大肆拒绝。这就是肉桂的由来。

我从未尝试过,但如果有人让 Cinnamon 在 Ubuntu 上运行而 Unity 在 Mint 上运行,我不会感到惊讶。我试图提出的论点是:

Mint 和 Ubuntu 等发行版之间的差异更多地在于社区以及比软件本身更微妙的选择。

进一步阅读

答案3

这是个好问题。我的理解是,理论上可以,但可能无法按预期工作。尽管 Mint 基于 Ubuntu,但 Ubuntu 和 Mint 使用不同的软件存储库。这些存储库使每个发行版都独一无二。在任何 Mint 或 Ubuntu 桌面系统上,您可以将存储库设置为您想要的任何内容。因此,您可以采用安装为 Mint 的系统并将所有存储库更改为 Ubuntu 存储库。然后,如果您重新安装所有软件包,您基本上就得到了 Ubuntu。然而,Ubuntu 和 Mint 各自对代码做了一些小调整(而这些代码又基于 Debian)。因此,如果 Mint 软件包期望进行一组调整,但 Ubuntu 软件包提供一组完全不同的调整,那么您最终可能会得到一个非常损坏的系统。

甚至 Ubuntu 的一些不同“版本”也对其代码进行了非常奇怪的调整。这是因为 Canonical 注重易用性而不是代码正确性或互操作性。最近,我尝试将 Xfce4 安装到 Ubuntu 13.04“服务器”安装上。我最终得到了一个完全崩溃的系统。真是一团糟。我最终安装了普通的 Ubuntu 13.04,然后在其上安装了 xfce。一切都神秘地起作用了。某些菜单和程序甚至看起来更好,就像它们是用完全不同的引擎渲染的一样。然而,我使用了在服务器安装中使用的所有相同的配置文件和软件包(以及在同一台计算机上完美运行的 Debian 安装)。

这对你来说就是规范魔法。如果你保留他们提供的一切,那么通常效果很好。如果你触摸哪怕是最轻微的东西,事情就会开始变得非常奇怪。

答案4

Linux 发行版不仅仅是一个内核。它们也是运行在内核之上的所有应用程序(包括apt-get),包括许多非常低级的东西,例如 init 系统。事实上,所使用的应用程序的选择是许多发行版的定义点。

你不能从 Mint 安装 Ubuntu,就像你不能把你的凯迪拉克带到汽车店,要求他们把它改装成保时捷,但保持凯迪拉克完好无损。他们可以花费大量的精力和费用将您的凯迪拉克改装为保时捷:毕竟它们的发动机盖下都有相似的发动机。同样,理论上您可以将 Linux Mint 安装转换为 Ubuntu 安装(不要尝试这个,这是一个很多的努力),但它们是两种不同的产品。将一个与另一个安装在同一位置是没有意义或不可能的。

相关内容