デスクトップPCくんでArchLinux入れた
以下作業ログ、Arch LinuxのWikiのインストールをなぞったつもり
パーティション
雑に2つに割る
- /boot
- /
# parted /dev/nvme0e1 (parted) mklable gpt (parted) mkpart ESP fat32 1MiB 513MiB (parted) mkpart primary 513MiB 100% (parted) set 1 esp on
btrfs on LUKS on LVM
mkfs.btrfs
は btrfs-progs
いれないと入らないかも
# pvcreate /dev/nvme0n1p2 # vgcreate main /dev/nvme0n1p2 # lvcreate -l 100%FREE -n root main # cryptsetup luksFormat -c aes-xts-plain -s 512 /dev/mapper/main-root # cryptsetup open /dev/mapper/main-root root # mkfs.btrfs -L root /dev/mapper/root # mount /dev/mapper/root mnt # mkdir /mnt/boot # mkfs.fat -F32 /dev/nvme0n1p1 # mount /dev/nvme0n1p1 /mnt/boot
失敗: M.2さすと無効になるPCI Expressのスロットに無線のカードさしてた
lspciしてもネットワークカードがでなくて、でも同じカードからusb接続してるBluetoothは認識されてて壊れてるわけじゃなさそうで、謎で、マザボの説明書を読んだら、M.2使うと使えなくなるスロットにさしちゃってたのが原因だった
ネットワーク
さし直して気を取り直して
# ip link set wlp6s0 up # vi /etc/wpa_supplicant/wpa_supplicant.conf
かく
ctrl_interface=/run/wpa_supplicant update_config=1
# wpa_supplicant -B -i wlp6s0 -c /etc/wpa_supplicant/wpa_supplicant.conf
して
# wpa_cli
以下wpa_cli
add_network set_network 0 ssid "foo" set_network 0 psk "bar" enable_network 0 save_config
DHCPでアドレス取る
# dhcpcd wlp6s0 # ping archlinux.jp
NTP設定してマウントしたとこにArch Linuxいれる
# timedatectl set-ntp true # vi /etc/pacman.d/mirrorlist # pacstrap /mnt base linux # genfstab -U /mnt >> /mnt/etc/fstab # arch-chroot /mnt # ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime # hwclock --systohc --utc # pacman -S vim # vim /etc/locale.gen # locale-gen # echo LANG=en_US.UTF-8 > /etc/locale.conf # echo KEYMAP=jp106 > /etc/vconsole.conf # vim /etc/hostname
ホスト名、雑にRubyの好きなクラスからつけていってる。今回は「TracePoint」
# vim /etc/hosts
書く
127.0.0.1 localhost ::1 localhost 127.0.0.1 TracePoint.local TracePoint
他いれたやつ
# pacman -S linux-firmware wpa_supplicant iw base-devel lvm2 btrfs-progs
mkinitcpioは
# vim /etc/mkinitcpio.conf
hooksこれでまずやった
HOOKS=(base udev autodetect modconf block lvm2 encrypt filesystems keyboard fsck)
# mkinitcpio -P
パスワード設定とブートローダーのインストール、systemd-boot入れる
# passwd # pacman -S efivars # bootctl --path=boot install
コマンドの説明よみたいのでmanも入れる
# pacman -S man
マイクロコードのアップデートも動かす
# pacman -S amd-ucode
ブートローダーの設定でデフォルトでArchLinux起動するようにする、Windows入れてないので楽。
# vim /boot/loader/loader.conf
こんな感じにした、/をLUKSで暗号化してるのでoptions周りはその設定をしてる
default arch vim /boot/loader/entries/arch.conf title Arch Linux linux /vmlinuz-linux initrd amd-ucode.img initrd initramfs-linux.img options cryptdevice=/dev/mapper/main-root:root root=/dev/mapper/root
dm-cryptが記号入ってるパスワードで解除できないんで日本語キーボードになるようにkeyboardとkeymapをlvm2の前に書く
# vim /etc/mkinitcpio.conf
はい
HOOKS=(base udev autodetect modconf block keyboard keymap lvm2 encrypt filesystems fsck)
かきかえたら mkinitcpio -P
このあと再起動して/からうまく起動できた、けどdhcpcd入ってなくてIP設定がわからなくて困ったけど、手動でIP設定してとりあえずネットワークつながった
とりあえずログインシェル周り設定してユーザー作る
# pacman -S zsh # useradd -m -G wheel -s /bin/zsh sei # passwd sei
sudoできるようにしとく
# pacman -S vi # visodo
%wheel ALL=(ALL) ALL
をコメントアウト
つよつよマシンだから雑にGNOME入れる
# pacman -S gnome
なんかパッケージみつからない云々でエラー、更新しとく(1日でこれなのArchLinuxらしさある)
# pacman -Syu
キーうんぬんのエラーメッセージでるので更新
# pacman -S archlinux-keyring # pacman -S gnome
はいった。ログインマネージャ起動しとく。
# systemctl enable gdm.service # reboot
ネットワークGUIでぽちぽちしたい
pacman -S networkmanager systemctl enable NetworkManager
GUIでSettingsのDetailsのAutomatic Date & Timeにチェック キーボードがjp106になってなさそうなのでSettingsのRegion & LanguageのInpup SourcesでJapanese追加
日本語の文字が見えないので
# pacman -S adobe-source-han-sans-jp-fonts adobe-source-han-serif-jp-fonts
にほんご入力、mozcがいいので公式パケではいるfcitx-mozcにする
# pacman -S fcitx-mozc fcitx-configtool fcitx-im
fcitx-configtoolしてMozcのキーボード追加
~/.pam_environment
に以下追記
GTK_IM_MODULE=fcitx QT_IM_MODULE=fcitx XMODIFIERS=@im=fcitx DefaultIMModule=fcitx
ログインしなおしてもにほんごがきかない。 /etc/locales.confいじってみたりするができん。 なぜ、、、と思って全然わからなくてruby-jpのSlackの#linuxチャンネルで聞いてみたらWaylandだとだめっぽいの教えてもらった、完全に見落としていた。。。X.orgでログインしたらふつうに日本語打てた。
大感謝
https://ruby-jp.slack.com/archives/CN4V0NNP2/p1572670894100000
これ英語版のwikiに書いてないやつだ。。。
Wayland は ~/.xprofile に保管された環境変数を読み込むことができないため、Wayland 上で Fcitx を使うときは /etc/environment で環境変数を設定してください。 https://wiki.archlinux.jp/index.php/Fcitx#GNOME.2FWayland.E4.B8.8A.E3.81.A7.E3.81.AE_Fcitx.E3.81.AE.E5.88.A9.E7.94.A8
ブラウザ、ChromeはAURにしかなさそうなのでFirefox使ってみることにする
# pacman -S fifefox
フォントはnoto-fontsいれる
ここ参考にタイトルバー隠す
こまっていること
環境構築、Debianではmitamaeでenvリポジトリクローンしてきてえいやでできるようにしている(つもり)だけどArchでも同じリポジトリ使ってできるようにするにはそれなりの頑張りが必要そうなので(パッケージ名の違いとかで)、雑にブログを書いて行く運用にしようかな...
つぎやること
- dotfilesを入れる
- コミットに署名できるようにする
- 4TBのHDD入れてgem-codesearch動かす
Slackとかクライアント入れるには結局AUR使うので今のうちyay入れてなれておいたほうがいいかも、という気持ちとSlack入れたら作業はかどらなさそうなので入れなくてよくね、の気持ちがあります。ブラウザで試して疲れたらSlackクライアント入れる感じでいこう。