ThinkPad X201が遊んでいるので、Arch Linuxをインストールしてみた。
起動用のUSBメモリはWin32DiskImagerを使用。
電源投入直後にF12キーを押すと起動ドライブの選択画面になる。
USBメモリを選んでboot。
X201、CPUがCore iだからUEFIだと思い込んでいたらBIOSだった。
uefiだと起動時の画面はこんな感じ。
さて、起動ができたら文字入力できるはず。まずはキーボード配列を日本語に指定。
loadkeys jp106
次にネットワークに接続。今回は無線LANを使用。
iwctl
「[iwd]#」という入力画面になったら、インターフェースを確認。
station list
wlan0というのが出るはず。
ひとまず、ネットワークのスキャン。
station wlan0 scan
つなぎ先を探してみる。
station wlan0 get-networks
一覧に自分がいつも使う無線LANのSSIDが見れたらつなぐ。
station wlan0 connect <SSID>
パスフレーズ入力を入力するとつながる。
一応、つながったかどうか確認。
station wlan0 show
iwctlを抜ける。
exit
今回はDHCPでIPアドレスを取得しているので、IPアドレスが割り振られているか確認。
ip addr
ネットワークに接続出来たら、セットアップを開始する。
まずは時計をntpで補正。
timedatectl set-ntp true
ディスクを確認。
fdisk -l
今回は/dev/sdaにいれる。
fdisk /dev/sda o n [Enter] [Enter] [Enter] vfat含まれると表示された場合はremove the signatureをy wを打って書き込む。 w
自分のマシンはメモリが8GBあるし、CUIで運用する予定なのでswapは作らなかった。
パーティションを作成し、/mntにマウント。
mkfs.ext4 /dev/sda1 mount /dev/sda1 /mnt
基本システムをインストール。
pacstrap /mnt base linux linux-firmware
fstabファイルに/mntにマウントしたディスクの情報を書き込む。
genfstab -U /mnt >> /mnt/etc/fstab
作った環境にrootで入る。
arch-chroot /mnt
UTCからlocaltimeに変更。
ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
JSTになっていることを確認。
date
おまじない。
hwclock --systohc
/etc/locale.genを編集するためにテキストエディタをインストール。今回はnanoを使用。
pacman -S nano
nano /etc/locale.gen
Ctrl+qで検索en_US
#en_US.UTF-8 UTF-8の先頭の#を[delete]で削除
Ctrl+qで検索ja_JP
#ja_JP.UTF-8 UTF-8の先頭の#を[delete]で削除
Ctrl+xで保存。y [Enter]
ロケールを作成。
locale-gen
デフォルトは英語にするので以下を指定
echo LANG=en_US.UTF-8 >> /etc/locale.conf
キーボードは日本語配列なので以下を指定
echo KEYMAP=jp106 >> /etc/vconsole.conf
ホスト名を自分の好きなのに決める
echo <hostname> >> /etc/hostname
ネットワークはwifiでdhcpにするので以下のソフトウェアをインストール。
pacman -S dhcpcd wpa_supplicant
起動用のカーネルイメージなどを作成。
mkinitcpio -P
rootユーザのパスワードを指定。いつも使うユーザを作成するのは後で。
passwd
今回はBIOS起動なので、ブートローダは無難なgrubをインストール。
pacman -S grub grub-install --target=i386-pc /dev/sda
なんかエラーメッセージが出たらディスクがGPTになっているので最初からやり直し。普通は「Installation finished」になる。
grub.cfgファイルを作成する。
grub-mkconfig -o /boot/grub/grub.cfg
chrootを抜ける。
exit
マウントを解除して再起動。
umount -R /mnt
reboot
USBメモリを抜いて本体から起動させる。
ログイン画面がでたらrootでログインする。
wpa_passphraseで無線LAN接続の設定を作る。
wpa_passphrase MYSSID passphrase > /etc/wpa_supplicant/wpa_supplicant.conf
インターフェイスを確認
ip addr
接続
wpa_supplicant -B -i wlp2s0 -c /etc/wpa_supplicant/wpa_supplicant.conf dhcpcd wlp2s0
これでネットワークにつながる。
起動時に自動で接続するため以下のように指定する。
mv /etc/wpa_supplicant/wpa_supplicant.conf /etc/wpa_supplicant/wpa_supplicant-wlp2s0.conf systemctl enable wpa_supplicant@wlp2s0 systemctl enable dhcpcd@wlp2s0
いつも使うユーザを作成する。
useradd -m <username>
ここで指定するusernameはログインするときの名前になるので注意。
パスワードを設定。
passwd <username>
いつも使うユーザでsudoできるようにする。
pacman -S sudo vi
/etc/sudoersファイルを編集する。
visudo
viというエディタを使うのでnanoとは操作が違う。
「root ALL=(ALL) ALL」の次の行に以下を挿入する。カーソルキーで移動して「i」で挿入モードへ。
<username> ALL=(ALL) ALL
挿入モードから抜けるときは「Esc」キーを押す。
保存は「:wq」で。
試しに作ったユーザになってみる。
su - <username>
以下のコマンドを打つと最初の注意文が表示されてパスワード入力になる。
sudo -i
作ったユーザのパスワードを入力してエラーが出なければOK。
再起動してみる。
reboot
作ったユーザでログインできればOK。ネットワークも自動で接続しているはず。
最低限のシステムはこんな感じで作れる。日本語環境はまた別エントリで。
2021/05/13追記:「systemctl enable wpa_supplicant@wlp2s0」が正しいので修正。pが1つ抜けていた。