AMD64/FAQ

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


Gentoo AMD64 のよくある質問集の記事。

Article status
This article has some todo items:


はじめに

この文書は、amd64システム上のGentoo Linuxについての最もよくある質問をまとめたものです。これらの質問の多くは、フォーラムやIRC、メーリングリストでされたものです。AMD64プロジェクトはこのアーキテクチャ上のGentoo Linuxのためのサポートを提供しています。このFAQに関しての提案や疑問については、議論ページにコメントをお寄せください。

インストール

AMD64 と EM64T の違いは何ですか?

それぞれ、AMD (AMD64) と Intel (EM64T) の64ビットプロセッサのことです。AMDの64ビットプロセッサとしては、Athlon 64やOpteron、Turion、Neo、Phenom、FX、AX/EX/CX、RyzenそしてEPYCファミリーがあります。Intelの64ビットプロセッサとしては、Core 2や、(Core 2アーキテクチャまたはそれ以降を採用している)Core i X、Celeron、Pentiumがあげられます。古いPentium 4やXeonチップのうち最近のいくつかのバージョンも、EM64Tをサポートしています。

AMDの64ビットプロセッサシリーズはよく、Intelが発売するものへ対抗しています。したがって、Gentooにおけるすべてのx86-64互換アーキテクチャのarchキーワードは、歴史的経緯で amd64になっています。よって、「AMD64」は、AMD製及びIntel製の64ビットチップのことを一般的に指します。

CFLAGSには何を設定すべきですか?

将来の問題発生を避けるために、単純な CFLAGS を使用すべきです。AMD 及び Intel (EM64T) に対応する CFLAGS 変数の値は、-O2 -march=native -pipe です。

どのカーネルを使用すべきですか?

Portage のなかにあるほぼすべてのカーネルソースが利用可能です。ただし、 sys-kernel/gentoo-sources をお奨めします。Gentoo Linux向けに設計された特別なカーネルだからです。これは、AMD64特有のパッチが適用されており、Gentoo/AMD64に公式に対応する唯一のカーネルです。

カーネルの IA32_EMULATION オプションが有効化されていることを確認してください。

root #cd /usr/src/linux
root #make menuconfig
KERNEL IA32 エミュレーションの有効化
Executable file formats / Emulations  --->
  [*] IA32 Emulation
警告
このオプションが無効化されていると、マルチライブラリ環境ではビルドに失敗してしまうかもしれません。

32ビットより64ビットのシステムのほうが性能が高いですか?

これは簡単には答えきれない質問です。性能が向上する場合もあれば、そうならない場合もあります。日常的な利用であれば、64ビットと32ビットでは差がほとんどありません。マルチメディアアプリケーションや3Dレンダリングで通常利用される浮動小数点演算となると、64ビットのほうが一般的に高速です。Linux.comの記事 64-bit performance in Gentoo Linux64-bit Linux and BSD are maturing steadily が参考になるかもしれません。また、フォーラム内の記事 Article: 64-bit performance in Gentoo Linux も良いでしょう。

特に要件がなければ、現在のほとんどのシステムは 64 ビットとすることができるでしょう。

マルチライブラリ(multilib) とは何ですか? 利用するにはどうしたらよいですか?

すべてのAMD64プロセッサは、64ビットのコードだけではなく32ビットのコードも実行可能です。しかしながら、32ビットアプリケーションには64ビットライブラリを適用することはできず、逆もまた同様です。ですが、必要なすべての共有ライブラリが32ビットオブジェクトで用意されていれば、32ビットアプリケーションをネイティブに(エミュレーションではなく)実行することができます。マルチライブラリ対応にするか否かは、所定のプロファイルで選べます。デフォルト値は、マルチライブラリ有効なプロファイルです。

警告
現在のところ、マルチライブラリ無効のプロファイルから有効のプロファイルに切換えることはできません。マルチライブラリ無効のプロファイルを使用することの決定は、十分な熟慮の上で行われなければなりません。迷っているのなら、マルチライブラリを選択してください。

32ビットの chroot はどのように作成するのですか?

32ビット chroot ガイド を参照してください。

x86のシステムを AMD64 に、 emerge -e @world をしたら移行可能ですか?

x86amd64 ではインストール内容にある程度の相違があるため、この方法での移行は不可能です。AMD64 ハンドブックを読んで、インストールしなおしてください。

また、x86システムで作成されたバイナリファイルは、AMD64システムのパッケージでは読み出せないことが多いです。特に、例えばOpenLDAPのような一部のデータベースでは、そのまま複製しても動きません。AMD64システムで復元するにはあらかじめ、テキストファイルのような、アーキテクチャに依存しない形式でデータベースを書き出しておく必要があります。MySQL、Berkley DBやSQLiteのデータベースファイルはアーキテクチャに依存しないので、それらに対応するデーモンがもしあれば、それらをシャットダウンした後、データベースファイルを自由に動かすことができます。

ハードウェア

NVIDIA/ATI のバイナリドライバは動作しますか?

はい、NVIDIA と ATI は、AMD64で動作するドライバを提供しています。x11-drivers/nvidia-drivers または x11-drivers/xf86-video-ati をインストールできます。nvidia-drivers ガイドATI FAQ もご確認ください。

Cool'n'Quiet/PowerNow/SpeedStep 機能はどうしたら利用可能ですか?

カスタムカーネルを使用している場合は、これらの機能に対応したカーネルをコンパイルしなければなりません。以下の機能を有効にしてください:

KERNEL 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

そして sys-power/cpupower をインストールして、お好みのエディタで /etc/conf.d/cpupower を編集しましょう。

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"

あとは、以下のコマンドを実行して、ブート時に常に cpupower デーモンが開始されるようにしてください:

root #rc-update add cpupower boot
注意
さらなる CPU パワーマネジメントに関するテクニックは、パワーマネジメントガイドに載っています。

アプリケーション

あるパッケージをインストールしようとすると、emergeが (masked by: ~amd64) と出力します

このことはパッケージがまだ'testing'ツリーにあるということを示しています。詳しくはPortageのマニュアルページ(man portage)またはAMD64 ハンドブックの「ソフトウェアのブランチを併用する」をお読みください。

あるパッケージをインストールしようとすると、emergeが (masked by: missing keyword) と出力します

これはパッケージがまだテストされていないということを示しています。パッケージが必ずしも動かないというわけではありません。別のアーキテクチャ(やアーキテクチャ群)を受け入れることでパッケージをマスク解除できます。以下の例では、どのようなキーワードであってもインストールを受け入れるよう、Portageに設定する方法を示しています:

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

もしこれでパッケージがうまく動いたなら、Gentoo's Bugzilla までバグを報告してくだされば、AMD64 チームはパッケージをキーワードすることができ、他のユーザーの役に立ちます。

警告
ACCEPT_KEYWORDS="~x86" emerge packagenameのようなコマンドを実行しないでください。ほぼ確実にあなたのPortageツリーを壊してシステムを役立たずにしてしまいます。

参考

  • Project:AMD64
    This page 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,
    They are listed here because 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 each article's associated history page.