自作PCにArch linuxをインストール

GPTパーティション、UEFIで起動させる
自作PCにArch linuxをインストール
GPTパーティション、UEFIで起動させる
#表示はrootでの操作、$はリモートPCから一般ユーザの操作。

PCにインストールCD入れて CDから起動するが、
ブートメニューではUEFI モードのCD Driveから起動

シェルが出てきたら

# passwd

でrootのパスワード入力

# ip addr

でPCのプライベートIPアドレスが取得されていることを確認

# systemctl start sshd

以上がインストール先のPC上での作業。後はメインのPC (ここではMac)のターミナルから作業開始

$ ssh root@[先ほどのプライベートIPアドレス]
# ls -l /sys/firmware/efi
total 0
drwxr-xr-x  2 root root    0 Aug 23 08:27 efivars/
-r--------  1 root root 4096 Aug 23 08:32 systab
drwxr-xr-x 99 root root    0 Aug 23 08:32 vars/

のように何か表示されたらEFIモードで起動している。

# lsblk
NAME              MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda                 8:0    0 139.8G  0 disk 
├─sda1              8:1    0   100M  0 part 
├─sda2              8:2    0   128M  0 part 
└─sda3              8:3    0 139.5G  0 part 
sdb                 8:16   0   2.7T  0 disk 
├─sdb1              8:17   0   128M  0 part 
└─sdb2              8:18   0   2.7T  0 part 
sdc                 8:32   0 279.5G  0 disk 
├─sdc1              8:33   0   512M  0 part 
└─sdc2              8:34   0   279G  0 part 
sr0                11:0    1 522.3M  0 rom  /run/archiso/bootmnt
loop0               7:0    0 226.4M  1 loop /run/archiso/sfs/root-image
loop1               7:1    0   1.5G  1 loop 
└─arch_root-image 254:0    0   1.5G  0 dm   /
loop2               7:2    0   1.5G  0 loop 
└─arch_root-image 254:0    0   1.5G  0 dm   /

この様に階層表示で接続されているHDDなどが表示されるので、インストール先のHDDの
デバイス表示を確認。

# cgdisk /dev/sdc

cgdiskパーティションを作成するが、
/dev/sdc1 boot linux partition
/dev/sdc2 efi FAT32でフォーマットし EFI boot partitionとする
/dev/sdc3 / linux partition

一番上のfree スペースはMBR領域であるが、EFIブートなのでfreeのままにしておく。
efi boot partitionはタイプをef02にすると EFI partitionになる。

# mkfs.vfat -F32 /dev/sdc2 
# mkfs.ext4 /dev/sdc1 && mkfs.ext4 /dev/sdc3
# mount /dev/sdc3 /mnt
# mkdir /mnt/boot
# mount /dev/sdc1 /mnt/boot
# mkdir /mnt/boot/efi
# mount /dev/sdc2 /mnt/boot/efi
# nano /etc/pacman.d/mirrorlist

control+w でJapanを検索。 行頭の数字を 0,1に変更して日本のダウンロードサイトを優先させる。

# pacstrap -i /mnt base vim openssh grub efibootmgr os-prober
# genfstab -U -p /mnt >> /mnt/etc/fstab
# arch-chroot /mnt /bin/bash
# vim /etc/locale.gen

en_US.UTF-8とJa_JP.UTF-8の行頭をアンコメントする。

# locale-gen
Generating locales...
  en_US.UTF-8... done
  ja_JP.UTF-8... done15
Generation complete.
# echo LANG=en_US.UTF-8 > /etc/locale.conf
# echo KEYMAP=jp106 > /etc/vconsole.conf
# ln -s /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
# hwclock --systohc --utc
# echo Arch >  /etc/hostname

sshdの起動をセットしたらmkinitcpio,パスワードの設定してブートローダのインストール。

# systemctl enable sshd.service
# mkinitcpio -p linux
# passwd 
Enter new UNIX password: 
Retype new UNIX password: 
passwd: password updated successfully
#grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=arch_grub --recheck
# grub-mkconfig -o /boot/grub/grub.cfg

ネットワークの設定はbeginnersに長々と書いてあるが、NetworkManager一発でOKっぽい。
NetworkManagerの日本語版wikiをみると
最後にNIC (Network Interface Controllers, ネットワークカード) を落として下さい。
と書いてあるが、この通りにやるとMacからのターミナル接続が切れてしまうので不要。
英語版にはこの記載なし。

# pacman -S NetworkManager
# systemctl enable NetworkManager.service
# exit

その後chrootを抜ける。

# umount /mnt/boot/efi
# umount /mnt/{boot,}
# shutdown -h now

アンマウントしてから、シャットダウン。rebootでも良い。CDは取り出すこと。