CRUX 3.6.1をインストールする(UEFI編)

こんにちは。今回のテーマは「CRUX 3.6.1をインストールする(UEFI編)」です。UEFIシステムのマシンにCRUXをインストールしていきます。BIOSマシンへのインストールはCRUX 3.6.1をインストールする(BIOS編)のほうが役立つと思います。

尚、インストール手順に詰まったら公式ハンドブックを参考にしてください。


メディアの準備

インストールメディアはCRUXの公式サイトからisoファイルをダウンロードします。crux-3.6.1.isoファイルとcrux-3.6.1.md5ファイルを同一ディレクトリ上に配置し以下コマンドを実行してダウンロードしたファイルに誤りがないかチェックします。

md5sum -c crux-3.6.1.md5sum

DVDメディアを作成する場合

お手持ちのバーニングソフトでisoファイルをDVDに焼き込みます。

USBスティックを作成する場合

Linuxで作成する場合はddコマンドで作成します。

dd bs=4M if=[path/to/isofile] of=/dev/sdX status=progress && sync

インストールメディアの起動

用意したDVDもしくはUSBを入れて起動します。UEFI設定にて予め起動ディスクの優先順位をメディアが優先になるように設定しておいてください。起動すると以下のようなGRUB画面が出ます。

boot

“Install/Upgrade CRUX 3.6 (UEFI mode)”を選択してインストールメディアを起動します。起動すると自動でログインしてプロンプトが出ます。

boot

尚、Oracle VirtualBoxでCRUX3.6.1のインストールメディアを起動する場合はCRUX 3.6.1のインストールメディアをEFIモードのVirtualBoxで起動する方法を参考にしてください。

キーボードレイアウトの設定

起動初期はキーボードのレイアウトがUSですので、何かと不便です。以下コマンドで日本語キーボードレイアウトに設定します。

laodkeys jp106

キーボードレイアウトは/usr/share/kbd/keymaps/i386/qwerty/ディレクトリ内にあるファイル名で確認できます。

パーティショニング

まず、パーティショニングはCRUXのインストールメディアで行う必要はありません。他のディストリビューションのLIVEメディアのGParted等のパーティショニングツールで行うこともできます。

UEFIのシステムにインストールする場合はBIOSの場合とは少し異なります。一般的にBIOSの場合はMBRパーティションテーブルを用いることが多いですが、UEFIの場合はGPT(GUID Partition table)を用いるのが一般的です。UEFI + GPTの際のポイントはESP(EFI System Partition)を作成することです。容量は512MiB(537MB)が推奨されていますが(参考)それ以上であれば、他のサイズでも問題ありません。

既存のHDDドライブがどのパーティショニングテーブルかを調べるには以下のコマンドを使います。Disklabel typeがgptとなっていればGPTでパーティションテーブルが作成されています。 

fdisk -l /dev/sdX

CRUXのインストールメディアでGPTでパーティショニングできるツールはpartedとfdiskです。cfdiskというパーティショニングツールはパーティショニングテーブルを作成した後でなら使用できます。今回のパーティショニングについてまとめると表のようになります。

項目
起動システム UEFI
パーティションテーブル GPT
ESP /dev/sda1
ルート(/) /dev/sda2
ホーム(/home) /dev/sda3
swap /dev/sda4

fdiskで作成した場合、ESPのタイプはEFI systemにしてください。今回は以下のようなパーティショニングを行いました。

パーティショニング

パーティションのフォーマット

パーティションが作成出来たらフォーマットをしておきましょう。今回はルートとホームともにext4でフォーマットします。ESPはFAT32でフォーマットします。

項目 フォーマット
ESP(/dev/sda1) FAT-32
ルート(/dev/sda2) ext4
ホーム(/dev/sda3) ext4
swap(/dev/sda4) swap
mkfs.fat -F32 /dev/sda1
mkfs.ext4 /dev/sda2
mkfs.ext4 /dev/sda3
mkswap /dev/sda4

パーティションのマウント

ではパーティションをマウントしましょう。スワップの読み込みをここで行っても良いです。

mount /dev/sda2 /mnt
mkdir /mnt/home
mount /dev/sda3 /mnt/home
mkdir -p /mnt/boot/efi
mount /dev/sda1 /mnt/boot/efi
swapon /dev/sda4

以下にlsblkコマンドで出力した画像を添付します。以下のようになります。

マウント例

システムのインストール

準備が整いました。ではCRUXのシステムを/mntにインストールしていきます。setupコマンドでインストールスクリプトが起動します。

setup

基本的にはここからはインストーラに従って行っていけばOKです。手順を追って説明してきます。   setupコマンド実行すると以下のような画面が出ます。

setup_01

installを選択します。

setup_02

システムをインストールするパーティションのマウント箇所を指定します。今回はデフォルトは/mntです。

setup_03

インストールするパッケージを選択します。coreグループのパッケージは必須です。その他のグループは必要に応じてインストールしてください。今回は最小環境の構築を目指すためcoreのみを選択します。もし最初からGUI環境を構築したい場合はXorgグループの中から必要なものを選んで入れてください。

setup_04

次に個別にインストールするパッケージを選択する画面に移ります。ここでYesを選ぶとパッケージごとに選択する画面となります。UEFIにインストールする場合の注意点としてはoptリポジトリのefibootmgrにチェックを入れることです。これは後にGRUB2をインストールする際に必要になります。

setup_05

setup_05

次にブートローダを選択します。今回はGRUB2-efiを選択します。

setup_06

GRUB2-efiのインストールに必要なパッケージが表示されますのでOKを押して次に進みます。

setup_05

いよいよ選択したパッケージをコピーしていきます。ここではYesを押せばスタートします。

setup_08

しばらく待ちましょう。以下のような画面が出ればパッケージのコピー終了です。OKを押して終了させましょう。

setup_08

CRUXシステムに入る

お待たせしました。いよいよインストールしたシステム内に入っていきます。ここから先の作業はブートローダであるGRUB2のインストール以外はCRUX 3.6.1をインストールする(BIOS編)と同内容です。

setup-chroot

ルートパスワードの設定

システムに入ったらまずrootパスワードを設定しましょう。

passwd

新たなrootパスワードと確認用のパスワードを入力します。

各種システムの設定

ここではシステムの様々な設定を行っていきます。

fstabの編集

まず起動時にマウントするデバイスの設定をしましょう。設定ファイルは/etc/fstabにあります。エディタはvimが入っていますが、パッケージでnanoを選択していればnanoも使用可能です。

vim /etc/fstab

以下に簡単な設定例を示します。予め設定例が記してありますので、該当部分のコメントアウトを外して記載すれば良いと思います。

fstab設定例

...
# <file systems>  <dir>  <type>  <options>  <dump> <pass>
/dev/sda5         /      ext4    defaults   0      1
/dev/sda6         /home  ext4    defaults   0      0
/dev/sda7         swap   swap    defaults   0      0
...

rc.confの編集

次に/etc/rc.confを設定しいきましょう。このファイルはフォントやローカルタイム、自動起動するサービスなどのシステムの基本的な設定を記載する場所です。基本的には予め記載されている設定例を編集すればOKです。設定項目は以下です。

項目 説明
FONT コンソールのフォント
KEYMAP コンソール上のキーマップ
HOSTNAME 他のマシンから認識されるシステムの名前
SYSLOG 起動時に開始するシステムログサービス
SERVICE 自動起動するサービス

rc.confの設定例

FONT=Lat2-Terminus16
KEYMAP=jp106
TIMEZONE=Asia/Tokyo
HOSTNAME=crux
SYSLOG=sysklogd
SERVICE=(lo net crond)

ネットワークの設定

rc.confのSERVICEの項目でnetを追加すると、/etc/rc.d/netのスクリプトが実行されます。このファイルでネットの接続に関する設定を行っておきましょう。

vim /etc/rc.d/net

TYPEの値を“DHCP”か“static”から選んでください。多くの場合はDHCPを選択しておけば問題なくネットに接続できるとは思いますが、IPの固定化が必要な場合などはSTATICを設定し、IP, デフォルトゲートウェイ等の設定をしてください。尚、デバイスの情報はip linkコマンドで確認できます。

localeの作成

日本語環境を構築する際にja_JP.UTF-8をサポートするように設定していきます。

localedef -f UTF-8 -i ja_JP ja_JP.UTF-8

現時点でシステムがサポートしているlocaleは以下のコマンドで確認できます。

locale -a

Linuxカーネルのビルド・インストール

実はまだ終わらないんです。ここからカーネルのビルドとインストールが始まります。カーネルビルドは難しいイメージをお持ちの方も多いかも知れませんが、マシンの情報を正しく知り、行いたいことを把握すればそこまで難しくはありません。設定項目が多いので、最初から完璧を目指さず、少しずつ望む姿に近づけていく気持ちで取り組めば気も楽になるのではないでしょうか。

デバイスの情報などはlspciコマンドで見ることができます。

以下の手順でビルドします。

cd /usr/src/linux
make menuconfig
make all && make modules_install

無事にビルドが終わったらカーネルをインストールします。/boot/ディレクトリに配置するファイルの名前はgrub-mkconfigコマンドが認識できるように“vmlinuz-”で始始まる名前にしてください。

cp arch/x86/bzImage /boot/vmlinuz-5.x

ブートローダのインストール

UEFIの場合はUEFISTUBを使ってCRUXを起動することもできますが、今回はGRUB2で起動する想定ですので、GRUB2のインストールを進めていきます。

grub-install /boot/efi
grub-mkconfig -o /boot/grub/grub.cfg

余談ですが、GRUB2のインストールコマンドは以下でも上記と同じ結果を得ます。

grub-install target=x86_64-efi efi-directory=/boot/efi

再起動・ログイン

やっと終わりました。再起動してインストールしたシステムを起動しましょう。再起動時にインストールメディアを抜くことを忘れないで下さい。

exit
poweroff # or reboot

カーネルのビルドが成功していれば無事起動すると思います。もしカーネルパニック等で起動できない場合はもう一度インストールメディアでシステムにchrootしてカーネルのビルドに挑戦してください。起動画面は以下のようになります。

reboot

再起動したら、rootでログインします。パスワードはインストール時に決めたパスワードです。

ここまででひとまずインストール作業は終了です。お疲れ様でした。

最後に

UEFIシステムへのCRUXのインストール手順を紹介しました。ESPの作成部分とブートローダのインストール部分を覗いてはBIOSマシンへのインストールとほぼ同じ手順で行えます。本記事が何かのお役に立てば幸いです。

Sponsored Link


コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です