何がGentoo Linuxで、どのようにインストールするか

テーブルの上にあるラップトップの写真。

Gentoo Linuxは、元のソースベースのパッケージ管理にこだわった強力で拡張性のあるディストリビューションです。さらに、そのパッケージマネージャーであるPortageは、ディストリビューションの各側面を細かく調整および変更することを可能にする強力なユーティリティです。しかし、インストールや使用が簡単なディストリビューションではありません。ここでは、Gentoo Linuxをインストールしてその数々の利点を楽しむ方法を示します。

目次

  • Gentoo Linuxとは?
  • Gentooの入手
  • Gentoo Linuxのインストール

Gentoo Linuxとは?

Gentoo Linuxは、そのコアにおいて、あらゆる目的のためにカスタムLinuxマシンを作成する力を与える非常にモジュール化されたLinuxディストリビューションです。他のディストリビューションとは異なり、インストール可能なパッケージをシステム内でコンパイルし、変更するためのツールを提供することで実現しています。

このアプローチの最大の利点の一つは、ユーザーとシステムパッケージの間に中間者が存在しないことです。特定のパッケージマネージャーやアプリ形式に縛られることはありません。ソースコードを使って自分自身のパッケージをコンパイルし、自分のニーズに合わせてカスタマイズできます。

Gentooの入手

Gentooのコピーは、公式ウェブサイトから入手できます。異なるプラットフォーム用のインストーラーを選択できます。Gentooは、amd64やarm64など、その他のレガシーアーキテクチャもサポートしています。

ダウンロードしたISOファイルを使って、balenaEtcherやddなどのUSBライティングプログラムを使用して、ブート可能なフラッシュドライブを作成します。

Gentoo Linuxのインストール

Gentooのインストールを続ける前に、このプロセスが完全に手動であることに注意することが重要です。つまり、多くのコマンドが実行されることになります。したがって、このガイドを参照するだけでなく、インストール中にGentooの公式ハンドブックを確認することをお勧めします。

amd64用のGentoo Linuxハンドブックのウェブページのスクリーンショット。

フラッシュドライブをコンピューターに挿入し、起動します。これでGentooインストーラー画面が立ち上がります。

知っておくと良いこと: ブラウザ内からLinuxディストリビューションをテストドライブする方法を学びましょう。

ステップ1:ネットワーク接続の設定

Gentooをインストールするには、インターネットに接続している必要があります。インストーラーは、有線接続の場合、自動的に接続します。以下のコマンドを実行して、現在オンラインかどうかを確認します:

ping -c 5 maketecheasier.com

MakeTechEasier.comのpingコマンドを示すターミナル。

ワイヤレスネットワークに接続する必要がある場合、wpa_supplicantを設定する必要があります。これにより、ワイヤレスアクセスポイントに接続できます。

wpa_passphrase 'Your_SSID_Here' 'Your_Password_Here' >> /etc/wpa_supplicant/wpa_supplicant.conf

無線ネットワーク接続を開始するために、dhcpcdデーモンを再ロードします:

rc-service dhcpcd restart

ステップ2:EFIディスクパーティションの作成

Gentooをインストールするディスクをフォーマットします。コンピューターのディスクのデバイスファイルの後にfdiskコマンドを使用して行います:

fdisk /your/disklabel

/dev/vdaデバイスのfdiskコマンドを示すターミナル。

既存のディスクパーティション構造が不明な場合は、-lフラグを使用して確認します:

fdisk -l

fdisk内に入ったら、Gを押してディスクに存在するパーティションをすべて消去します。

ディスクパーティションテーブルを消去する過程を示すターミナル。

Nを押して、新しいパーティションを作成することをfdiskに通知します。fdiskは使用するパーティション番号を尋ねます。デフォルトを使用するにはEnterを押します。

「最終セクター」プロンプトに「+100M」と入力し、次にEnterを押します。

最初のパーティションの型を変更するには、Tを押します。これにより、fdiskは作成したパーティションの型を変更することを示します。そこから、このパーティションを「EFIシステム」に設定するには1と入力し、Enterを押します。

ステップ3:ディスクの残りのパーティショニング

次に作成するパーティションは、「/boot」パーティションで、Linuxカーネルやブートローダーが保存されます。Nを押し、Enterを押して、システムの2番目のパーティションを作成します。

「2」と入力して、Fdiskに現在のディスクの2番目のパーティションを編集していることを伝えます。

パーティションのデフォルトの最初のセクター値を受け入れるにはEnterを押し、「+1G」と入力して、パーティションサイズを1GBに設定します。

再度Nを押し、「3」を入力してハードディスクの3番目のパーティションを作成します。これは、マシンのスワップパーティションとして機能し、スペースが不足し始めるとメモリを動的にスワップできます。

デフォルトの最初のセクタ値を設定するにはEnterを押し、「+4G」と入力してスワップパーティションのサイズを4GBに設定します。

注意: スワップサイズの一般的なルールは、物理メモリの量の1/2から2倍の範囲です。つまり、16GBのシステムがある場合、スワップを8GBから32GBの間に設定できます。

Tを押して、3番目のパーティションのタイプを変更します。

「19」と入力して、このパーティションをスワップとして正しく設定し、Enterを押します。

システムの残りをインストールするルートパーティションを作成します。再度Nを押し、「4」と入力してディスクの4番目のパーティションを設定します。

ルートパーティションのためにディスクの残りの部分を割り当てるには、最初と最終のセクタプロンプトの両方でEnterを押します。

Pを押して、作成したパーティションテーブルのレイアウトが正しいかどうかを確認します。

Gentoo Linuxの新しいパーティションテーブルレイアウトを示すターミナル。

Wを押して、新しいパーティションテーブルをディスクに確認して書き込みます。

ステップ4:Gentooのディスクをフォーマットする

EFIシステムパーティションをFATとしてフォーマットするために、以下のコマンドを使用します:

mkfs.vfat /dev/sda1

「/boot」パーティションのファイルシステムを、簡単なext2ファイルシステムを使って作成します。

mkfs.ext2 /dev/sda2

スワップ用のパーティションを作成して、Gentooにこのパーティションがライブメモリとスワッピングに使用できることを通知します。これを行うには、次のコマンドを実行します:

mkswap /dev/sda3  
swapon /dev/sda3

ルートパーティション用のext4ファイルシステムを作成するには、次のコマンドを実行します:

mkfs.ext4 /dev/sda4

ステップ5:Gentoo Stage 3ターボールのダウンロード

作成したルートパーティションを「/mnt/gentoo」ディレクトリにマウントします。これは、インストールがシステムのハードディスクで行われるためです。

mount /dev/sda4 /mnt/gentoo && cd /mnt/gentoo

gentoo.orgウェブサイトからStage 3ターボールをwgetを使用してダウンロードします:

wget https://distfiles.gentoo.org/releases/amd64/autobuilds/20231112T170154Z/stage3-amd64-desktop-openrc-20231112T170154Z.tar.xz

Gentoo Linux Stage 3ターボールのダウンロードプロセスを示すターミナル。

ダウンロードが完了したら、tarコマンドを使用して「/mnt/gentoo」に展開します:

tar xpvf ./stage3-amd64-desktop-openrc-20231112T170154Z.tar.xz --xattrs-include='*.*' --numeric-owner

ステップ6:ダウンロードミラーを選択し、DNS情報をコピーする

このシステム用のパッケージをダウンロードする場所を指定するには、mirrorselectコマンドを実行します:

mirrorselect -i -o >> /mnt/gentoo/etc/portage/make.conf

これにより、最も近いサーバーの場所を選択できるTUIプログラムが開きます。

Gentoo Linux用の利用可能なダウンロードミラーを示すターミナル。

Gentooのデフォルトリポジトリファイルを「/etc/portage」フォルダにコピーします。これは、Portageにパッケージをダウンロードする方法を伝える設定ファイルです:

mkdir -p /mnt/gentoo/etc/portage/repos.conf &&  
cp /mnt/gentoo/usr/share/portage/config/repos.conf /mnt/gentoo/etc/portage/repos.conf/gentoo.conf

USBインストーラーから解決情報を「/mnt/gentoo」ディレクトリにコピーします:

cp --dereference /etc/resolv.conf /mnt/gentoo/etc/

ステップ7:デバイスファイルをマウントし、chrootする

USBインストーラーから特別なディレクトリをハードディスクにマウントします:

mount --types proc /proc /mnt/gentoo/proc  
mount --rbind /sys /mnt/gentoo/sys  
mount --make-rslave /mnt/gentoo/sys  
mount --rbind /dev /mnt/gentoo/dev  
mount --make-rslave /mnt/gentoo/dev  
mount --bind /run /mnt/gentoo/run  
mount --make-slave /mnt/gentoo/run

Live ISOから「/mnt/gentoo」ディレクトリに現在のシェルセッションのルートを変更します:

chroot /mnt/gentoo /bin/bash  
source /etc/profile  
export PS1="[chroot] ${PS1}"

ステップ8:/bootパーティションをマウントし、Gentooを更新する

「/boot」パーティションをGentooマシンにマウントして、後でカーネルをインストールする際に、正しい場所に保存されるようにします:

mount /dev/sda2 /boot  
mkdir /boot/efi  
mount /dev/sda1 /boot/efi

最初のシステム更新時に最新のパッケージを取得できるよう、Gentooリポジトリを更新します:

emerge --webrsync

次のemergeコマンドを実行して、システムのすべての基本EBUILDSを更新およびインストールします:

emerge --ask --verbose --update --deep --newuse @world

ステップ9:タイムゾーンとロケール

これが完了したら、タイムゾーンとシステムロケールを含む、システムの地域固有の情報を設定します。タイムゾーンを自分の地域に設定するには、「/usr/share/zoneinfo」フォルダにリストされている最も近い場所を見つけます。

ls /usr/share/zoneinfo

フォルダとゾーンファイルへのパスを書き、「/etc/timezone」ファイルに記入します。例えば、私の最も近い場所は「Asia/Manila」です:

echo "Asia/Manila" > /etc/timezone  
emerge --config sys-libs/timezone-data

システムタイムゾーンを設定するプロセスを示すターミナル。

お気に入りのテキストエディタで「locale.gen」ファイルを開きます:

nano -w /etc/locale.gen

locale.genファイルの最初の二行の前にあるシャープ(#)を削除します。

システムロケールを設定するプロセスを示すターミナル。

注意: 利用可能なロケールの完全なリストを表示するには、次のコマンドを実行します:cat /usr/share/i18n/SUPPORTED

新しいロケール設定を適用するには、locale-genプログラムを実行します。

ステップ10:Linuxカーネルのインストールとfstabの設定

GentooでLinuxカーネルをインストールする方法は複数あります。すべての機能を手動で設定するか、Gentoo開発者からのプリビルド版を使用します。今回の目的のために、後者を選択します。

まず、installkernelパッケージとカーネル自体をインストールします:

emerge --ask sys-kernel/installkernel-gentoo sys-kernel/gentoo-kernel-bin

知っておくと良いこと: UbuntuでLinuxカーネルをダウングレードする方法を学びましょう。

カーネルのインストールが完了したら、好きなテキストエディタでfstabファイルを開きます:

nano -w /etc/fstab

fdiskで作成したすべてのパーティションを示します。例えば、UEFIシステムでは、fstabファイルは次のようになります:

[...]  
  
/dev/sda1    /boot/efi    vfat    defaults    0 2  
/dev/sda2    /boot    ext2    defaults,noatime    0 2  
/dev/sda3    none    swap    sw    0 0  
/dev/sda4    /    ext4    noatime    0 1

シンプルなfstabパーティションレイアウトを示すターミナル。

ステップ11:ルートパスワードの設定と追加ツールのインストール

システムのためのルートパスワードを作成します。これにより、インストールプロセス後にシステムにアクセスできるようになります:

passwd

新しいルートパスワードを設定するプロセスを示すターミナル。

Gentooシステム用の追加のネットワークサポートツールをインストールします。例えば、Ethernetとワイヤレスの両方の接続性が必要な場合、次のようにインストールします:

emerge --ask net-misc/dhcpcd net-wireless/iw net-wireless/wpa_supplicant  
rc-update add dhcpcd default

完了したら、システムの動作を監視したい場合は、システムロガーもインストールします:

emerge --ask app-admin/sysklogd  
rc-update add sysklogd default

最後に、最も一般的に対話するファイルシステムユーティリティをインストールします:

emerge --ask sys-fs/dosfstools sys-fs/ntfs3g

ステップ12:ブートローダーのインストール

Gentooをインストールする際の最後のステップはブートローダーです。これは、マシンのBIOSの直後にすぐにロードされ、OSのカーネルをロードする準備をする小さなプログラムです。

GRUBブートローダーをインストールするには、次のコマンドを実行します:

emerge --ask sys-boot/grub

Grubブートローダーを取得するプロセスを示すターミナル。

インストールが完了したら、GRUBを適切に初期化して設定するために次のコマンドを実行します:

grub-install --target=x86_64-efi --efi-directory=/boot/efi  
grub-mkconfig -o /boot/grub/grub.cfg

USBインストーラーのマウントを解除し、次のコマンドを実行してシステムを再起動します:

exit  
cd  
umount -l /mnt/gentoo/dev{/shm,/pts}  
umount -R /mnt/gentoo  
reboot

Gentoo Linuxのインストールは、Linuxディストリビューションがどのように動作するかを理解するための第一歩です。Gentooでのコンパイル時間を短縮して、さらにシステムを最適化する方法を学びましょう。

ただし、まだどのデスクトップ環境をインストールするか決めかねている場合は、Linux上での最高のデスクトップ環境についての考えをチェックしてください。

画像クレジット: Dell via Unsplash(背景)とWikimedia Commons(ロゴ)。すべての変更とスクリーンショットはRamces Redによるものです。