☺️

動作は軽いのに作業は重い、ArchLinuxさんをPCに入れる

2021/03/21に公開

使わなくなったノートPCにArchLinuxをインストールした。以下にメモを纏める。

完成イメージ(VirtalBox検証)

前提

  • メディア(OSイメージ)がマシンに挿入済み
  • BIOS起動順序は最初にメディアが読込まれる状態

インストール要件

個人的な推奨値は【】に記載。

  • マシン :x86_64 互換
  • メモリ :512 MB 以上【2MB】
  • ディスク:2 GB【10GB】

手順

初期設定 ~ FireFox インストールまでの手順を以下に記載。

1. 一時的なネットワーク設定(Wi-Fi)

(1) 一時的なキーボード設定(日本語) 
# loadkeys jp106

(2) NICの確認
# ip link
→Wi-fi用のNICを確認。

(3) アクセスポイントの検索
# iw dev NIC名 scan | grep SSID名
→SSIDが存在すること。

(4) アクセスポントへの接続
# iwctl station NIC名 connect SSID名
Passphrase:
→パスワードを入力して接続。

(5) IPアドレス取得
# dhcpcd NIC名
→SSH接続で使用するため表示結果(leased行)のIPを確認。

(6) 接続確認
# ping archlinux.jp
→64 bytes from ~ と応答があること。

(7) NTP同期
# timedatectl set-ntp true

(8) 反映確認
# timedatectl status
→NTP service が active になっていること。

2. SSH接続

以降のインスールを容易にするため、普段使用している端末Aからインスール端末Bに対して、PowerShellにてSSH接続を行う。

(1) rootパスワード設定
# passwd
New password:
Retype new password:
→パスワードを2回入力。

(2) SSH設定ファイル編集
# vim /etc/ssh/sshd_config
→以下のコメント(#)を削除。
変更前:#Port 22
変更後:Port 22

(3) SSHサービス起動
# systemctl start sshd

(4) PowerShell起動
端末Aにて管理者権限でPowerShellを起動。

以降は端末Aにて作業を実施。

(5) SSH接続
> ssh -p 22 root@IPアドレス
Are you sure you want to continue connecting (yes/no)?yes
→接続確認に対してyesを入力。

(6) パスワード入力
root@IPアドレス's password:

3. パーティション作成

(1) ブロックデバイス確認
# lsblk
→対象デバイスを確認。(sda等)

(2) パーティション作成
# gdisk /dev/sda

(3) 既存パーティションの削除
Command (? for help):o
Proceed? (Y/N):Y
→oを入力。加えて確認応答に対してYを入力。

(4) 新規パーティション作成(EFIシステム)
Command (? for help): n
→nを入力。

(5) パーティション番号の設定
Partition number (1-128, default 1):
→デフォルトを使用するため、何も入力せずにEnterキーを押下。

(6) 先頭セクタの設定
First sector (34-104857566, default = 2048) or {+-}size{KMGTP}: 
→デフォルトを使用するため、何も入力せずにEnterキーを押下。

(7) 最終セクタの設定
Last sector (2048-104857566, default = 104857566) or {+-}size{KMGTP}: 512M
→512Mを入力。

(8) パーティションタイプの設定
Hex code or GUID (L to show codes, Enter = 8300): ef00
→ef00を入力。

(9) 状態確認
Command (? for help): p
→pを入力して、表示結果の下部に、項番(5)-(8)までに設定した値が表示されていること。

(10) 新規パーティション作成(ルートファイルシステム)
Command (? for help): n
→nを入力。

(11) パーティション番号の設定
Partition number (2-128, default 2):
→デフォルトを使用するため、何も入力せずにEnterキーを押下。

(12) 先頭セクタの設定
First sector (34-104857566, default = 2048) or {+-}size{KMGTP}: 
→デフォルトを使用するため、何も入力せずにEnterキーを押下。

(13) 最終セクタの設定
Last sector (1050624-104857566, default = 104857566) or {+-}size{KMGTP}: 
→デフォルトを使用するため、何も入力せずにEnterキーを押下。

(14) パーティションタイプの設定
Hex code or GUID (L to show codes, Enter = 8300): 
→デフォルトを使用するため、何も入力せずにEnterキーを押下。

(15) 状態確認
Command (? for help): p
→pを入力して、表示結果の下部に、項番(11)-(14)までに設定した値が表示されていること。

(16) 変更を保存して終了
Command (? for help): w
→wを入力。

(17) 応答確認
Do you want to proceed? (Y/N):Y
→Yを入力。

(18) ブロックデバイス確認
# lsblk
→対象デバイスを確認。(sda1,sda2等)

4. ファイルシステム構築

(1) ファイルシステム構築(FAT32形式)
# mkfs.fat -F32 /dev/sda1

(2) ファイルシステム構築(EXT4形式)
# mkfs.ext4 /dev/sda2
Procced anyway?(y,N)y
→応答確認に対してyを入力。

(3) マウント(ルートファイルシステム)
# mount /dev/sda2 /mnt

(4) マウント先のディレクトリ作成(EFIシステム)
# mkdir /mnt/boot

(5) マウント(EFIシステム)
# mount /dev/sda1 /mnt/boot

(6) マウント確認
# mount | grep /mnt
→sda1、sda2が存在すること。

5. Arch Linuxのインスール・設定

(1) リポジトリ追加
# vim /etc/pacman.d/mirrorlist
→以下の2行を先頭に追加。
Server = http://ftp.tsukuba.wide.ad.jp/Linux/archlinux/$repo/os/$arch
Server = http://ftp.jaist.ac.jp/pub/Linux/ArchLinux/$repo/os/$arch

(2) 反映確認
# cat /etc/pacman.d/mirrorlist | grep http://ftp
→前項の2行が追加されていること。

(3)既存パッケージの更新
# pacman -Syy

(4) Linux&必要パッケージのインストール
# pacstrap /mnt base linux linux-firmware netctl wpa_supplicant dhcpcd openssh vim man-db man-pages sudo

(5) fstabの生成
# genfstab -U /mnt > /mnt/etc/fstab

(6) 反映確認
# cat /mnt/etc/fstab
→ルート(/)とbootが登録されていることを確認。

(7) ルートディレクトリの移動
# arch-chroot /mnt

(8) タイムゾーンの設定(東京)
# ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime

(9) 反映確認
# date

(10) ハードウェアクロックの設定
# hwclock --systohc

(11) 反映確認
# hwclock --show

(12) ロケール設定
# vim /etc/locale.gen
→以下のコメント(#)を削除。
<変更前>
#en_US.UTF-8 UTF-8
#ja_JP.UTF-8 UTF-8
<変更後>
en_US.UTF-8 UTF-8
ja_JP.UTF-8 UTF-8

(13) ロケール生成
# locale-gen

(14) 反映確認
# locale
→ locale: Cannot set ~というエラーメッセージが表示されないこと。

(15) LANG設定
# echo LANG=en_US.UTF-8 > /etc/locale.conf

(16) 反映確認
# cat /etc/locale.conf

(17) キーボード設定の永続化
# echo KEYMAP=jp106 > /etc/vconsole.conf

(18) 反映確認
# cat /etc/vconsole.conf

(19) ホスト名設定
# echo ホスト名 > /etc/hostname

(20) 反映確認
# cat /etc/hostname

(21) ホスト名とIPアドレスの対応付け
# vim /etc/hosts
→以下の3行を追加。
127.0.0.1        		localhost
::1				localhost
IPアドレス                      ホスト名.localdomain	ホスト名

(22) 反映確認
# cat /etc/hosts

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

(1) パッケージのインストール
# pacman -S grub dosfstools efibootmgr
:: Proceed with installation? [Y/n]Y
→応答確認に対してYを入力。

(2) ブートファイルインストール
# grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=arch_grub --recheck --debug

(3) 設定ファイル生成
# grub-mkconfig -o /boot/grub/grub.cfg

(4) ブータブルスタブ複製ディレクトリ作成
# mkdir /boot/EFI/boot

(5) ブータブルスタブ複製
# cp /boot/EFI/arch_grub/grubx64.efi /boot/EFI/boot/bootx64.efi

(6) rootパスワード設定
# passwd
New password:
Retype new password:
→パスワードを2回入力。

(7) ルートディレクトリ解除
# exit

(8) 設定反映
# reboot
→起動後インストールメディア取出し

7. 一般ユーザの作成

以降は端末Bにて作業を実施。

(1) ユーザ作成
# useradd -m -G wheel -s /bin/bash ユーザ名

(2) パスワード設定
# passwd ユーザ名

(3) sudo設定
# EDITOR=vim visudo
→以下のコメント(#)を削除。
変更前:#%wheel ALL=(ALL) ALL
変更後:%wheel ALL=(ALL) ALL

(4) スイッチユーザ
# su - ユーザ名

(5) 反映確認
$ sudo id

8. ネットワーク設定(Wi-Fiスタティック)

(1) テンプレファイルの存在確認
$ ls -l /etc/netctl/examples/wireless-wpa-static

(2) ディレクトリ移動
$ cd /etc/netctl ; pwd

(3) ユーザ切替
$ su -
→パスワードを入力。

(4) テンプレファイルのコピー
# cp exsamples/wireless-wpa-static wireless

(5) 権限変更
# chmod 600 wireless

(6) 権限確認
$ ls -l wireless
→権限が600であること。

(7) ネットワーク設定
# vim wireless
→以下の設定に書き換える。
Description='A simple WPA encrypted wireless connection'
Interface=NIC名
Connection=wireless
Security=wpa
ESSID='SSID名'
Key='パスワード'
IP=static
Address='IPアドレス/サブネット'
Gateway='GWIPアドレス'
DNS='DNSIPアドレス'

(8) 反映確認
# cat wireless

(9) 起動競合の防止
# ip link set NIC名 down

(10) ネットワーク起動
# netctl start wireless

(11) 自動起動設定
# netctl enable wireless

(12) 反映確認
# ping archlinux.jp
→64 bytes from ~ と応答があること。

(13) ユーザ切替
# exit ; id

9. AURヘルパーのインストール(yay)

(1) 動作環境インスール
$ sudo pacman -S git go base-devel
Enter a selection (default=all):
:: Proceed with installation? [Y/n]Y
→Enterキーを押下。加えて応答確認に対してYを入力。

(2) ダウンロードディレクトリに移動
$ cd ~ ; pwd

(3) AURヘルパーダウンロード(yay)
$ git clone https://aur.archlinux.org/yay.git

(4) ダウンロード先に移動
$ cd yay ; pwd

(5) パッケージのビルド
$ makepkg -si
:: Proceed with installation? [Y/n] Y
→応答確認に対してYを入力。

10. swap作成

(1) ファイル生成
$ sudo dd if=/dev/zero of=/swapfile bs=1M count=2048

(2) 存在確認
$ ls -lh /swapfile

(3) 権限変更
$ sudo chmod 600 /swapfile

(4) swap作成
$ sudo mkswap /swapfile

(5) 有効化
$ sudo swapon /swapfile

(6) 永続化
$ sudo vim /etc/fstab
→以下の1行を追加。
/swapfile                                 swap                    swap    defaults        0 0

(7) マウント
$ mount -a

(8) 反映確認
$ free -m
→swap領域が2GB存在すること。

11. GUI のインストール・設定

(1) ディスプレイサーバ(X Window System) インストール
$ yay -S xorg-server xorg-apps xorg-xinit
Enter a selection (default=all):
:: Proceed with installation? [Y/n]Y
→Enterキーを押下。加えて応答確認に対してYを入力。

(2) ディスプレイドライバの確認
$ lspci | grep -e VGA -e 3D
→以下のURLから対応するドライバを確認。

対応ドライバの確認

(3) ディスプレイドライバのインストール
$ yay -S ビデオドライバ
:: Proceed with installation? [Y/n] Y
→応答確認に対してYを入力。

(4) デスクトップ(LXDE)・ウィンドウマネージャ(Openbox) インストール
$ yay -S lxde
Enter a selection (default=all):
:: Proceed with installation? [Y/n]Y
→Enterキーを押下。加えて応答確認に対してYを入力。

(5) デスクトップ開始設定
$ echo "exec startlxde" > ~/.xinitrc

(6) 反映確認
$ cat ~/.xinitrc
→exec startlxdeが設定されていること。

(7) 日本語フォント インストール
$ yay -S ipa-fonts
Enter a selection (default=all):
:: Proceed with installation? [Y/n]Y
→Enterキーを押下。加えて応答確認に対してYを入力。

(8) キーボード永続化
$ sudo localectl set-x11-keymap jp,us pc104 ,dvorak grp:alt_shift_toggle

(9) 反映確認
$ cat /etc/X11/xorg.conf.d/00-keyboard.conf

(10) 日本語入力ツールインストール 
# yay -S fcitx fcitx-mozc fcitx-configtool
:: Proceed with installation? [Y/n] Y
→応答確認に対してYを入力。

(11) X セッションログイン時の設定
# vim ~/.xprofile
→以下の4行を追加する。
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx
fcitx -s 2 &

(12) ディスプレイマネージャ(ログイン画面) のインストール
$ yay -S lightdm lightdm-gtk-greeter
:: Proceed with installation? [Y/n] Y
→応答確認に対してYを入力。

(13) ユーザ切替
$ su -
Password:
→パスワードを入力。

(14)  ディスプレイマネージャ起動
# systemctl start lightdm.service

(15) 自動起動設定
# systemctl enable lightdm.service

(16) LANG設定
# echo LANG=ja_JP.UTF-8 > /etc/locale.conf

(16) 反映確認
# cat /etc/locale.conf

(17) LXDE 起動確認
# reboot

(18) ログイン
ユーザを選択後、パスワードを入力。「Log In」ボタンをクリック。

(19) 日本語入力設定:Fcitx起動
画面左下にあるロゴマークをクリック。「設定」→「Fcitx 設定」を選択して入力メソッド画面を起動。

(20) 日本語入力設定:入力メソッドの画面起動
画面下部にある「+」ボタンをクリック。入力メソッドの追加 画面を起動。

(21) 日本語入力設定:入力メソッドの追加(日本語)
入力メソッドの追加 画面にて「Mozc」を選択して、「OK」ボタンをクリック。

(22) 日本語入力設定:ホットキーの変更
入力メソッドの追加 画面にて全体の設定 タブをクリック。入力メソッドのオンオフ欄の右を選択して、「半角/全角 漢字」キーを押下。

(23) 日本語入力設定:ホットキーの変更
入力メソッドのオンオフ欄の左を選択して、「Esc」キーを押下。

(24) 日本語入力設定:入力メソッドの画面終了
画面右上にある「×」ボタンをクリック。

(25) ターミナル起動
画面左下にあるロゴマークをクリック。「システムツール」→「LXTerminal」を選択してターミナルを起動。

(26) UI・ブラウザインストール
# yay -S  archlinux-wallpaper arc-icon-theme breeze-gtk firefox firefox-i18n-ja
数字を入力してください (デフォルト=1):
:: Proceed with installation? [Y/n]Y
→Enterキーを押下。加えて応答確認に対してYを入力。

(27) ターミナル終了
# exit

(28) 壁紙設定:デスクトップ設定 画面起動
画面左下にあるロゴマークをクリック。「設定」→「デスクトップの設定」を選択してデスクトップ設定画面を起動。

(29) 壁紙設定:画像選択 画面起動
壁紙(W)欄の「lxde_blue.jpg」をクリックして、画像選択画面を起動。

(30) 壁紙設定:壁紙選択
「share」→「background」→「archlinux」の順で選択して、好きな壁紙を選択後、「開くボタン」をクリック。



(31) 壁紙設定:画像選択 画面終了
画面右上にある「×」ボタンをクリック。

(32) ルックアンドフィールド設定画面 起動
画面左下にあるロゴマークをクリック。「設定」→「ルックアンドフィールドを設定します」を選択してルックアンドフィールド設定画面を起動。

(33) ウィジェット選択
ウィジェット タブの「Breez-Dark」を選択。

(34) アイコンテーマ選択
アイコンテーマ タブの「Arc」を選択。

(35) ルックアンドフィールド設定画面 終了
「適用」ボタン、「閉じる」ボタンの順にクリック。

おわり

Discussion