ハンドブック:IA64/インストール/ベース
chroot する
任意自由選択: ミラーサーバーを選択する
ディストリビューションファイル
非 Gentoo インストールメディアを利用している場合、このステップは飛ばしても大丈夫です。後で (新しい環境に入った後で) stage3 の中で app-portage/mirrorselect パッケージを emerge することができ、その後、この節で示す操作を行うことができます。
ソースコードを短時間でダウンロードするために、速いミラーを選択することをおすすめします。Portage は make.conf の中の GENTOO_MIRRORS 変数に指定されたミラー群を使用します。Gentoo のミラー一覧をブラウザで開き、インストール対象のマシンに物理的に近い一つまたは複数のミラーを選択することができます (これらは高い頻度で最も高速になり得ます)。しかしながら mirrorselect というツールが、より手っ取り早くミラーを検索して選択するための素晴らしいテキストインターフェースを提供しています。単に選択したいミラーにカーソルを合わせて Spacebar を押し、一つまたは複数のミラーを選択してください。
root #
mirrorselect -i -o >> /mnt/gentoo/etc/portage/make.conf
Gentoo ebuild リポジトリ
ミラーを選択するために次に重要なステップは、/etc/portage/repos.conf/gentoo.confファイルでGentoo ebuildリポジトリを設定することです。このファイルはパッケージリポジトリを更新するときに必要になる同期情報を含んでいます(パッケージリポジトリは、Portageがソフトウェアパッケージをダウンロード、インストールする時に必要なすべての情報を含むebuildと関連ファイルを集めたものです)。
リポジトリの設定は単純な数ステップでできます。最初に(それが存在しなければ)repos.confディレクトリを作成します。
root #
mkdir --parents /mnt/gentoo/etc/portage/repos.conf
次に、Portageが提供するGentooリポジトリ設定ファイルを(新規作成した)repos.confディレクトリにコピーします。
root #
cp /mnt/gentoo/usr/share/portage/config/repos.conf /mnt/gentoo/etc/portage/repos.conf/gentoo.conf
エディタで覗き見するか、catコマンドを使いましょう。そのファイルは.iniフォーマットで、以下のような記述になっているはずです。
/mnt/gentoo/etc/portage/repos.conf/gentoo.conf
[DEFAULT]
main-repo = gentoo
[gentoo]
location = /var/db/repos/gentoo
sync-type = rsync
sync-uri = rsync://rsync.gentoo.org/gentoo-portage
auto-sync = yes
sync-rsync-verify-jobs = 1
sync-rsync-verify-metamanifest = yes
sync-rsync-verify-max-age = 24
sync-openpgp-key-path = /usr/share/openpgp-keys/gentoo-release.asc
sync-openpgp-key-refresh-retry-count = 40
sync-openpgp-key-refresh-retry-overall-timeout = 1200
sync-openpgp-key-refresh-retry-delay-exp-base = 2
sync-openpgp-key-refresh-retry-delay-max = 60
sync-openpgp-key-refresh-retry-delay-mult = 4
sync-webrsync-verify-signature = yes
sync-git-verify-commit-signature = yes
上に記載されているデフォルトの sync-uri 変数は、ローテーション可能なミラーの場所を決めています。これは Gentoo インフラストラクチャーの帯域にかかるストレスを軽減することに役立ち、また特定のミラーがオフラインになっている場合のバックアップとなります。よって、デフォルトのURIは、ローカルまたはプライベートの Portage ミラーを代わりに使うのでない限り、そのままにしておくことが推奨されます。
Portage の plug-in sync API の仕様は Portage Sync の記事にあります。
DNS 情報をコピーする
新しい環境に入る前に一つだけやるべきことが残っています。それは/etc/resolv.confに記載されているDNS情報をコピーすることです。これは新しい環境に入った後でネットワークを使うために必要です。/etc/resolv.confは、そのネットワークのネームサーバーの情報を含んでいます。
この情報をコピーするときは、cpコマンドに--dereference
オプションを付与することを推奨します。これは/etc/resolv.confがシンボリックリンクのときに、シンボリックリンクをコピーするのではなく、シンボリックリンクのリンク先の実ファイルをコピーします。そうしないと新しい環境でシンボリックリンクが存在しないファイルを指し示すでしょう(新しい環境では、元の環境でリンク先に指定していたファイルはほぼ利用できません)。
root #
cp --dereference /etc/resolv.conf /mnt/gentoo/etc/
必要なファイルシステムをマウントする
もう少しで、Linux ルートは新しい場所に変わります。
使えるようにしなければならないファイルシステムは以下の通りです。
- /proc/ は Linux カーネルから情報を引き出すための擬似ファイルシステムです。一見通常ファイルに見えますが、ファイルとしての実体はありません。
- /sys/ は /proc/ 同様、擬似ファイルシステムです。{{Path|/proc/} }より構造化されており、一度は /proc/ を置き換えることを目的としていました。
- /dev/ は、すべてのデバイスファイルを含む通常のファイルシステムです。一部は Linux のデバイス管理機構 (通常は udev) により管理されています。
- /run/ は一時ファイルシステムです。PID ファイルやロックなど、実行時に生成されるファイルのために使用されます。
/proc/は、/mnt/gentoo/proc/にマウントされるでしょう。他はbindマウントされます。後者は、例えば/mnt/gentoo/sys/は事実/sys/となります(同じファイルシステムへの2番目のエントリです)。ここで/mnt/gentoo/proc/はファイルシステムの新しいエントリ(インスタンスとも言えるでしょう)となります。
Gentoo のインストールメディアを使用している場合は、このステップは単に arch-chroot /mnt/gentoo として置き換えることができます。
root #
mount --types proc /proc /mnt/gentoo/proc
root #
mount --rbind /sys /mnt/gentoo/sys
root #
mount --make-rslave /mnt/gentoo/sys
root #
mount --rbind /dev /mnt/gentoo/dev
root #
mount --make-rslave /mnt/gentoo/dev
root #
mount --bind /run /mnt/gentoo/run
root #
mount --make-slave /mnt/gentoo/run
インストールの後半で出てくるsystemdを使う場合、
--make-rslave
が必要です。Gentoo以外のインストールメディアを使う場合、これだけでは十分ではない場合があります。いくつかのディストリビューションは/run/shm/へのシンボリックリンクとして/dev/shmを作りますが、これはchroot後に無効になってしまいます。これに対応するためには、/dev/shm/をtmpfsとして適切にマウントしておくことが必要です:
root #
test -L /dev/shm && rm /dev/shm && mkdir /dev/shm
root #
mount --types tmpfs --options nosuid,nodev,noexec shm /dev/shm
そして確実にモード1777に設定してください:
root #
chmod 1777 /dev/shm /run/shm
新しい環境に入る
ようやく、すべてのパーティションが初期化され、ベース環境がインストールされました。chroot を実行して新しいインストール環境に入りましょう。これは、セッションの root (アクセスできる最も上位レベルの場所) を、現状のインストール環境 (インストール CD もしくは他のインストールメディア) から、インストール対象システム (つまり初期化されたパーティション) に変更することを意味しています。これが change root もしくは chroot の意味です。
chrootは次の3ステップで実行されます。
- chrootコマンドによって、最上位ディレクトリを(インストールメディアの)/から(パーティションをマウントしている)/mnt/gentoo/に変更する。
- /etc/profileのいくつかの設定をsourceコマンドでリロードする。
- chroot環境であることを忘れないようするために、シェルのプロンプトを変更する。
root #
chroot /mnt/gentoo /bin/bash
root #
source /etc/profile
root #
export PS1="(chroot) ${PS1}"
この時から、すべての操作は新しい Gentoo Linux 環境で実行されます。
これ以降の時点で Gentoo インストールを中断しても、インストール作業をこのステップから「再開」することができるようになっているはずです。ディスクをまたパーティショニングする必要はありません!ただ単にルートパーティションをマウントして、上のステップを DNS 情報をコピーするところから実行すれば、作業中の環境に再び入ります。ブートローダの問題を解決するのにもこれが役に立ちます。さらなる情報は chroot の記事にあります。
Portage を設定する
Web から Gentoo ebuild リポジトリのスナップショットをインストールする
次にGentoo ebuildリポジトリのスナップショットをインストールします。このスナップショットには、インストール可能なパッケージの情報、システム管理者が選択するプロファイルの一覧、パッケージやプロファイルごとのお知らせなどをPortageに伝えるファイルが含まれます。
ここで紹介するemerge-webrsyncは、HTTP/FTPプロトコル以外でのダウンロードがファイアウォールで制限されるような環境や、ネットワーク帯域を節約したい場合にお薦めです。これらの制約がなければ、この手順は省いて次のセクションに進んでも構いません。
次のコマンドで、毎日更新される最新のスナップショットをGentooのミラーサイトから取得し、インストールします:
root #
emerge-webrsync
この作業中、emerge-webrsync は /var/db/repos/gentoo/ がない旨のメッセージを出すかもしれません。これは想定内で、心配することはありません。このディレクトリは自動的に作成されます。
この時点で、Portageはいくつかのアップデートが推奨されていることを通知するかもしれません。これは、stageファイルでインストールされたシステム関連のパッケージについて、より新しいバージョンが利用可能であることを示しています。今回新しいリポジトリスナップショットがインストールされたことで、Portageがそれを認識したのです。このメッセージは今のところは無視して、Gentooのインストールが完了してから対応しても問題ありません。
任意自由選択: Gentoo ebuild リポジトリを更新する
Gentoo ebuildリポジトリを最新版にアップデートできます。先のemerge-webrsyncコマンドはほぼ最新の(通常は24時間以内に作成される)スナップショットをインストールするため、このステップは本当に任意です。
最新(一時間以内)のパッケージ更新があるかもしれません。その更新を取り込むためにemerge --syncを実行しましょう。このコマンドはGentoo ebuildリポジトリ(先程emerge-webrsyncコマンドで取得したもの)をアップデートするためにrsyncプロトコルを使用します。
root #
emerge --sync
アップデートの時間を短縮するために、特定のフレームバッファもしくはシリアルコンソール等の遅いターミナルでは、--quiet
オプションを使うことをお薦めします。
root #
emerge --sync --quiet
ニュースを読む
Gentoo ebuildリポジトリの更新時、Portage が次のような情報メッセージを出すことがあります。
* IMPORTANT: 2 news items need reading for repository 'gentoo'.
* Use eselect news to read news items.
ニュース項目は、Gentoo ebuild リポジトリを通じて、ユーザーに重要なメッセージを通知するためのコミュニケーション手段です。これらニュース項目を管理するためにeselect newsを使用します。eselectはGentooに固有のユーティリティで、システム管理のための共通の管理インターフェースを提供します。この場合、eselectはnews
モジュールを使うことを指示されます。
news
モジュールに対しては、主に3つの操作が使用されます。
list
を指定すると、現在有効なニュースアイテムの概要が表示されます。read
を指定すると、そのニュースアイテムを読むことができます。purge
を指定すると、一度購読したニュースを削除することができます。これにより、それらのニュースを二度と目にすることはないでしょう。
root #
eselect news list
root #
eselect news read
ニュースリーダーに関するほとんどの情報はマニュアルページを通じて得ることができます。
root #
man news.eselect
適切なプロファイルを選ぶ
デスクトッププロファイルはデスクトップ環境のためだけのものではありません。i3 や sway のようなミニマルなウィンドウマネージャにも適しています。
プロファイルはあらゆるGentooシステムの基礎を構成します。プロファイルはUSE、CFLAGS等の重要な変数の初期値を決めるだけではありません。プロファイルは、パッケージのバージョンを決まった範囲に固定する役目を持っています。プロファイルはGentooのPortage開発者によって完全にメンテナンスされています。
現在使用中のプロファイルを確認するには、eselect を profile
モジュールを指定して実行してください:
root #
eselect profile list
Available profile symlink targets: [1] default/linux/ia64/ * [2] default/linux/ia64//desktop [3] default/linux/ia64//desktop/gnome [4] default/linux/ia64//desktop/kde
コマンドの出力は一例で、常に更新されています。
systemd を使用するには、名前に "systemd" を含んだプロファイルを選択してください。逆もまた然りです。
いくつかのアーキテクチャではデスクトップ向けのサブプロファイルが見られるでしょう。
プロファイルのアップグレードは軽々と行われるものではありません。初期プロファイルを選択する時、確実に stage3 がはじめに使用していたものと同じバージョン(例えば )を使用してください。新しいプロファイルのバージョンは、移行方法を含むニュース項目を通して発表されます。新しいプロファイルに移行する前にはその説明に従ってください。
ia64アーキテクチャで利用可能なプロファイルを確認後、別のプロファイルを選択できます。
root #
eselect profile set 2
developer
サブプロファイルはGentoo Linux開発向けの固有のプロファイルであり、通常のユーザーが使用するものではありません。@worldの更新
この時点で、@world 集合をアップデートするとよいでしょう。それによりベースシステムが構築されます。
このステップは必須で、これによってシステムはアップデートや、stage3が構築された時やプロファイルの選択以降のUSEフラグの変更を適用できます。
root #
emerge --ask --verbose --update --deep --newuse @world
フルスケールのデスクトップ環境を選択した場合、このプロセスはインストール時間を格段に長くしてしまうかもしれません。時間に追われている人は次の経験則が成り立つでしょう。「名前が短く、特定のシステムを示さないプロファイルの @world 集合を選択する」、「もっとも一般的な @world 集合は、より少ないパッケージのアップデートですむ」。別の言い方をすると、
default/linux/amd64/
を選択すると、パッケージのアップデートは少なくてすみます。default/linux/amd64//desktop/gnome/systemd
を選択すると多くのパッケージがインストールされます。なぜなら、initシステムがOpenRCからsystemdに変更され、GNOMEのデスクトップ環境がインストールされるためです。
USE 変数を設定する
USEは、Gentooがユーザに提供する最もパワフルな変数の一つです。多くのプログラムに対して、決められた追加機能を含めたり、もしくは含めずにコンパイルすることが可能です。例えば、いくつかのプログラムはGTK+サポートもしくはQtサポートを有効にしてコンパイルできます。別のプログラムにはSSLサポートを含めたり、もしくは含めずにコンパイルすることが可能です。いくつかのプログラムはX11サポート(Xサーバー)の代わりに、フレームバッファサポート(svgalib)と共にコンパイルできます。
多くのディストリビューションでは、各種のサポートを最大限含むようにコンパイルします。これはプログラムサイズと起動時間を増大させます。多くの依存関係を発生させることは言うまでもありません。Gentooでは、ユーザーはパッケージをコンパイルする時のオプションを定義できます。ここでUSEが登場します。
USE変数を使って、ユーザーはコンパイルオプションにマップされるキーワードを指定します。例えば、ssl
キーワードはSSLをサポート可能なプログラムでSSLを有効にしてコンパイルします。-X
キーワードはXサーバーのサポートを含まない(最初のマイナス記号で指定)ようにコンパイルします。gnome gtk -kde -qt5
は、GNOME(とGTK+)サポートを有効にして、KDE(とQt)サポートを無効にします。これにより、(もし、アーキテクチャがGNOMEをサポートしていれば)システムはGNOME向けに最大限調整されます。
デフォルトの USE の設定は、システムによって使用される Gentoo プロファイルの make.defaults ファイルに記述されています。Gentoo はシステムプロファイルをサポートするために、複雑な継承システムを使用していますが、インストール作業中はこれについて深くは触れないことにします。現在有効な USE 設定を知るためのもっとも簡単な方法は、emerge --info を実行して USE で始まる行を抜き出すことです:
root #
emerge --info | grep ^USE
USE="X acl alsa amd64 berkdb bindist bzip2 cli cracklib crypt cxx dri ..."
上記の例は出力のほとんどを省略しています。実際には、USE 変数のリストはずっとずっと長いものです。
使用可能なUSEフラグの完全な記述は、/var/db/repos/gentoo/profiles/use.descにあります。
root #
less /var/db/repos/gentoo/profiles/use.desc
lessコマンドでは、↑キーと↓キーを使ってスクロールすることができます。qを押すと終了します。
例として、DVD、ALSA、CD書き込みをサポートしたKDEベースのUSE設定を示します。
root #
nano /etc/portage/make.conf
/etc/portage/make.conf
DVD、ALSA、CD書き込みをサポートしたKDE/Plasmaベースのフラグ設定USE="-gtk -gnome qt5 kde dvd alsa cdr"
/etc/portage/make.conf で USE の値を定義すると、その値はシステムの USE フラグリストに追加されます。USE フラグは、リスト中の値の前に - マイナス記号を追加することで、グローバルに削除することができます。例えば、X グラフィカル環境のサポートを無効化するには、-X
を設定することでこれを行えます:
/etc/portage/make.conf
デフォルトのUSEフラグを無視するUSE="-X acl alsa"
-*
を指定することで、make.conf 内で指定したもの以外のすべての USE 値を無効化することができますが、これはまったくおすすめできない、賢明でないことです。Ebuild の開発者たちは、競合を防止するため、セキュリティを向上させるため、エラーを回避するため等の理由によって、デフォルトの USE フラグを選択して ebuild で指定しています。すべての USE フラグを無効化することはデフォルトの振る舞いを否定し、重大な問題を引き起こすことがあります。CPU_FLAGS_*
一部のアーキテクチャ (AMD64/X86、ARM、PPC を含みます) には、CPU_FLAGS_<ARCH> (<ARCH> は関連するシステムアーキテクチャ名に置き換えてください) と呼ばれる USE_EXPAND 変数があります。
混乱しないで! AMD64 と X86 のシステムは共通のアーキテクチャを一部共有しているので、AMD64 システムのための正しい変数名は CPU_FLAGS_X86 です。
これは、通常手書きなどで書かれた特定のアセンブリコードや intrinsics 等を含めるようにビルドを構成するために使用されるもので、特定の CPU 機能のために最適化されたコードを出力するようにコンパイラに指示する (-march=
等) のとは異なります。
COMMON_FLAGS を希望に応じて設定するのに加えて、この変数も設定すべきでしょう。
これをセットアップするにはいくつかのステップが必要です:
root #
emerge --ask app-portage/cpuid2cpuflags
興味があるなら、出力を自分で確認してみてください:
root #
cpuid2cpuflags
そして、出力を package.use にコピーしてください:
root #
echo "*/* $(cpuid2cpuflags)" > /etc/portage/package.use/00cpu-flags
VIDEO_CARDS
利用できる GPU に応じて、VIDEO_CARDS USE_EXPAND 変数を適切に構成するとよいでしょう。これを行う方法は Xorg ガイドでカバーされています。コンソールのみのシステムの場合は、VIDEO_CARDS を設定する必要はありません。
追加可能: ACCEPT_LICENSE 変数を設定する
ある Gentoo パッケージのライセンスは、その ebuild 内の LICENSE 変数に保持されています。 システムが受諾する特定のライセンスやライセンスのグループは、次のファイル内で定義されます:
- 選択されたプロファイルによって、システム全体で。
- /etc/portage/make.conf ファイルによって、システム全体で
- /etc/portage/package.license ファイルによって、パッケージ単位で。
- /etc/portage/package.license/ ディレクトリのファイルによって、パッケージ単位で。
Portage は、どのパッケージのインストールを許可するか判断するために、ACCEPT_LICENSE を検索します。 システム全体での現在の設定値を表示するには、以下を実行してください:
user $
portageq envvar ACCEPT_LICENSE
@FREE
必要であれば、/etc/portage/make.conf を変更することで、プロファイル内でシステム全体として受諾されているデフォルトを上書きしてください。
/etc/portage/make.conf
システム全体で ACCEPT_LICENSE でライセンスを受諾する方法の例ACCEPT_LICENSE="-* @FREE @BINARY-REDISTRIBUTABLE"
必要であれば、次のファイル例を含むディレクトリで示すように、パッケージごとに受諾するライセンスを定義することもできます。package.license ディレクトリが存在しない場合は作成しておく必要があります:
root #
mkdir /etc/portage/package.license
/etc/portage/package.license/kernel
ライセンス承諾の例app-arch/unrar unRAR
sys-kernel/linux-firmware @BINARY-REDISTRIBUTABLE
sys-firmware/intel-microcode intel-ucode
ebuildのLICENSE変数はGentooの開発者やユーザにとってのガイドラインでしかありません。これは法的声明ではなく、これが現実を反映する保証はありません。したがってLICENSE変数を信用するのではなく、パッケージそのものを、システムにインストールされるすべてのファイルを含めて徹底的にチェックしてください。
Gentoo リポジトリによって定義され、Gentoo ライセンスプロジェクトによって管理されているライセンスグループは以下の通りです:
グループ名 | 説明 |
---|---|
@GPL-COMPATIBLE | フリーソフトウェア財団[a_license 1]によって承認されたGPL compatible license群 |
@FSF-APPROVED | FSF(訳注:フリーソフトウェア財団)によって承認されたフリーソフトウェアライセンス群(@GPL-COMPATIBLEを含みます) |
@OSI-APPROVED | Open Source Initiative [a_license 2]によって承認されたライセンス群 |
@MISC-FREE | おそらくフリーソフトウェアであるその他のライセンス群。言い換えると、フリーソフトウェアの定義[a_license 3]に従っているものの、FSFやOSIによって承認されていないライセンス |
@FREE-SOFTWARE | 自由に利用、共有、変更、および変更の共有ができるすべてのライセンスのメタセット。@FSF-APPROVED、@OSI-APPROVEDそして@MISC-FREEを組み合わせたもの |
@FSF-APPROVED-OTHER | FSFが承認した「無料のドキュメント」および「ソフトウェアとドキュメント以外の実用的な作品」(フォントを含む) |
@MISC-FREE-DOCS | free definition[a_license 4] に従っているが、@FSF-APPROVED-OTHERの一覧には載っていない無料のドキュメントおよび他の作品 |
@FREE-DOCUMENTS | @FSF-APPROVED-OTHERと@MISC-FREE-DOCSを組み合わせたもの |
@FREE | @FREE-SOFTWAREと@FREE-DOCUMENTSを組み合わせたもの |
@BINARY-REDISTRIBUTABLE | 少なくともソフトウェアのバイナリ形式での自由な再配布を認めているライセンス群。@FREEを含みます |
@EULA | あなたの権利を取り去ろうとするライセンス契約。これらは"all-rights-reserved"や明示的な承諾を必要とするものよりも拘束的です. |
タイムゾーン
このステップは musl libc を使う場合は適用されません。それがどういう意味か分からない場合は、このステップを実行すべきです。
タイムゾーンを選択します。/usr/share/zoneinfo/から利用可能なタイムゾーンを探してください:
root #
ls /usr/share/zoneinfo
選択したタイムゾーンがEurope/Brusselsの場合は以下となります。
OpenRC
/etc/timezone ファイルにタイムゾーン名を記述します。
root #
echo "Europe/Brussels" > /etc/timezone
/usr/share/zoneinfo/Etc/GMT*のタイムゾーンは、その名前が期待されるゾーンを示していないため、避けましょう。たとえば、GMT-8は実際にはGMT+8となります。
次に、sys-libs/timezone-dataパッケージを再設定しましょう。これは/etc/timezoneを元に、/etc/localtimeをアップデートします。/etc/localtimeは、システムのCライブラリが、自身が属するタイムゾーンを知るために使われます。
root #
emerge --config sys-libs/timezone-data
systemd
systemd を使用している場合は、多少異なるアプローチをとります。シンボリックリンクを生成します:
root #
ln -sf ../usr/share/zoneinfo/Europe/Brussels /etc/localtime
その後 systemd が起動してから、タイムゾーンとそれに関連する設定を timedatectl コマンドで設定することができます。
ロケールの設定
このステップは musl libc を使う場合は適用されません。それがどういう意味か分からない場合は、このステップを実行すべきです。
ロケールの生成
ほとんどのユーザは、一つもしくは二つのロケールを必要とします。
ロケールはシステムで使用する言語を指定するだけではなく、単語のソート順や日付、時間等のルールにも使用されます。ロケールは大文字小文字を区別するので、記載とまったく同じように表現する必要があります。利用可能なロケールの一覧は /usr/share/i18n/SUPPORTED ファイルで確認できます。
サポートされるシステムロケールは、/etc/locale.gen ファイルに定義する必要があります。
root #
nano /etc/locale.gen
次のロケールの例では、英語(米国)とドイツ語(ドイツ)を(UTF-8のような)文字コードと共に指定しています。
/etc/locale.gen
USとDEロケールを適切な文字コードと共に有効にするen_US ISO-8859-1
en_US.UTF-8 UTF-8
de_DE ISO-8859-1
de_DE.UTF-8 UTF-8
多くのアプリケーションは適切にビルドするのに少なくとも UTF-8 を必要とします。
次に locale-gen コマンドを実行します。このコマンドは /etc/locale.gen ファイルに記載されているすべてのロケールを生成します。
root #
locale-gen
現在使用可能なすべてのロケールを確認するためには、locale -aを実行してください。
systemd を使用しているシステムでは、localectl を使用できます。localectl set-locale ... または localectl list-locales のように。
ロケールの選択
この時点で、システム全体で有効になるロケールを設定できます。eselect を locale
モジュールと共に使いましょう。
eselect locale listを実行すると、利用可能なターゲットが表示されます。
root #
eselect locale list
Available targets for the LANG variable: [1] C [2] C.utf8 [3] en_US [4] en_US.iso88591 [5] en_US.utf8 [6] de_DE [7] de_DE.iso88591 [8] de_DE.utf8 [9] POSIX [ ] (free form)
eselect locale set <番号> を実行することで、適切なロケールを選択することができます:
root #
eselect locale set 9
手動で設定する場合は、/etc/env.d/02locale ファイルと、systemd の場合は /etc/locale.conf ファイルも編集してください。
/etc/env.d/02locale
システムのロケールをマニュアル設定するLANG="de_DE.UTF-8"
LC_COLLATE="C.UTF-8"
ロケールを設定すると、後でカーネルをビルドしたり、他のソフトをコンパイルしたりするときに警告やエラーを回避できるでしょう。
ここで、環境をリロードします。
root #
env-update && source /etc/profile && export PS1="(chroot) ${PS1}"
ロケール選択プロセス全体にわたる、さらなるガイドについては、ローカライゼーションガイドと UTF-8 ガイドもお読みください。