我从 Windows 世界转向 Linux,我想了解该系统的详细信息,以便使其成为我的主要日常工作和托管环境。
就操作系统而言,我几乎是个完全的初学者,所以我必须从头开始学习。我不怕弄脏,但我也希望这个过程足够实用。一旦我熟悉了操作系统,我将主要在其上开发 Ruby on Rails 和 Clojure 应用程序,然后希望将它们托管在同一个环境中。
排除像 Ubuntu 和 Mint 这样更面向消费者的发行版(或者它们值得考虑吗?),从学习和服务器托管的角度来看,对我来说有哪些好的选择?我听说过 Arch Linux 和 Debian 的优点。
谢谢你!
答案1
如果您想要一台用于本地开发的机器(台式机),并且您想学习很多东西 - 那么就选择 Arch。它会迫使你了解一些关于 GNU/Linux 的底层知识,因为你必须从命令行组装所有东西,所以要做好准备,需要大量的阅读,尽管它实际上并不像人们那么难思考。如果您不是经验丰富的 GNU/Linux 用户,第一次安装需要的时间会长一点,但维护起来却轻而易举。 Arch 还有非常好的 wiki,其中有大量有用的信息,它有很多很多的包 + AUR(Arch 用户存储库(其中包含 Arch 官方存储库所没有的一切))。 Arch 还拥有所有最新的软件包,因为它是“前沿”的。但出于完全相同的原因,我不会推荐它用于“生产”服务器。服务器需要稳定,而不是前沿。
所以,如果你想要一个服务器发行版 - 我会选择 Debian。非常稳定(但较旧的软件包),在我看来比 Arch 更容易使用,不是一个很好的 wiki.. 也让你学到很多东西。
Gentoo 有点过于极端(在编译东西上浪费了太多的麻烦和太多的时间),但也许会给你最多的知识,因为你必须深入挖掘才能使其工作。用来学习一段时间固然不错,但日常使用就不太舒服了。
虽然正如其他人指出的那样,确实没有错误的选择。您可以使用任何其他发行版学到很多东西。不同的是,Gentoo/Arch/Debian 从一开始就会“强迫你”这样做。最后,这一切都归结为基本上或多或少相同(或非常相似)的事情。
答案2
实际上不存在任何“正确”的分布。免费/自由/开源软件的好处是它们中的大多数也是免费的(就像啤酒一样)。
因此,您可以尝试任何您喜欢的发行版,看看它是否符合您的需求,如果不符合您的需求,则尝试另一个发行版。
您对托管 Web 应用程序的要求可能有点过于笼统。例如,LAMP 应用程序几乎可以在任何发行版上运行。如果你想主持杰博斯或者IBM WebSphere 应用服务器您的选择仅限于支持的操作系统,例如RHEL或者斯莱斯。
另一件需要考虑的事情是您是否需要专业支持。
你可以看看发行观察以获得大多数(如果不是全部)可用发行版的概述。
答案3
我不会将 Ubuntu 视为面向消费者的发行版,它实际上对于桌面和服务器来说都是一个不错的选择。他们甚至同时拥有桌面和服务器版本:http://mirror.anl.gov/pub/ubuntu-iso/CDs//precise/。在 Amazon EC2 等云上运行也是一种非常常见的选择。
在本地工作机器和托管环境的 Ubuntu 服务器上运行 Ubuntu 桌面,您将获得对两者使用相同操作系统的好处,即:本地和服务器上的工作方式相同。
实际上,现在我更喜欢桌面上的 Linux Mint,但由于它基于 Ubuntu,因此您可以在服务器上运行 Ubuntu,并且仍然可以获得几乎相同的好处。
答案4
不要选择 Fedora。这是一个很好的发行版,但您不能忘记它的主要目标是测试RedHat Enterprise Linux 的新软件包。
Gentoo 非常适合学习 Linux,但您需要准备好进行大量故障排除和修补。 (带有它的概念)。我自己多年来一直很喜欢这个发行版,但后来我改用 Ubuntu,因为打补丁经常会破坏系统,需要进行故障排除。有很多非常好的文档,我总是设法让 Gentoo 重新启动并运行。
RHEL 和 SLES/SLED(RedHat 和 Novell Suse)是企业发行版,需要支付支持费才能接收补丁。
我对 SLES/SLED(因为办公室里的所有麻烦)企业级 Linux 印象不深。这就是我避免使用 OpenSuse 的原因
我自己喜欢 Ubuntu 的易用性/安装/修补。它非常简单、稳定并且具有可预测的升级周期。我使用它作为主桌面和服务器操作系统。
或许发行观察是阅读更多有关各种发行版的信息的一个很好的起点。