見出し画像

【再編集】Arch Linuxインストールまとめ

だいぶ前に入れたArch Linuxがだいぶぐちゃぐちゃになってきたので、再インストールしたくなりました。
もっと最小構成でいけるはず、という思いもあるので、復習も兼ねて再編集。
今回の構成は、もともとArch Linuxを入れていたHDDに、新しいArchをインストールする、Arch同士のデュアルブートです。
古いパソコンなので、BIOSのみ対応です。
また、前回は、Archといえばタイル型!ということで、WMはHyprlandにしましたが、今回はXfceにします。
ArchでXfceって渋くない?


事前準備

パーティションの設定

ぼくは、事前準備として、GPartedでやります。
楽します。(コマンド覚える気がないだけ)
MX LinuxのUSBでLive起動して、GPartedを使います。
今回は、こんな構成にします。

変更前:500GB:全部Arch Linux。使用は50GBほど。
変更後:150GB:旧Arch、150GB:新Arch、200GB:データ

パーティションの縮小って時間がかかるのね。
パーティション分割が完了したら、インストールUSBをさして起動。
インストール開始。

変更前はArch Linuxだけ
変更後は3つにわける。sda2が今回インストールするパーティション。
sda3は旧Archと新Archで共用するデータ用のつもり

インストール

キーボードレイアウトの設定

インストール中のキーボード設定なので必要。
これをしないと=とか打てない。

loadkeys jp106

インストールするパーティションをマウント

今回は、マルチブートなので、sda2にインストールします。
一応、lsblkでも再確認。

mount /dev/sda2 /mnt

wifiに接続

下記コマンドで対話モードに入る。

iwctl

無線LANのデバイスを確認(この記事ではwlan0になる)

device list

飛んでいるwifiを確認

station wlan0 get-networks

wifiに接続する

station wlan0 connect SSID(アクセスポイント名)

パスワードを要求されるのでルータに書いてあるものを設定。

Ctrl + D で対話モード終了。
googleなどへのpingで、ネットにつながっていることを確認しておく。

ping google.com

リポジトリの編集

日本のアドレスを設定する。
以下ファイルをvimで開く。

vim /etc/pacman.d/mirrorlist

Japanのところに、いくつかServerが記載してあるので、好きなものを使う。
違いがよくわからんので、一番上に書いてあるやつをコピペで一番上に持ってくる。
行の先頭でVを押して、行末でY。
その後、ファイルの上のほうにカーソル移動して、P、でコピペができる。
ESC押して、:wで上書き保存、:qで、vim終了。
ターミナルの画面に戻る。

パッケージのインストール

最小構成でいきたいので、少しだけ入れる。
パッケージ名をスペースで区切って記載。
個人的には、一気に書くのではなくて、2,3個ずつ書いていくほうが好み。
つづりミスっていると、どのパッケージがミスっているのかわかりにくいので。

pacstrap /mnt base base-devel 

【基本パッケージ】
base
base-devel
linux
linux-firmware
↑ここまででArch Linuxになる。
grub
networkmanager(ネット関連はこれだけでよい)
vim
xfce4-terminal (今回はXfceにするので、Xfceのターミナルをいれておくけど、あとでもよかった)

fstabの生成

システムが起動したときにどのパーティションをどこにマウントするかが記載されている。
なので、マウントしているところを追記する。

genfstab -U /mnt >> /mnt/etc/fstab

rootに切り替え

これをすることで、rootで作業していることになる。

arch-chroot /mnt

コンソールのキーボード設定

コンソールで、日本語キーボードが使えるように設定
Vimで以下ファイルを開いて、

vim /etc/vconsole.conf

以下を記載

KEYMAP=jp106

コンソールでの言語を日本語にすることもできるけど、文字化けするので英語のままがよいかと。

Hostnameの設定

Hostname(コンピュータ名)を決める。
前回、全然わかってなかったな。てかここで決めるんや。
echo <hostname> > /etc/hostname をうつ。
<hostname>は、つけたいコンピュータ名をつける。
具体的にはこんな感じ。
このファイルにかくだけでHostnameになるんやね

echo StableArch > /etc/hostname
Hostnameは、ターミナルの@の後ろにも出るやつです。

hostsを更新

vim /etc/hosts

以下を記載。
<hostname>は、さっき決めたHostname。
上2行は最初から書いてあると思う。

127.0.0.1 localhost
::1 localhost
127.0.1.1 <hostname>.localdomain <hostname>

rootパスワードの設定

これを忘れると、rootですらログインできなくなるので、忘れずにやること。
忘れた場合は、インストールUSBでライブ起動してchrootすれば再設定可能。

passwd

grubインストール、再構築

MBRなので以下。EFIの場合は別コマンド。

grub-install --target=i386-pc /dev/sda
grub-mkconfig -o /boot/grub/grub.cfg

再起動

デスクトップ環境なしのArch Linuxなら、これだけでインストール完了。
電源を落とすので、chrootを抜ける。

exit

マウント解除(丁寧にやってます)

umount -R /mnt

シャットダウン

shutdown now

USBメモリを抜いてPC起動。
ログインできたら、Arch Linuxのインストールは完了。
デスクトップ環境入れてないので、まだCLIです。
ロケールとかも事前に設定してもよいですが、インストール後でもOKなのでインストール後にやる。

インストール後

旧Archがブートメニューにいないw

【直し方】
os-proberインストール

pacman -S os-prober

/etc/default/grubを編集する。

vim /etc/default/grub

下の方に、以下の一文がコメントアウトされていると思うので、コメントアウトを解除する(#を消す)
GRUB_DISABLE_OS_PROBER=false

マウントしているパーティションしか探してくれないらしいので、ブートメニューに追加したいパーティションをマウントしておく。
そして、grub.cfg再生成。

grub-mkconfig -o /boot/grub/grub.cfg

無線LANの場合

以下のコマンドで起動時にwifiに接続するようにします。

systemctl start NetworkManager
systemctl enable NetworkManager

# wifi一覧取得
nmcli device wifi list

# 接続
nmcli device wifi connect SSID --ask

#パスワードを求められるので入力する
#succesfully と表示されたらOK

一般ユーザの作成

一般ユーザを作っておく。

useradd -m username
passwd username

sudoerに一般ユーザを追加

上で作ったユーザを追加する。
これをしないと、sudoが使えない。
前回は、何も知らずvimで開いていましたが、実は危険。
今回はvisudoで編集。
Archは、デフォルトエディタが決まってないみたいなので、エディタにvimを指定して起動する。

EDITOR=vim visudo

以下をrootの下に記載する。

username ALL=(ALL) ALL

これで、一般ユーザでも作業ができるようになったので、rootをログアウトして、一般ユーザでログインする。

デスクトップ環境構築

今回は、Xfce。
以下で一式インストール。

pacman -S xfce4 xfce4-goodies

いろいろ聞かれるけど、デフォルトで。
X11はサーバなので、以下も必要らしい。

pacman -S xorg-server

デフォルトのDEを指定しないと起動しないので、以下を実行。
ていうか、~/.xinitrcに記載。

echo "exec startxfce4" > ~/.xinitrc

startxでデスクトップ表示!
感動だなぁ(笑)

素のXfceってこんな感じなんですね

本当は、ログインマネージャとか入れたほうがよいのですが、毎回、CLIでログイン→startxでデスクトップ起動でいっか、と思うのでこのまま進めます。

ロケールの設定

今回は(も?)、システムのロケールは、英語のままにします。
なので、デスクトップなどは英語のままです。
アプリケーションは、日本語表示できるものだけ日本語表示にします。
これがけっこう苦戦した。
Thuarは諦めました。

/etc/locale.gen を開いて、以下2つのコメントを解除。
en_US.UTF-8 UTF-8
ja_JP.UTF-8 UTF-8

その後、

sudo locale-gen

/etc/locale.conf に、en_US.UTF-8を設定する。

echo "LANG=en_US.UTF-8" | sudo tee /etc/locale.conf

再起動して、echo $LANG の結果が、意図したロケールになっていればOK。

アプリケーションの日本語化

システムのロケールが英語の場合、アプリケーションも基本的には英語。
アプリケーションの設定変更で、日本語化できるものもあれば、アプリケーションで日本語を選択しても変わらないものもある。
nomacsとかGIMPとかは、アプリケーション側で言語を変えればOK。
BraveやGeanyは変わらない。

変えれるものは変えたい。
試行錯誤した結果、以下で対応。
例えば、Braveの場合
#!/bin/sh
Exec=env LANG=ja_JP.UTF-8 brave %U
と書いたシェルを作成。
適当な場所に保存。
自分の場合は、~/.local/share/applications/brave-ja.sh
このシェルを実行すると、日本語で実行します。
タスクバーとかのランチャーも、このシェルを実行するようにしています。

日本語入力

日本語入力自体は、前回同様、Mozcとかを入れればOKなのだけれど、日本語起動したアプリケーションでは、日本語が打てなかった。
.xinitrc に以下を追記する。

export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx

追記というか、exec startxfce4 の前に記入する。
なので、.xinitrcはこんな感じになる。
startxでデスクトップ起動すると、xprofileとかは読み込まれないらしい。

英語のアプリは日本語入力できて日本語アプリは日本語がうてないという謎の現象発生

ビープ音を消す

なぜかビープ音がなるので消す。

echo "blacklist pcspkr" | sudo tee /etc/modprobe.d/nobeep.conf

ゴミ箱がない

Thunarの設定でゴミ箱がないだけかと思っていたら、ゴミ箱は別パッケージだった。
なので一式インストールする。

sudo pacman -S gvfs gvfs-afc gvfs-mtp gvfs-smb

gvfs → 基本機能
gvfs-afc → iPhone / iPad 接続用
gvfs-mtp → Android / MTP デバイス用
gvfs-smb → Samba/Windows ネットワーク用

らしい。

GPTの絵文字

GPTが絵文字を使ってくれるけど、豆腐になってる。

絵文字なんだろうけど四角い豆腐

なので、絵文字フォントをいれる。

sudo pacman -S noto-fonts-emoji
こんな絵文字でした

おわり

タスクバーやらを設定して、これで基本設定は完了かな。
またPython入れてなんか作ろう。
冥鳴ひまりのデスクトップアイコンも復活させやななぁ。
って思ってたら意外と早く復活できた。
必要なパッケージが全部インストールはできてないのでHyprlandほどしゃべらんけど、とりあえず表示とニュースや天気予報、ランダム一言くらいはしゃべるようになった!

Hyprlandみたいに動かせれないので割と邪魔(笑)自分で作ったのに!

いいなと思ったら応援しよう!