常见问题 - Arch Linux 中文维基

跳转到内容

# 常见问题

来自 Arch Linux 中文维基

## 一般问题

### Q) Arch Linux 是什么？

A) 请阅读 Arch Linux。

### Q) 为什么我不想用 Arch Linux ？

A) 您或许不想使用 Arch Linux，如果您：

- 没有经验、能力、时间、想法和愿望去打理这样一个高度可定制的 GNU/Linux 发行版。
- 需要非 x86_64 平台支持。
- 你是狂热的自由软件爱好者，只希望发行版提供 GNU 定义的自由软件。
- 你认为好的操作系统应当是已经配置好的：安装介质应默认包含一套完整的应用软件包、图形化桌面环境——达到“开箱即用”。
- 你不需要或不想使用滚动升级的发行版。
- 你对目前使用的操作系统感到满意。

### Q) 为什么我要用 Arch Linux ？

A) 因为 Arch 是最好的！

### Q) Arch Linux 支持什么架构?

A) Arch Linux 现在只支持 x86_64(也被称为 amd64 ) 架构，对 i686 架构的支持已于 2017 年 11 月结束。

非官方支持的移植版本有： i686 和 ARM [1]。

### Q) Arch Linux 遵循 FHS 吗?

A) Arch Linux 遵循适用于 systemd 服务管理器的文件系统架构，file-hierarchy(7) 包含了每个文件夹的解释和设计。 `/bin`, `/sbin` 和 `/usr/sbin` 现在是 `/usr/bin` 的符号链接，`/lib` (以及 `/lib64`) 是 `/usr/lib` 的符号链接。

### Q) 我是一个彻头彻尾的Linux新手，我应该用 Arch Linux 吗？

A) 如果您是新手，要使用 Arch Linux 就必须愿意花时间学习新系统，并接受 Arch 是一个需要有 DIY 精神及能力的系统，每个用户都是自己系统的组建者。

在您开始问任何问题之前，建议您自己先通过 Google 、Wiki 类网站、ArchWiki 或者 Linux 相关论坛进行搜索。我们为您创建了这些资源并让您可以随时访问，有成千上万的志愿者与爱好者为您提供大量的信息资源。

推荐阅读: Arch术语#RTFM 。

### Q) Arch Linux 的安装和配置十分麻烦，社区的人总是让我去读那些死长死长的手册。

A) Arch Linux 是针对一部分特定用户群体设计的，如果您不在其中，也许 Arch Linux 并不适合您。

### Q) Arch Linux 是为服务器、桌面还是工作站设计的？

A) Arch Linux 并不是针对特定应用设计的，而是针对有特定需求的用户群体设计的。Arch Linux 适合那些喜欢并有动手能力的用户，以及希望打造属于自己的独一无二的系统的用户。因此，对于这些用户，Arch Linux 能胜任各种工作。也有许多人把 Arch Linux 同时当做桌面、服务器和工作站系统。此外，archlinux.org 网站也在 Arch Linux 上运行。

### Q) 我太喜欢 Arch Linux 了，希望开发团队实现一个新功能。

A) 您可以参与进来，分享代码和解决方案。如果广大用户和开发者确实认同这个功能，您的想法有机会被添加到新版本系统中。Arch 社区依靠大众贡献分享的代码和工具蓬勃发展。

### Q) 一般什么时候发布新版本？

A) Arch Linux 的发布版本只是安装和修复环境，包含base包 元软件包和一些辅助软件，一般每月上旬发布一次。

Arch Linux 使用滚动升级模式，只需执行一条命令，便可升级系统到最新版本。基于上述原因，发布新版本对 Arch Linux 来说并不重要，因为滚动升级的机制会使系统永葆青春。使用`pacman -Syu`命令升级系统，无需重装系统即可更新到最新版本。同样，Arch Linux 的新发行版本并不会提供什么新的功能，新的功能通过`pacman -Syu`命令即可立即拥有。

### Q) Arch Linux 是否稳定？会不会经常坏掉？

A) 每个 Arch Linux 的用户应当对自己执行滚动升级的系统稳定性负责。由用户自行决定何时升级、修改配置。Arch Linux 与其他发行版的一个不同之处在于，Arch Linux 是真正的“DIY”发行版。一味抱怨系统损坏是没有意义的，毕竟上游的改动不是 Arch 开发者的责任。

如果您想要使系统变得更加稳定，请参阅：系统维护，以提高系统稳定性。

### Q) Arch Linux 需要更多曝光（比如广告）。

A) Arch Linux 已经得到了应有的新闻媒体曝光机会。Arch Linux 的目标不是为了一步登天。我们的目标只是使它变得更好。让它自然成长吧，试图强迫它成长得更快会造成诸多问题。

### Q) Arch Linux 需要更多开发者。

A) 或许吧。欢迎您来帮助我们！可以来逛逛论坛，IRC channels 以及邮件列表，看看您有什么需要做的。或者，看看论坛的 Community Contributions 子版面吧。

## 安装

### Q) 我感觉 Arch Linux 需要安装程序，比如带有图形界面的那种。

A) 从 2021-04-01 起，Arch Linux 有了更好的安装程序。参见 archinstall。

### Q) 我安装了 Arch Linux，现在眼前只有一个命令行登录界面，我该怎么办？

A) 建议您阅读通用建议。

### Q) 哪个桌面环境或窗口管理器比较好？

A) 有很多不同的选择，从中选择最适合您的即可。参见：桌面环境。

### Q) Arch Linux 比起其他“小型”发行版，有何独特之处？

A) 建议您阅读 Arch与其他发行版的比较。

## 其他

### Q) 什么是 AUR ？

A) 建议您参见：Arch用户软件仓库#FAQ。

### Q) 为什么我感觉 Arch Linux 下网速比其他系统慢？

A) 您的网络是否正确配置？如有疑问，您可以读一读网络配置。

### Q) 为什么 Arch Linux 把我的所有内存用光了？

A) 实际上，内存不用就浪费了。

很多新用户发现，Linux 内核对物理内存的处理机制和他们所以为的有所不同。由于访问物理内存比访问磁盘要快得多，内核会把最近访问的数据缓存到物理内存中。物理内存中缓存数据会在空闲物理内存耗尽时被释放。

而造成新用户的困惑的罪魁祸首，恐怕是`free`命令：

    $ free -h

                  total        used        free      shared  buff/cache   available
    Mem:          2.8Gi       1.1Gi       283Mi       224Mi       1.4Gi       1.2Gi
    Swap:         3.0Gi       881Mi       2.1Gi

要注意 "free" 和 "available" 的区别，即空闲和可用的区别。在上面的例子中, 电脑所有的 2.8G 内存几乎全部占用。"free"中只剩下 283 MiB 是未使用的。但是在总量 2.8G 内存中的 1.4G 是 "buff/cache" 缓存。实际上还剩下 1.2G 是可使用的（不考虑交换空间）。查看 free(1) 了解更多。

这有什么用？当然是更好的性能！

如果您对此十分困惑，请参见此文。另外还有一篇文章有详细的解释：https://www.linuxatemyram.com/。

### Q) 我的磁盘空间被什么东西占用了？

A) 问题的答案因系统而异。有一些应用列表或许能告诉您答案。

## 软件包管理

详情请参考 pacman、pacman/提示和技巧和官方仓库。

### Q) 我发现了某个软件包的错误，该怎么办？

A) 首先您需要搞清楚 Arch 队伍是否能够解决这个错误。有时并非如此（Firefox 崩溃也许是 Mozilla 开发团队的错误）——这便是所谓的上游错误。如果您确信是 Arch 的问题，您可以采取以下步骤：

1. 在论坛中搜索有关信息。看看是否有人已经注意到这个情况。
2. 在 Arch Linux Gitlab 的 Bugtracker 提交具有详细信息的 Bug 报告。
3. 也可在论坛中发篇帖子，阐述问题细节并说明您已经报告过这个情况。这会避免其他人重复报告同样的问题。

### Q) Arch Linux 软件包需要独特的后缀名。“.pkg.tar.zst”太长了，而且令人困惑

A) 在 Arch 邮件列表曾有过讨论。一些用户提议使用 .pac 作为文件扩展名。但就目前情况来说，我们没有计划改变软件包的扩展名。

正如 Tobias Kieslich（一名 Arch 开发者）所说： “一个软件包就是一个 [压缩包] ！它可以被很多软件打开、研究和操作。此外，这种 mime-type 也可以被大多数软件自动地正确识别。”

### Q) Pacman应该提供函数库接口，这样其他软件就可容易地获得软件包信息。

A) libalpm(3)（Arch Linux Package Management，Arch Linux 软件包管理）是 pacman 的后端，这个库大大方便了交互式前端的编写（例如图形化前端）。

### Q) Pacman需要某某功能！

A) 如果您有新想法，可以在 pacman-dev 邮件列表进行讨论，或者查看官方论坛看看其他人有没有类似的想法。

也欢迎您自己在系统中实现新功能。也许您的代码或补丁不会被官方接受，但他人可能会用到。

### Q) 仓库和镜像的区别是什么？

A) 请您参考软件仓库。

### Q) 我刚刚安装了一个软件包，怎么启动呢？

A) 如果您正在使用像KDE和GNOME这样的软件包，它们的程序一般会自动出现在菜单中。如果是命令行程序，则可使用如下命令查看可执行文件名称和位置：

    $ pacman -Qlq package_name | grep /usr/bin/

### Q) 在官方仓库中，为什么只为每个共享链接库提供一个版本？

A) 某些发行版，比如 Debian，会为一个共享库提供多个版本，比如：`libfoo1`，`libfoo2`，`libfoo3`等等。这样，就可以同时安装那些依赖不同版本 libfoo 的程序。

Arch 官方只对最新版的程序提供支持。只要摆脱了过时的软件包，包的维护人员就可以全力维护新版本的程序。而只要上游提供新版本的共享库，我们就会重新编译相关程序，更新仓库。

### Q) 执行`pacman -Syu`时，终端显示某个共享库需要升级，但依赖它的程序没有升级，我该怎么做呢？

A) 这种情况理应不会发生。假如官方源一个名为`foobaz`的程序，成功地使用新版本共享库`libbaz`编译成功，那么它应该和`libbaz`一同更新。如果编译不成功，由于旧的`foobaz`存在依赖关系，例如：

    libbaz=1.5

所以当`libbaz`升级时，它会被移除。

如果`foobaz`是您自己编译的或是从 AUR 获取的，当`libbaz`升级时您应当重新编译它。如果编译失败，还请您通知`foobaz`开发者。

### Q) 会不会出现一种情况就是，仓库中的内核主版本更新了，而某些驱动包没有一同升级的情况？

A) 这个绝对不可能。当内核主版本升级时，所有支持的驱动一定会一同更新。

然而，如果您安装有非内核支持的驱动程序包，比如`catalyst`，内核升级有可能导致系统挂机。您应当在内核升级时自行重编译它们。

### Q) 升级前该做什么?

A) 在升级之前，记得访问 Arch Linux 新闻列表、通告邮件列表 (有时候需要看一看论坛和各个邮件列表）。需要特别注意的事项都会列在那里。另见系统维护#更新系统。

### Q) 我知道某个包已经更新，但是 pacman 并没有发现更新

A) 可能是 pacman 镜像还没有同步，最好是等等看或者是换一个镜像服务器。MirrorStatus 可以帮助您区分哪些镜像服务器是最新的。

### Q) 某上游项目已经发布了一个新版本，要多长时间 Arch Linux 才会更新到新版本？

A) 软件包将会在准备好之后发布，发布的时间取决于上游的变动和打包人员的精力。

如果发布的是小版本，可能只需要几个小时。如果是大版本更新，则可能需要数周时间。

此外，有些软件包会在 testing 仓库中停留一段时间进行小范围测试。软件包维护者会尽快将稳定的版本发布到仓库中。如果您发现官方软件仓库中的软件过旧，可以在软件包页面进行标记。

### Q) 如果需要一个老的软件库，可以 symlink 到新版本吗？

A) 运气好的话，可以用来救急。但是这并不是一个好办法：

- 软件库不会无缘无故更新版本 - API/ABI 可能发生变动，这些变动是否影响到使用只能听天由命。
- 软件包管理器不会记录软链接，缺乏经验的新手执行这种操作，可能会引起难以恢复的错误。
- 未被记录的老版本文件很快就会被遗忘，且安全漏洞不会被修复。

最好是使用或编写兼容软件包，用其提供需要的版本。

## 关于64-bit

### Q) 我如何确定我的处理器（CPU）是否支持 x86_64?

A) 运行下面的命令：

    $ less /proc/cpuinfo

查找 `flags` 条目。如果你看见 `lm` 标志，那么您的处理器是支持 x86_64 的。

Windows 系统用户可以使用免费软件 CPU-Z 或商业软件 AIDA64 中的 CPUID 工具查看 CPU 的信息，这些软件可以通过识别 CPU 的指令集来确定处理器是否支持64位。

如果您使用带有 AMD 的 "x86-64" 指令集或者英特尔的 "EM64T" 指令集的 CPU，则可以使用 x86_64 的发行版和二进制包。

### Q) 为什么现在应该使用64位系统?

A) 在大多数情况下，64位系统会更快，而且更安全。更安全是因为它拥有 Address space layout randomization (ASLR) 、 Position-independent code (PIC) 特性，以及 NX Bit (它在i686内核中，由于禁用了物理地址扩展 (PAE)而无法使用)。

如果你的计算机在运行 4.0 GiB 或者更多的内存，那应该使用64位系统，因为多余的内存是无法被32位系统分配的。

现如今，程序员也更加倾向于忽视32位系统，因为新的 x86 CPU 通常都支持64位扩展。

还有许多其他的理由让我们抛弃32位系统。但是在内核、用户空间和单独的程序中，我们没有办法列出所有的64位系统比32位系统做得更好的地方。

## 中文社区仓库

主条目： Arch Linux 中文社区仓库

### Q) [archlinuxcn] 仓库和 AUR 是什么关系？

A) 没有特别的关系。部分软件包的 PKGBUILD 打包脚本也同时存在于 AUR 而已。然而并不是所有 [archlinuxcn] 提供的软件包都存在于 AUR，也不是所有同时存在于 [archlinuxcn] 和 AUR 的软件包就一定会使用相同的打包脚本。我们不是 AUR 的二进制版。

在使用 [archlinuxcn] 提供的软件包时遇到问题，也请您报告到我们的 GitHub issues。

### Q) 既然有 AUR，我为什么会想要使用 [archlinuxcn] 仓库？

A) [archlinuxcn] 仓库提供许多额外的、已经打包好的软件。相比于 AUR，您不必就地从世界各地下载软件源码然后花费时间编译，而是可以直接安装已经编译好的软件包。

如果您是中国大陆用户，您可以利用我们位于中国大陆境内的多个镜像源，来快速下载到软件，而不必处理访问国际网络可能会遇到的问题。

### Q) 我是 Manjaro （或其它 Arch Linux 衍生发行版）用户，我可以使用 [archlinuxcn] 仓库吗？

A) 我们不建议这样做。[archlinuxcn] 仓库只支持 Arch Linux，在衍生发行版上使用可能会出现问题。

如果您在非 Arch Linux 系统上使用 [archlinuxcn] 仓库遇到了问题，还请不要将问题报告给我们。

分类：​

- 关于 Arch

常见问题
添加话题