ArchLinuxを以下の条件のもとインストールする.
条件
- 64bitUEFIブート
- USBインストールメディアからインストール
-
/dev/sdx
にインストール(xは環境によって異なる) - パーティションは
/dev/sdx1
が/boot
で/dev/sdx2
が/
- ネットワークは有線接続
- キーマップはUS
- 同一ネットワークの別PCからsshで操作できるところまで設定
#USBインストールメディアの作成と起動
公式のArchLinuxをダウンロードのページからISOファイルarchlinux-年.月.日-x86_64.iso
をダウンロードする.
dd
コマンドを使用してISOファイルをUSBメモリに書き込む.
# dd bs=4M if=/path/to/archlinux.iso of=/dev/sdy status=progress && sync
USBインストールメディアが完成したら,USBインストールメディアからライブ環境を起動する.
#ArchLinuxのインストール
パーティションの作成
root@archiso ~ # parted /dev/sdx
(parted)mklabel gpt
(parted)mkpart ESP fat32 1MiB 551MiB //[/boot]ディレクトリ用
(parted)set 1 esp on
(parted)mkpart primary ext4 551MiB 100% //[/]ディレクトリ用
(parted)q
作成したパーティションを初期化する.
root@archiso ~ # mkfs.vfat -F32 /dev/sdx1
root@archiso ~ # mkfs.ext4 /dev/sdx2
作成したパーティションをマウントする.
root@archiso ~ # mount /dev/sdx2 /mnt
root@archiso ~ # mkdir /mnt/boot
root@archiso ~ # mount /dev/sdx1 /mnt/boot
時間の設定
root@archiso ~ # timedatectl set-ntp true
root@archiso ~ # timedatectl set-timezone Asia/Tokyo
ArchLinuxのパッケージをインストールするミラーリストの選択(日本のサーバを選ぶ)
root@archiso ~ # vim /etc/pacman.d/mirrorlist
root@archiso ~ # cat /etc/pacman.d/mirrorlist
##
## Arch Linux repository mirrorlist
## Filtered by mirror score from mirror status page
## Generated on 20xx-xx-xx
##
## Japan
Server = http://mirrors.cat.net/archlinux/$repo/os/$arch
## Japan
Server = http://ftp.tsukuba.wide.ad.jp/Linux/archlinux/$repo/os/$arch
## Japan
Server = http://ftp.jaist.ac.jp/pub/Linux/ArchLinux/$repo/os/$arch
## other country
...
ベースシステムと必要なパッケージのインストール
root@archiso ~ # pacstrap /mnt base linux vim dhcpcd
UUIDを使用してディスクを判別するためにfstabを作成する.
root@archiso ~ # genfstab -U /mnt >> /mnt/etc/fstab
root@archiso ~ # cat /mnt/etc/fstab
# Static information about the filesystems.
# See fstab(5) for details.
# <file system> <dir> <type> <options> <dump> <pass>
# /dev/sdx2
UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx / ext4 rw,relatime 0 1
# /dev/sdx1
UUID=yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy /boot ext4 rw,relatime 0 2
インストールした環境にchrootする
root@archiso ~ # arch-chroot /mnt
タイムゾーンと時間の設定
[root@archiso /]# ln -sf /usr/share/zoneinfo/Asia/Tokyo > /etc/localtime
[root@archiso /]# hwclock --systohc
使用する文字コードの設定
[root@archiso /]# vim /etc/locale.gen
[root@archiso /]# cat /etc/locale.gen
en_US.UTF-8 UTF-8
ja_JP.UTF-8 UTF-8
[root@archiso /]# locale-gen
[root@archiso /]# vim /etc/locale.conf
[root@archiso /]# cat /etc/locale.conf
LANG=en_US.UTF-8
ホストネームの設定
[root@archiso /]# vim /etc/hostname
[root@archiso /]# cat /etc/hostname
myhostname
ネットワークの設定
[root@archiso /]# vim /etc/hosts
[root@archiso /]# cat /etc/hosts
127.0.0.1 localhost
::1 localhost
127.0.1.1 myhostname.localdomain myhostname
rootのパスワード設定
[root@archiso /]# passwd
ブートローダーのインストールと設定
[root@archiso /]# pacman -S grub dosfstools efibootmgr intel-ucode
[root@archiso /]# grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=grub --recheck
[root@archiso /]# cp /boot/EFI/grub/grubx64.efi /boot/EFI/boot/bootx64.efi
[root@archiso /]# grub-mkconfig -o /boot/grub/grub.cfg
起動時にネットワークに接続するように設定
[root@archiso /]# systemctl enable dhcpcd
chrootからログアウトし再起動する
[root@archiso /]# exit
root@archiso ~ # umount -R /mnt
root@archiso ~ # reboot
#ArchLinuxインストール後の初期設定
rootでログインする
myhostname login : root
passwd
ローカルユーザーを作成
[root@myhostname ~]# useradd -m -G wheel -s /bin/bash myusername
[root@myhostname ~]# passwd myusername
sudoをインストールしwheelグループのユーザーでsudoが使えるようにする.
[root@myhostname ~]# pacman -S sudo
[root@myhostname ~]# vim /etc/sudoers
[root@myhostname ~]# cat /etc/sudoers
...
##
## User privilege specification
##
root ALL=(ALL) ALL
## Uncomment to allow members of group wheel to execute any command
%wheel ALL=(ALL) ALL
...
ローカルユーザーでログイン
[root@myhostname ~]# exit
myhostname login : myusername
passwd
opensshのインストールと有効化
[myusername@myhostname ~]# sudo pacman -S openssh
[myusername@myhostname ~]# sudo systemctl enable sshd
#最後に
UEFIブートで起動する環境にArchLinuxをインストールしsshで外部から操作できるところまで設定を行った.
詳しい説明はインストールガイド-ArchWikiを参照.