2
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

僕のArch linuxのインストール

Posted at

※しばらくは更新していくとおもいます

Arch linuxをインストールした

なので、メモを残します。残念ながら僕はエンジニアではなく、脳波解析オタク兼ゲーマーのパソコン初心者です。
真に受けないように。

方針

  • 鯖立てるわけではない
  • 暗号化とかfirewallはする
  • 処理速度を最大化したいので軽量ソフト重視
  • ゲームはしたいのでsteamは入れる

起動ディスク作り

起動ディスクは作り方は色々。OSによっても違うし割愛。

起動ディスク起動後

早速ですが、黒い画面でキーボードを打つしかないです。
腹をくくるのです。

パーティションを切る

fdiskコマンドでパーティションを区切ります。
partedでもいいけれど、fdiskの方がパーティションの大きさを計算してくれて楽です。

mkfs.ext4コマンドでパーティションをフォーマットします。
bootパーティションは1GB推奨。

Arch linuxのインストール

rootパーティションをマウントします。

mount /dev/[root] /mnt

EFIあるならそれもマウントします。
EFIパーティションはいかにもだいじそうなブートローダーみたいなものが入っているところです。
中を見ればわかる。俺は雰囲気でパソコンをいじっている。

mkdir /mnt/efi
mount /dev/[efi] /mnt/efi

ここではrootパーティションにefiディレクトリがあるという設定にしています。
Linuxをインストールします。

pacstrap -K /mnt base linux linux-firmware

pacstrap -Kは特定のディレクトリにpacmanするという意味なのかな?
必要に応じていろいろ入れます。
僕は下記を入れました。

  • vim neovim
  • python deno nodejs go rust r ruby
  • nvidia nvidia-lts nvidia-prime
  • man-db
  • networkmanager
  • apparmmor

nviやvimは必要です。プリインストールされていません。Ubuntuとは違うんです。
もちろん、emacsでもいいですが。

一番初めの設定をする

fstabを生成します。

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

ここで、実際にインストールする環境に入ります。
入る方法は下記。

arch-chroot /mnt

時間を合わせます。
例えば、日本の場合は Region/City を Asia/Tokyo で置き換えるわけです。

ln -sf /usr/share/zoneinfo/Region/City /etc/localtime
hwclock --systohc

ロケール

/etc/locale.gen を編集してen_US.UTF-8 UTF-8 と他の使用するロケール (例: ja_JP.UTF-8 UTF-8) をアンコメント。
そして次のコマンドを実行してロケールを生成します。

locale-gen

/etc/locale.confを編集します。

LANG=en_US.UTF-8

Internet

pacman -S networkmanager

mdnsを使いたいならこう

pacman -S nss-mdns avahi

Consoleを整える

小さくてLinux consoleが見えないわ

しばらくはlinux consoleのお世話になります。
だから、ここでちょっと見やすくしておきます。
/etc/vconsole.confを編集します。

FONT=ter-132b
KEYMAP=us

FONTがter-132bであればお爺さんでも読める大きさになります。
どうだ、見やすくなっただろう。

Keymapが悪くてemacs指を発症した

僕は右altをshiftにして左の小指を保護しています。
僕はvimmerですが、emacs程ではなくても左手小指を酷使すると痛くなります。

Consoleの場合

KEYMAPを作り込みたかったら、適当に
/usr/share/kbd/keymaps/
の中にあるものをコピーしてvimで編集します。
emacsの事は僕には分かりませんが、圧縮されたファイルでもvimなら直で編集できます。
archlinuxは潔いもので、emacsどころかvimどころかnviすらプリインストールされていません。

Xの場合

xmodmapを導入しましょう。

remove mod1 = Alt_R
add shift = Alt_R
!keycode 108 = Shift_R

bashrc

あと、bashrcにset -o viを加えておけば、emacsキーバインドからvimキーバインドに変わります。
これでemacs指は回避できます。vim指にはなりますが。

ネット関連

Hostname

Hostnameを設定します。

sudo echo hoge > /etc/hostname

Root passwordの設定

下記コマンドで設定します。

passwd

一応他の方法もありますが、僕はそうしました。

ルートディレクトリ暗号化

今回はルートディレクトリを暗号化することにしました。
理由は僕のノーパソを誰かがこっそり開けて中のディスクを勝手に読まれたら嫌だからです。

dm-crypt

dm-cryptを使う事にしました。
dm_cryptカーネルモジュールを有効にする必要があります。

/etc/default/grubの
GRUB_CMDLINE_LINUX_DEFAULTの行に
cryptdevice=/dev/sda1:rootみたいにデバイス名を追加します。

そして同じファイルのGRUB_ENABLE_CRYPTODISKの値をyにします。

LUKSの導入

では、ルートパーティションを作りましょう。

cryptsetup -s 512 luksFormat /dev/sda1

では、パーティションが出来たかどうか確認しましょう。

cryptsetup open /dev/sda1 root

そうすると、/dev/mapper/rootというファイルが出来ます。
これは普通にパーティションとしてマウントできます。

mkinitcpio

ブートの時に暗号化を解除しないといけませんから、解除できるように設定します。
/etc/mkinitcpio.confを編集します。

HOOKS=(base udev autodetect modconf kms keyboard keymap consolefont block encrypt lvm2 filesystems fsck)

のように、blockとfilesystemsの間にencryptとlvm2を挿入しました。
そして、最後にそれを適用します。

mkinitcpio -p linux

EFIパーティション

これは元々ある場合も、無い場合もあります。
FAT32にするべきだそうです。例えばこうです。

mkfs.fat -F 32 /dev/sda4

これは/bootにマウントすることも/efiのような任意の場所に
マウントする事もできます。/bootにマウントする方が簡単です。

Grub

GRUBを使うなら下記のファイルをいじってください。
/etc/default/grub

GRUB_ENABLE_CRYPTODISK=y

GRUBの設定をします。僕の環境では下記のようにしたらうまくいきました。
efiのあたりをイジるので、とても怖かったです。
ここでは/efiにしていますが、例えばbootディレクトリにする事もできます。

grub-mkconfig -o /boot/grub/grub.cfg
grub-install\
    --target=x86_64-efi\
    --efi-directory=/efi\
    --bootloader-id=GRUB\
    --modules="tpm"

After you install os-prober, run it.
This will detect windows partition automatically.

fstabを作る

fstabを自動で作ってくれるコマンドがあります。楽だね!

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

サンドボックス化

例えば、クリックしただけでウィルスに罹ってパソコンが壊れるサイト(あるのか?)に対して
ブラウザからホームディレクトリを触れなくするという事をします。
firejailをインストールします。

sudo firecfg

とすると、サンドボックスにした方が良さようなものについて全てサンドボックスになります。
結構問答無用でなるので、細かい設定は必要です。
サンドボックス外したければ、

/usr/local/bin/

の中にあるコマンドを手動で消去します。
さて、このままだとサンドボックス内のブラウザはIMEとやりとりできないです。
例えばibusを許して欲しい場合は下記をイジることになります。
${HOME}/.config/firejail/firefox.local

dbus-user.talk org.freedesktop.IBus
whitelist ${HOME}/.cache/ibus

このパソコンについて

ところで、このパソコンどんなものなんだっけ?と思ったら、dmidecodeをインストールして下記。

sudo dmidecode -t baseboard

X11

pacman -S xorg xorg-twm xorg-xinit

という感じですが、twmは流石に時代遅れでしょうか。
好きなのを入れると良いです。

日本語入力

僕はibus-skkを使いました。

sudo pacman -S ibus-skk

Steam

pacman -S steam

って思うじゃん?それよりflatpakを使うほうがトラブル少ないのでflatpak使います。

pacman -S flatpak

で、com.valvesoftware.Steamをインストールします。
あとは、好きなゲームを入れればいいです。僕のお勧めはEldenringです。

2
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?