AMD64/常见问答

From Gentoo Wiki
Jump to: navigation, search
This page is a translated version of the page AMD64/FAQ and the translation is 86% complete.

Other languages:
Deutsch • ‎English • ‎español • ‎français • ‎italiano • ‎日本語 • ‎한국어 • ‎Nederlands • ‎português do Brasil • ‎русский • ‎中文(中国大陆)‎

The Gentoo AMD64 Frequently Asked Questions article.


Article status
This article has some todo items:


介绍

这个文档包括在amd64平台上使用Gentoo Linux的最常见问题。其中的很多问题都来自于论坛、IRC以及各个邮件列表AMD项目提供在此架构上Gentoo Linux的支持。如果您对这个常见问答有疑问或建议,可以在关联的 talk page上面留言。

安装

AMD64 和 EM64T 有什么区别?

Both refer to 64-bit processors, one from AMD (AMD64) and the other from Intel (EM64T). AMD's 64-bit processors include the Athlon 64, Turion, Neo, Phenom, FX, AX/EX/CX and Opteron families. Intel's 64-bit processors include the Core 2, Core iX, Celeron, Xeon, and Pentium (all based on the Core 2 architecture and later). The last few versions of the old Pentium 4 and Xeon chips also support EM64T.

AMD的64位处理器生产线的发布远远早于英特尔。因此,出于历史原因,在 Gentoo 中所有兼容 x86-64 的架构的关键字都是amd64。所以,"AMD64"只是个64位处理器芯片的通称,并不专指某个公司的处理器。

我该使用哪种CFLAGS参数?

你只需简单地使用CFLAGS来避免你的系统未来可能会出现的问题。 既支持AMD又支持英特尔的CFLAGS值有-O2 -march=native -pipe

我该使用哪种内核?

您可以使用 Portage 中几乎所有的内核源代码。我们推荐使用sys-kernel/gentoo-sources 因为它是专为 Gentoo Linux 设计的。它包含了许多针对AMD64构架的补丁,因此是在 AMD64 平台上受 Gentoo 官方支持的唯一的内核。

请确保您激活了内核中IA32_EMULATION的选项。

root #cd /usr/src/linux
root #make menuconfig
KERNEL Enabling IA32 emulation
Executable file formats / Emulations  --->
  [*] IA32 Emulation
警告
如果你关闭此选项你可能在 multilib 系统上遇到编译失败的情况。

如果我从32位系统升级到64位系统,电脑会有更好的表现么?

这是一个很难回答的问题。在某些情况下,你将会体验到性能的提高,但这不是绝对的。仅就日常使用而言,64位和32位之间几乎没有差别。当涉及到浮点运算时, 64位通常的速度更快,这是通常运行多媒体应用程序和3D渲染的情形。您可能会对Linux.com的文章 64-bit performance in Gentoo Linux64-bit Linux and BSD are maturing steadily 感兴趣。在我们的论坛里,还有一个很好的帖子:Article: 64-bit performance in Gentoo Linux

什么是multilib,我该怎么使用它?

每一台AMD64处理器都能够运行32位代码和64位代码。但是,当你使用一个32位的应用程序,你将不能把它和64位的库混用,反之亦然。然而,如果一个32位程序所需要的共享库都完备地作为32位对象,你就可以以原生(无仿真)的方式运行32位应用程序,这就是multilib。您可以通过配置选择是否要[multilib的]支持。默认配置是启用multilib的。

Warning
Switching from a no-multilib to a multilib-enabled profile is currently not supported, so think over your decision twice before you use the no-multilib profile.

我该怎么创建一个32位的chroot?

请阅读32bit chroot guide.

我能通过emerge -e @world的方式升级我的x86系统到AMD64系统么?

因为 x86 (32位) 和amd64 (64位) 安装的一些差异,无法通过这种方法升级。请使用AMD64 Handbook的方法执行全新安装。

注意在x86系统上创建的二进制文件很有可能无法被AMD64系统上的 Package 读取。就比如说,MySQL, innoDB, Berkeley DB, SQLite, OpenLDAP的数据库就不能简单地原样复制。您需要转储 (Dump) 数据库到一个与体系结构无关的格式,如文本文件,然后才能尝试在AMD64系统中还原它。

我能用Reiser4么?

答案是否定的。Reiser4 在任何 Gentoo 内核项目中都不可用,所以 AMD64 团队也没有提供支持。

硬件

我的 NVIDIA/ATI 的驱动程序能工作么?

Yes, NVIDIA and ATI provide drivers that work on AMD64. You can install either x11-drivers/nvidia-drivers or x11-drivers/ati-drivers. If you have more questions about these drivers, you should read the nvidia-drivers guide or the ATI FAQ.

我该怎么使用 Cool'n'Quiet(清凉安静技术)、PowerNow 和SpeedStep(智能功效管理)?

你必须为支持这些特性编译内核。你只需要启用如下功能:

KERNEL Kernel options for Cool'n'Quiet/PowerNow/SpeedStep
Power management and ACPI options --->
  [*] Device power management core functionality
  [*] ACPI (Advanced Configuration and Power Interface) Support --->
    <*>   Processor
    <*>     Thermal Zone
  CPU Frequency scaling --->
  [*] CPU Frequency scaling
         Default CPUFreq governor (ondemand) --->
  -*-   'performance' governor
  <*>   'userspace' governor for userspace frequency scaling
  -*-   'ondemand' cpufreq policy governor
  <*>   ACPI Processor P-States driver
  CPU Idle  --->
    -*- CPU idle PM support

Then install sys-power/cpupower and edit /etc/conf.d/cpupower with a preferred text editor.

FILE /etc/conf.d/cpupower配置实例
# Options when starting cpufreq (given to the `cpupower` program)
START_OPTS="--governor ondemand"
  
# Options when stopping cpufreq (given to the `cpupower` program)
STOP_OPTS="--governor performance"

最后,你只需要运行 rc-update add cpupower boot ,以确保它随系统启动。

附注
关于 CPU 电源管理的更多技巧你可以参考电源管理指南

应用程序

我能用Adobe Flash么?

Yes. Install www-plugins/adobe-flash. Be sure to read any messages displayed by the ebuild once it has been emerged.

我想安装某个Package,但是Emerge显示:(masked by: ~amd64 keyword)

这表示这个Package还在测试树(testing tree)中。请阅读Portage使用手册(man portage)或者AMD64 Handbook中的Mixing Software Branches章节来获取更多信息。

我想安装某个Package,但是Emerge显示:(masked by: missing keyword)

这意味着 Package 还没有被测试过。它不一定意味着Package不能正常工作。您可以通过接受另一种(一些)架构的方式来接受它。下面的例子显示,你可以通过给Portage一些关键字使之接受给定Package的安装。

root #echo "category/packagename **" >> /etc/portage/package.accept_keywords
root #emerge packagename

如果你运行正常,请在Gentoo's Bugzilla登记Bug来让我们知道,这样AMD64平台团队就可以把此Package标记,其他用户就可以从你的测试中受益。

警告
请不要试图使用像ACCEPT_KEYWORDS="~x86" emerge packagename这样的命令。这样会破坏 Portage 树并导致系统形同虚设。

我该怎么帮助 Gentoo/AMD64 项目?

我该怎么帮助?

随着AMD64架构的日益普及,我们也日益需要更多的帮助。我们仍然有很多工作要做以提高 Gentoo /AMD64 的品质。一个普通的用户可以通过以下途径帮助我们:

  • Filing general bug reports.
  • Testing software that does not yet have the ~amd64 keyword.
  • Help answering questions on the mailing lists, forums and IRC channels.
  • Sending patches.
  • Participating in the AMD64 Arch Testers project.

其他资源

我在哪里可以得到有关 Gentoo/ AMD64 的更多的帮助或信息?

If any of your questions wasn't answered here, you can try other resources listed on our project homepage. You can also ask us at #gentoo-amd64 on chat.freenode.net, Gentoo/AMD64 Forums, or on the gentoo-amd64@lists.gentoo.org mailing list.
This article is based on a document formerly found on our main website gentoo.org.
The following people contributed to the original document: Simon Stelling, Luis Medinas, Gerald J. Normandin Jr., Xavier Neys, Joshua Saddler (nightmorph)
They are listed here as the Wiki history does not allow for any external attribution. If you edit the Wiki article, please do not add yourself here; your contributions are recorded on the history page.