谈谈 Arch Linux

By Rei on 20 Apr 2014

最近 Ubuntu 14.04 LTS 发布了,我也第一时间装上了 Kubntu 14.04 LTS,用了两天感觉是至今最成熟稳定的版本,推荐使用。

不过在这个时间点我想谈谈 Arch Linux,因为它在爱好者中口碑太好了,以至于每次别的发行版有更新,都会看到 Arch 的宣传。比如这个:

Arch: Shangri-La for Ubuntu Power Users? http://www.omgubuntu.co.uk/2014/04/arch-shangri-la-ubuntu-power-users

Archlinux

我也经常在 Twitter 上被 @,推荐我试试 Arch Linux,说比现在我用的发行版好多了。然后我又要解释我以前已经用过两年 Arch,后来才用的 Kubuntu。所以我想整理一下我对 Arch 的看法,以及为什么我后来放弃了 Arch。

优点

Arch Linux 主要有以下优点:

  1. 轻量,装好后只有一个命令行,适合有高度定制需求的用户。
  2. 简洁,基本都通过文本配置和命令行工具进行操作。
  3. 滚动升级,没有稳定版本的概念,每次升级都是升到最新版。
  4. AUR,一个可由用户提交内容的包管理机制。

AUR 特别让我印象深刻,它只要提交一个配置脚本(类似 .gemspec),用户可以方便的检查内容,然后用专门工具根据配置下载编译软件,而在 Ubuntu 我一直没搞明白 deb 要怎么打包。有了 AUR 和活跃的打包者,Arch 上的软件基本都是最新版的。

缺点

Arch 的优点除了 AUR 以外,换个角度看都是缺点。

无法开箱即用

Arch 的重装是一个庞大的工程,即使熟练也需要花掉一整天时间。安装过程要不停查阅文档,修改配置,所以你最好准备两台电脑。而在看到图形界面的一刹那,你会感受到从地牢看到光明的救赎感,紧接着又投入去配置字体和输入法。作为有 Hacker 精神的人,我不害怕接触这些繁杂的任务,但是我不想再做第二次。

无法开箱即用的潜在问题是阻碍你尝试新事物。虽然 Arch 号称你可以自己动手安装最新的软件,但我考虑到重装成本,第一想法是装好之后就不要动了。

自己动手也意味着对所有事情都需要成为专家。在我使用 Arch 的两年里一直没有安装 WIFI 管理工具,我搞不清楚那一大堆选择中哪个比较好。有一天我发现不得不用 WIFI 的时候,我换上了 Kubuntu。

更新过于频繁

滚动更新在刚开始会带来很多刺激,但久而久之就成为了负担,每天都像打卡。如果有一段时间忽略了更新,还有可能升不上去了。我就曾经升级搞挂过,查阅官方公告才知道有个系统文件夹改动需要手工操作。

Arch 有激进更新的传统,比如 python 2 升 python 3,MySQL 被 MariaDB 替换,如果你没有把 Arch 的官网设为浏览器首页,可能哪一天升级就把自己吓一跳。

由于这种滚动更新的特性,个人非常不推荐在线上生产环境使用 Arch。生产环境稳定第一,需要的是安全更新而不是特性更新。Arch 没有稳定版的概念,所以无法区分安全更新和特性更新,一升级就必须都两者都接受。

我的选择

操作系统是一个工具,它应该提升我们的效率而不是阻碍。我对操作系统的期望是这样的:

  1. 开箱即用。希望我把事情搞砸的时候,重头来过的代价不会太大。
  2. 外观优美。美观可以提升工作效率。
  3. 可用作服务器。作为 Web 开发者,服务器和开发机用同一套系统可以减少处理依赖时遇到的问题。

现在为止,我找到的最好方案是:Ubuntu 系列。

Ubuntu 系列除了官方版本,还包括各种社区衍生版:Kubuntu,Lubuntu,Xunbuntu 等,还有最近很火的 elementary OS,它们的软件包管理器兼容,都使用 Ubuntu 的软件源,所以哪天口味变了,可以较少痛苦地切换到另一个发行版。我在服务器上使用 Ubuntu Server,开发机使用 Kubuntu。

Ubuntu 的版本分为 LTS 稳定版和社区版两种。LTS 2 年发布一次,支持周期为 5 年,适合服务器和开发机;社区版 6个月发布一次,支持周期为 9 个月,适合折腾。对于效率人士,Ubuntu LTS 是最好的选择。

最后,关于 Arch

Arch 是个优秀的发行版,它纯粹由社区驱动,体现了 Linux 的简洁和优美,但作为生产环境稳定性不足。它是 Linux 世界里一处独特的风景,值得看一看,但不必要一直停留在那里。更多的时间放到创造上,而不是重复别人的工作。