ArchLinuxインストールメモ(未完成)

2021年9月3日Linux,Tip’s

パーティション

# fdisk-l
 or 
# lsblk

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

パーティションを作成したら、適切なファイルシステムでフォーマットする必要があります。例えば、ext4 で /dev/sdX1 のルートパーティションをフォーマットするには、以下のコマンドを実行:

# mkfs.ext4 /dev/sdX1
スワップ用のパーティション作成した場合は、mkswap で初期化してください:
# mkswap /dev/sdX2
# swapon /dev/sdX2

ファイルシステムのマウント

ルートパーティションのファイルシステムを /mnt にマウントしてください。

例:
# mount /dev/sdX1 /mnt
# mount /dev/sdX3 /mnt/home
# mount /dev/dsX4 /mnt/boot

必須パッケージのインストール

pacstrap スクリプトを使用して base パッケージと Linux カーネル、一般的なハードウェアのためのファームウェアをインストールしてください:

1)通常
# pacstrap /mnt base linux linux-firmware
2)LTS版カーネルの場合
# pacstrap /mnt base linux-lts linux-firmware
3)ZEN版カーネルの場合
# pacstrap /mnt base linux-zen linux-firmware

エディタ等必要パッケージのインストール(pacstrap)
# pacstrap /mnt linux base base-devel cryptsetup device-mapper dhcpcd e2fsprogs inetutils linux-firmware logrotate man-db man-pages nano netctl perl s-nail sysfsutils texinfo usbutils vi xfsprogs

localeを設定する。

/etc/locale.genのなかの、en_US.UTF UTF-8とja_JP.UTF UTF-8のコメントアウトを解除する。

# vi /etc/locale.gen

...
#en_SG ISO-8859-1  
en_US.UTF-8 UTF-8  ←#を削除。
#en_US ISO-8859-1  
...
#ja_JP.EUC-JP EUC-JP  
ja_JP.UTF-8 UTF-8   ←#を削除。
#ka_GE.UTF-8 UTF-8 
...

locale-genでlocaleを生成する。

# locale-gen

locale.confを作成する。

ただし、システムのインストールが終わって、Xと日本語フォントをインストールしたら、ja_JP.UTF-8に変更する。

# echo LANG=en_US.UTF-8 > /etc/locale.conf

# export LANG=en_US.UTF-8

キーマップを変更。

# loadkeys jp106

また、/etc/vconsole.confにも、KEYMAP=jp106と記入しておく。

# vi /etc/vconsole.conf

KEYMAP=jp106

Initramfs

mkinitcpio コマンドを使用してinitramfs のイメージを作成します。
mkinitcpio コマンドの特殊なオプションについては/etc/mkinitcpio.conf 内に記載されています。

mkinitcpio

# mkinitcpio -P linux

Root パスワード

root パスワードを設定します:

# passwd

ブートローダーGRUB

Linux に対応しているブートローダーを選択してインストール。

GRUBの場合

# pacman -S grub efibootmgr

以下の手順では GRUB UEFI アプリケーションを $esp/EFI/grub にインストールして、モジュールを /boot/grub/x86_64-efi にインストールします。そして、grubx64.efi ブータブルスタブを $esp/EFI/grub に配置します。
ブートディレクトリとブートローダー ID を設定してインストールしてください。$esp は efi パーティションに置き換えて下さい (通常は /boot):

# grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=arch

noto

UEFI ファームウェアの応急処置

UEFI ファームウェアによっては .efi ブータブルスタブが特定の名前で特定の場所に配置されていることが必要とされます: $esp/EFI/boot/bootx64.efi ($esp は UEFI パーティションのマウントポイントに置き換えて下さい)。そうしておかないと場合によって起動できなくなってしまうことがあります。幸いに、これを必要としない他のファームウェアでは問題は起きません。

応急処置を行うには、必要なディレクトリを作成して、それから grub の .efi スタブをコピーしてください:

# mkdir $esp/EFI/boot
# cp $esp/EFI/grub_uefi/grubx64.efi  $esp/EFI/boot/bootx64.efi

メイン設定ファイルの生成

インストールした後は、メインの設定ファイル grub.cfg を生成する必要があります。生成されるファイルは /etc/default/grub の様々なオプションや /etc/grub.d/ のスクリプトによって設定されます。これについては #設定 のセクションで説明しています。

ノート: /etc/default/grub や /etc/grub.d/* に変更を加えた後は grub.cfg を再生成する必要があることを覚えておいて下さい。

警告: パッケージバージョン 1:2.02.beta2-1 (2014-01-10) から grub-mkconfig は異常な設定ファイルを作成するようになっています。生成される grub.cfg にはブートエントリが重複して含まれ、initramfs が見つからなかったりセルフコンパイルしたカーネルがメニューに表示されなかったりします (FS#38455)。

(引用:Arch Wiki)

Arch Wiki

grub-mkconfig ツールを使って grub.cfg を生成してください:

# grub-mkconfig -o /boot/grub/grub.cfg

マイクロコード

Intel または AMD の CPU を使っている場合はマイクロコードのアップデートを有効

# grub-mkconfig -o /boot/grub/grub.cfg

Z68 ファミリーと U47 ファミリー

# cp /boot/efi/EFI/arch_grub/grubx64.efi /boot/efi/shellx64.efi

上記のコマンドを実行した後、UEFI セットアップ/メニューから UEFI Shell を起動してください (ASUS の UEFI BIOS の場合、アドバンスモードに切り替えて、右上の Exit を押してから “Launch EFI shell from filesystem device" を選択します)。GRUB2 のメニューが表示されるのでシステムを起動することができます。その後、efibootmgr を使ってメニューエントリを設定することが可能です。例えば uefi パーティションが /dev/sda1 の場合 (Unified_Extensible_Firmware_Interface を参照):

> efibootmgr -c -g -d /dev/sda -p 1 -w -L "Arch Linux (GRUB)" -l /EFI/arch_grub/grubx64.efi