USBメモリ届いたんでArch Linux環境作った
昨日注文したんだっけか?
ビックカメラのポイントで買ったUSBメモリが今日の午前にもう届いたんで、予定通りArch Linux環境作った。
ビックカメラのポイントで買ったUSBメモリが今日の午前にもう届いたんで、予定通りArch Linux環境作った。
64GBのUSBメモリで第一パーティションがFATじゃないとUSBメモリとして使えないデバイスとかもあると思うんが、
今のメインPCのマザーEFIしかブートできないしEFIブートのシステムにするんだが、EFIパーティションは/bootでFAT32だからEFIパーティションを大きくする。
昨日の時点ではEFIパーティションを32GBでrootfsを32GBにしようと思ってたんだが、
よく考えると64GBのUSBメモリってきっちり32GBのパーティションを2つ作れないし、PCからなら第二パーティションも利用できるから、そこまで大きくするよりもシステム領域を増やしたほうが良いね。
つーわけで、
EFIパーティションを8GBで残りがシステムにした。
システムパーティションは残り全部だが、以前USBシステム作ったときはフラッシュメモリに適したファイルシステムだとかでF2FSにしたが、今回は普通にext4にした。
/bootをマウントしないでpacstrapしてarch-chrootした後に/bootをマウントして作業して間違いなことに気づいてやり直した。
BIOSブートの頃にGRUBがブートセクタに収まらなくなった頃から新規に用意するシステム上で/bootをマウントするもんだと勘違いしてたんだが、
pacstrapでlinuxをインストールすると/bootにカーネルとかinitramfsが置かれる。
その後でchrootして/bootをマウントしたら上書きされちゃうね。
以前からArchのインストールの際に毎度mkinitcpioでinitramfsの作り直しをしないと起動できなかったが、/bootが上書きされちゃってたからだね。
これ気づいて、母艦のシステム作るときも間違ってたんで確認して直したが、母艦のシステムは何故かfstabが空っぽだった。
genfstabがインストール時以外にも使い道があることにも初めて気づいた。
以前USBメモリにインストールしたときはgrub-installに--forceつけなきゃエラーが出たり起動オプションでudevのあとにblockをつけないとrootfsのマウントができなかったりしたが、今回はHDDとかSSDに入れるときと全く同じでインストールして起動できた。
grub-installのときに--removableをつけてるが、このオプションつけるとgrub本体は/boot/EFI/BOOT/BOOTX64.EFIに置かれる。
つけない場合は/boot/EFI/GRUB/grubx64.efiに置かれる。
母艦のBIOSの場合オプション無しで問題ないんだが、前にvirtualboxでEFIシステム作った時にブートローダが/boot/EFI/BOOT/BOOTX64.EFIじゃないと起動できなくてハマった。
レスキューとかのために実機で使うためのシステムをUSBメモリに用意するわけだが、メイン機のvirtualboxで起動できれば環境構築とかアップデートとかの作業がしやすいと思ったんでvirtualboxでも起動できるように--removableをつけた。
インストール後の設定とかはvirtualboxでやろうと思ったんだが、virtualboxのUIが劇的に変わっててよくわかんなかったんで実機で起動した。
そしたらよくやるミスだが、rootパスワード設定してなかったからログインできなくて母艦に戻った。
で、rootパスワード設定したあとでvirtualboxでやってみたが、先月xfceを試すのにvirtualbox上にEFIのArch Linux環境を作ってたが、
EFIのvirtualboxシステムにUSBデバイスをパススルー設定して起動時にESC押すだけでブートローダの選択ができてUSBメモリをブートできた。
USBメモリにxfceとか日本語環境とか入れてxfceを起動したが、結構頻繁にプチフリした。
標準だとsystemdのログが /var/log/journal の下に書き込まれるが、
/etc/systemd/journald.conf
#Storage=auto
のところを
Storage=volatile
にすると /run/log/journal に記録されるようになる。/varはストレージだが/runはメモリなんでログ書き込み時にディスクアクセスが無くなる。
これ設定したら結構改善したと思う。
前回virtualboxにxfce環境作ったときも問題が発生したが、fcitxで日本語入力する際に入力中文字列が候補ウインドウに表示されて入力しようとしてる場所には確定するまで入力されないって問題が発生した。
これはfcitx5の設定で、
アドオン>X input Method フロントエンド>XIMでOn The Spotスタイルを使う
をチェックすると確定前に入力される。
xfce4-terminalのkonsoleより文字が大きくて嫌なんだが、
外観>セル間隔
ってとこを設定すると文字間の余白幅が変わるんでこれだと思うんだが、何故か1.0が初期値で1.0未満には設定できない・・・
Firefoxがクソ遅い。使うの無理なレベルで。
ストレージが遅いのが原因で間違いないと思うが、about:configのbrowser.cache.disk.enableをfalseにしてディスクキャッシュを無効にしてみたが全然ダメ。
about:config開くだけで10分以上かかったんじゃないかくらいのヤバさ。
キャッシュ以外で何を頻繁にアクセスしてるんだか・・・
firefox酷すぎるんでchromiumも試してみたが、chromiumならGoogle検索くらいならなんとかなる感じなんだが、動画サイトとかは無理。
ディスクキャッシュ無効にしたからか、動画サイトはfirefoxの方で一回だけtverの再生ができた。tverにたどり着くまでで大変だが・・・
paroleも再生できるようにはしといた。
まあ、母艦がブートできなくなったときのレスキュー用のシステムだし、動画とかは必要ないか。
復旧作業の際にブラウザで検索はできると助かることもありそうだが、ブラウザはかなり厳しい。
メインPCじゃなくてサブPCでも起動できる。
今のメインPCのマザーEFIしかブートできないしEFIブートのシステムにするんだが、EFIパーティションは/bootでFAT32だからEFIパーティションを大きくする。
昨日の時点ではEFIパーティションを32GBでrootfsを32GBにしようと思ってたんだが、
よく考えると64GBのUSBメモリってきっちり32GBのパーティションを2つ作れないし、PCからなら第二パーティションも利用できるから、そこまで大きくするよりもシステム領域を増やしたほうが良いね。
つーわけで、
EFIパーティションを8GBで残りがシステムにした。
システムパーティションは残り全部だが、以前USBシステム作ったときはフラッシュメモリに適したファイルシステムだとかでF2FSにしたが、今回は普通にext4にした。
$ sudo fdisk /dev/sde
$ sudo mkfs.fat -F 32 /dev/sde1
$ sudo mkfs.ext4 /dev/sde2
$ mkdir mnt
$ sudo mount /dev/sde2 mnt
$ sudo mount --mkdir /dev/sde1 mnt/boot
$ sudo pacstrap mnt base linux linux-firmware grub efibootmgr dhcpcd nano
$ su
# genfstab -U mnt >> mnt/etc/fstab
$ sudo arch-chroot mnt
# grub-install --target=x86_64-efi --efi-directory=/boot --removable
# grub-mkconfig -o /boot/grub/grub.cfg
手順はこんな感じでrootfsをマウントしたあとに/bootをマウントしてからpacstrapなんだが、$ sudo mkfs.fat -F 32 /dev/sde1
$ sudo mkfs.ext4 /dev/sde2
$ mkdir mnt
$ sudo mount /dev/sde2 mnt
$ sudo mount --mkdir /dev/sde1 mnt/boot
$ sudo pacstrap mnt base linux linux-firmware grub efibootmgr dhcpcd nano
$ su
# genfstab -U mnt >> mnt/etc/fstab
$ sudo arch-chroot mnt
# grub-install --target=x86_64-efi --efi-directory=/boot --removable
# grub-mkconfig -o /boot/grub/grub.cfg
/bootをマウントしないでpacstrapしてarch-chrootした後に/bootをマウントして作業して間違いなことに気づいてやり直した。
BIOSブートの頃にGRUBがブートセクタに収まらなくなった頃から新規に用意するシステム上で/bootをマウントするもんだと勘違いしてたんだが、
pacstrapでlinuxをインストールすると/bootにカーネルとかinitramfsが置かれる。
その後でchrootして/bootをマウントしたら上書きされちゃうね。
以前からArchのインストールの際に毎度mkinitcpioでinitramfsの作り直しをしないと起動できなかったが、/bootが上書きされちゃってたからだね。
これ気づいて、母艦のシステム作るときも間違ってたんで確認して直したが、母艦のシステムは何故かfstabが空っぽだった。
genfstabがインストール時以外にも使い道があることにも初めて気づいた。
以前USBメモリにインストールしたときはgrub-installに--forceつけなきゃエラーが出たり起動オプションでudevのあとにblockをつけないとrootfsのマウントができなかったりしたが、今回はHDDとかSSDに入れるときと全く同じでインストールして起動できた。
grub-installのときに--removableをつけてるが、このオプションつけるとgrub本体は/boot/EFI/BOOT/BOOTX64.EFIに置かれる。
つけない場合は/boot/EFI/GRUB/grubx64.efiに置かれる。
母艦のBIOSの場合オプション無しで問題ないんだが、前にvirtualboxでEFIシステム作った時にブートローダが/boot/EFI/BOOT/BOOTX64.EFIじゃないと起動できなくてハマった。
レスキューとかのために実機で使うためのシステムをUSBメモリに用意するわけだが、メイン機のvirtualboxで起動できれば環境構築とかアップデートとかの作業がしやすいと思ったんでvirtualboxでも起動できるように--removableをつけた。
インストール後の設定とかはvirtualboxでやろうと思ったんだが、virtualboxのUIが劇的に変わっててよくわかんなかったんで実機で起動した。
そしたらよくやるミスだが、rootパスワード設定してなかったからログインできなくて母艦に戻った。
で、rootパスワード設定したあとでvirtualboxでやってみたが、先月xfceを試すのにvirtualbox上にEFIのArch Linux環境を作ってたが、
EFIのvirtualboxシステムにUSBデバイスをパススルー設定して起動時にESC押すだけでブートローダの選択ができてUSBメモリをブートできた。
USBメモリにxfceとか日本語環境とか入れてxfceを起動したが、結構頻繁にプチフリした。
標準だとsystemdのログが /var/log/journal の下に書き込まれるが、
/etc/systemd/journald.conf
#Storage=auto
のところを
Storage=volatile
にすると /run/log/journal に記録されるようになる。/varはストレージだが/runはメモリなんでログ書き込み時にディスクアクセスが無くなる。
これ設定したら結構改善したと思う。
前回virtualboxにxfce環境作ったときも問題が発生したが、fcitxで日本語入力する際に入力中文字列が候補ウインドウに表示されて入力しようとしてる場所には確定するまで入力されないって問題が発生した。
これはfcitx5の設定で、
アドオン>X input Method フロントエンド>XIMでOn The Spotスタイルを使う
をチェックすると確定前に入力される。
xfce4-terminalのkonsoleより文字が大きくて嫌なんだが、
外観>セル間隔
ってとこを設定すると文字間の余白幅が変わるんでこれだと思うんだが、何故か1.0が初期値で1.0未満には設定できない・・・
Firefoxがクソ遅い。使うの無理なレベルで。
ストレージが遅いのが原因で間違いないと思うが、about:configのbrowser.cache.disk.enableをfalseにしてディスクキャッシュを無効にしてみたが全然ダメ。
about:config開くだけで10分以上かかったんじゃないかくらいのヤバさ。
キャッシュ以外で何を頻繁にアクセスしてるんだか・・・
firefox酷すぎるんでchromiumも試してみたが、chromiumならGoogle検索くらいならなんとかなる感じなんだが、動画サイトとかは無理。
ディスクキャッシュ無効にしたからか、動画サイトはfirefoxの方で一回だけtverの再生ができた。tverにたどり着くまでで大変だが・・・
paroleも再生できるようにはしといた。
まあ、母艦がブートできなくなったときのレスキュー用のシステムだし、動画とかは必要ないか。
復旧作業の際にブラウザで検索はできると助かることもありそうだが、ブラウザはかなり厳しい。
メインPCじゃなくてサブPCでも起動できる。