了解不同的 Linux 发行版

EGH*_*HDK 10 distros linux command-line ubuntu distribution-choice

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

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

我知道这是一堆问题,但希望有人能在 GUI 出现之前和 GUI 出现之后澄清多个发行版之间的区别。

Ren*_*nan 12

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

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

  • 包管理

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

  • 套餐选择

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

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

所以,理论上你可以把你的 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)称为桌面环境:提供用户体验的一组应用程序(窗口管理器、面板、通知托盘项目等)。

  • @EGHDK 不完全是:shell(在 UNIX 中的意思)在终端内运行。这在[“终端”、“外壳”、“tty”和“控制台”之间的确切区别是什么?](http://unix.stackexchange.com/q/4126/15630) 中有解释 (3认同)

rah*_*hmu 7

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

什么是发行版?

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

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

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

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

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

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

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

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

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

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

作为记录,我应该指出,我已经 2 年多没有使用 Ubuntu,而且在 4 年前的几个月里几乎没有使用过 Mint。我在这里说的可能不是很准确。

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

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

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

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

Mint 和 Ubuntu 等发行版之间的差异更多地与社区和微妙的选择有关,而不是软件本身。

进一步阅读


小智 5

这是个好问题。我的理解是理论上你可以,但它可能无法按预期工作。尽管 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 安装)。

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