Arch linux インストールメモ
最初はUSBにインストールイメージを焼く
mac環境だったのでEtcherを使用
なんとかしてUSBからのブートをする
インストール対象にmac pro late 2013を使用しているが、
Optionを押下した起動ディスクの選択ができなかったので(なぜか)
macOS ボリュームを全て削除して無理やりUSBから起動した
とりあえずここみてやる
キーボードレイアウトはUSだったので特に変更なし
起動モードの確認
# ls /sys/firmware/efi/efivars
が表示されたため、UEFIでブートされてる
ネットワークは有線での接続を想定
インストーラの段階ではlanケーブルを接続すれば接続された
ping archlinux.jp
も通った。
システムクロックの同期
自動でされた
timedatectl status
パーティションの作成
変更するボリュームを選択
fdisk /dev/sda
m
: ヘルプ表示
d
: 領域を削除
n
: 新たに領域を作成する
no | device | size | type |
---|---|---|---|
1 | /dev/sda1 | +1G | EFI System |
2 | /dev/sda2 | +5G | Linux Swap |
3 | /dev/sda3 | 残り | Linux root (x86-64) |
パーティションのタイプ変更
l
選択可能なパーティションタイプ一覧を表示
t
: パーティションのタイプを変更する
上記の表通りに設定する
パーティションのフォーマット
EXT4
mkfs.ext4 /dev/sda3
SWAP
mkswap /dev/sda2
EFI
mkfs.fat -F 32 /dev/sda1
マウント
mount /dev/sda3 /mnt
mount --mkdir /dev/sda1 /mnt/boot
swapon /dev/sda2
ミラー選択
まぁしなくてもいけるか・・・
するとしたら
/etc/pacman.d/mirrorlist
の内容を上記のURLのものにする
該当の国のミラーのコメントを外す
ない方が安定するかも...?
インストール
デフォルトのものにdhcpcd
だけ追加する
pacstrap -K /mnt base linux linux-firmware dhcpcd
なんか証明書でエラーになった時
pacman-key --refresh-keys
結構時間かかる
fstabの生成
(起動時にマウントするためのファイル作成)
genfstab -U /mnt >> /mnt/etc/fstab
chrootで新システムに切り替え
arch-chroot /mnt
タイムゾーンの設定
ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
hwclock --systohc
ローカリゼーション
locale-gen
echo "LANG=en_US.UTF-8" >> /etc/locale.conf
locale-gen
ネットワーク設定
echo "hostname" >> /etc/hostname
initramfs
色々起動時のモジュール読み込み設定
mkinitcpio -P
Root パスワード変更
passwd
ブートローダのインストール
pacman -S grub dosfstools efibootmgr
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=grub --recheck
mkdir /boot/EFI/boot
cp /boot/EFI/grub/grubx64.efi /boot/EFI/boot/bootx64.efi
grub-mkconfig -o /boot/grub/grub.cfg
再起動
reboot
色々やってからarchinstall
コマンドがあることを知った....
これでもよかったか?
GRUB shell が立ち上がった時
なんかこんな感じで立ち上がる
grub> ls
grub> set root=(hd1,gpt1)
grub> linux /vmlinuz root=/dev/sda1
grub> initrd /initrd.img
grub> boot
Archlinux が立ち上がったら
ネットワークの有効化
systemctl enable dhcpcd
systemctl start dhcpcd
パッケージ管理ツールpacmanの使い方
apt update
と同等
pacman -Syy
apt upgrade
と同等
pacman -Syyu
インストール
pacman -S
zsh をインストールする
pacman -S zsh
一回DNSかなんかのエラーになったけど多分うちのネットワークの問題
使用可能シェル一覧表示
chsh -l
zshをデフォルトに設定する
chsh -s /bin/zsh
ユーザの追加
useradd -m -g wheel -s /bin/zsh shiro
ユーザPWの変更
passwd shiro
sudo をインストール
pacman -S sudo vi vim
viは次のvisudoを実行する時に必要(変えられるけど面倒)
sudo の設定
visudo
# Defaults env_keep += "HOME"
と # %wheel ALL=(ALL) ALL
のコメントを外して保存
sudo userの設定
DNSの設定
なんかDNSがうまく拾えてない場合が多いので設定
sudo vim /etc/resolv.conf.head
追加内容
一旦Google でいいか
nameserver 8.8.8.8
nameserver 8.8.4.4
screenfetch
なんかかっこいいので入れる
pacman -S screenfetch
グラフィックスドライバのインストール
GPU: AMD/ATI Tahiti LE [Radeon HD 7870 XT], AMD/ATI Tahiti LE [Radeon HD 7870 XT]
なので、GCN 1.0 想定
sudo pacman -S xf86-video-amdgpu
grubのOS選択時間を短くする
sudo pacman -S openssh
一旦必要なもの
sudo pacman -S screenfetch vim git base-devel htop
ssh の設定変更
sudo vim /etc/ssh/sshd_config
+ Port XXXX #適切なポート番号
+ PermitRootLogin no
+ PubkeyAuthentication yes
+ PasswordAuthentication no
に変更
sshd サービス再起動
sudo systemctl restart sshd
Grub以外のブートローダーも面白そう
dhcpがよく止まる
DHCPクライアントがDNS関連の情報を取得しないように設定する。
/etc/dhcpcd.confに以下を追記。
nooption domain_name_servers, domain_name, domain_search
nohook resolv.conf
ロケールの設定
/etc/locale.gen
en_US.UTF-8
とja_JP.UTF-8
をアンコメント
locale-gen
を実行
GPU ドライバを確認する
lspci -k | grep -A 3 -E "(VGA|3D)"
X11
xorg-server xorg-xeyes xorg-xauth
必要なら.Xauthority
を作る
あと、sshの設定も
+ X11Forwarding yes
+ X11UseLocalhost no
ロケール