Arch Linuxのインストールを簡単にまとめているサイトが無かったので、とりあえずインストールメディアから再起動したら、GUIが立ち上がって使える状態になる、手順をまとめてみました。
ベースはArchWikiのインストールガイドですが、省ける手順は省き、まとめられる手順はまとめました。
必要なモノ
- Arch Linuxをインストールするもの (物理マシン・仮想マシン どちらでも可)
- 空のストレージ
- DHCPでIPが降ってくる有線LAN (物理マシンの場合)
- 自分でどうこうできるならどんな環境でも良い
- ただし、無線LANよりインストールが早く終わるのでオススメ
- 何が起きてもめげない精神
まず最初に
とりあえずArch LinuxのインストールisoをUSBやCDに焼いて、EFI で起動しましょう。もしくは、VMを好きなスペックで作り、ブートモードをEFIにして立ち上げましょう。
今からインストールするなら、EFIブートでインストールしたほうが、イケてます。
インストール手順
インストールメディアが起動して、zsh
が立ち上がり、root
でプロンプトに入れたら、作業開始です。
キー配列が起動時点ではUSになっているので、日本語にするには
loadkeys jp106
と入力しましょう
起動した段階でDHCPで勝手にネットに繋がっていると思いますが、とりあえずの確認でどこかにping
を打ってみましょう。わたしはいつもwww.google.co.jp
に飛ばしています。
インターネッツに疎通ができることを確認したら、インストールを始めて行きます。
1. パーティショニング
まず最初にインストールをするためのスペース作りをします。
既存のパーティション情報は邪魔なので、
dd if=/dev/zero of=/dev/sda count=1 bs=1MiB
とやってパーティション情報を消してしまうことをオススメします。
パーティショニングツールはcgdisk
がオススメです。
cgdisk /dev/sda
起動時にSelect label type
を訊かれるので、gpt
を選択します。
ここで一つポイントなのは、Arch Wikiでは/boot
とESP(EFIシステムパーティション)は一緒にしてしまって構わないと書かれていますが、他のLinuxや、万が一にもないと思いますが、もしWindowsをマルチブートしたいとなどと思ってしまった時に、非常に厄介なことになるので、ESPは別パーティションにした方が幸せになれます。
それ以外は、パーティショニングは個人の好きなようにして良いと思います。私はすべて一つにまとめてしまうので、ESPと/(ルート)
の二つしか切りません。
cgdisk
の使い方は調べて下さい。parted
などのCLIツールよりは難しくないです。
私は以下のように切ります。
デバイス | サイズ | タイプ |
---|---|---|
/dev/sda1 | 100MiB | EFI System |
/dev/sda2 | 15.9GiB(残りすべて) | Linux filesystem |
2. フォーマットとマウント
先ほど作ったパーティションをフォーマットして、マウントします。
ESPパーティションは無条件でFAT32でフォーマットします。
mkfs.vfat -F32 /dev/sda1
rootパーティションはお好みのファイルシステムでフォーマットしましょう。
筆者のオススメはext4
です
mkfs.ext4 /dev/sda2
フォーマットが終わったらマウントします。
ルートになるパーティションからマウントしていきます
mount /dev/sda2 /mnt # ルートパーティションのマウント
mkdir -p /mnt/boot/efi # ESPのマウントポイントを作成
mount /dev/sda1 /mnt/boot/efi # ESPをマウント
3. システムのインストール
システムをpacstrap
で展開していきます。これが一番時間がかかる作業です。(と言っても10分もあれば終わる)
/etc/pacman.d/mirrorlist
をvimなどのテキストエディタで開き、jaistのミラーを一番上に持ってきます。
ここでポイントなのは、ArchWikiではここの段階ではbase
とbase-devel
しか指定していませんが、ここで他のソフトも一緒に指定してインストールすることができます。(よく読めば書いてある)
私はここでGUIデスクトップ環境で必要になるモノをすべてインストールしてしまいます。
因みに私は、ディスプレイマネージャーはlightdm
、デスクトップ環境はcinnamon
を好んで使っていますが、ここは個人の好きなモノにして下さい。(この記事ではlightdmとcinnamonで進めていきます)
まとめて入れるモノ一覧
- 基本システム系
- base
- base-devel
- linux
- linux-firmware
- grub
- intel-ucode (Intel製CPUを使った物理マシンにインストールする場合)
- dosfstools
- efibootmgr
- エディタ
- vim
- シェル補完
- bash-completion
- ネットワーク管理
- networkmanager
- Xorg
- xorg-server
- ディスプレイマネージャー
- lightdm
- lightdm-gtk-greeter
- lightdm-gtk-greeter-settings
- デスクトップ環境 GUI関係
- cinnamon
- cinnamon-translations
- terminator
- adobe-source-han-sans-jp-fonts
- adobe-source-han-serif-jp-fonts
- その他
- git
これらをまとめて、インストールしていきます。
pacstrap /mnt base base-devel linux linux-firmware grub intel-ucode dosfstools efibootmgr vim bash-completion networkmanager xorg-server lightdm lightdm-gtk-greeter lightdm-gtk-greeter-settings cinnamon cinnamon-translations terminator adobe-source-han-sans-jp-fonts adobe-source-han-serif-jp-fonts git
4. システムの設定
fstabの生成
genfstab
コマンドを実行して、fstabを生成します。UUIDを使うのが確実なので、-U
オプションを付けて実行しましょう。
genfstab -U /mnt >> /mnt/etc/fstab
新しいシステムにchroot
arch-chroot /mnt
新しくインストールしたシステムにchroot
をした状態になりました。
地域の設定
タイムゾーンとロケールの設定をしていきます。
タイムゾーン
/usr/share/zoneinfo
にタイムゾーンの設定ファイルのサンプルが転がってるのでそのまま使います。
ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
/etc/adjtime
を生成する必要があるので、次のコマンドを実行します。
hwclock --systohc --utc
ロケールの設定
システム全体のロケールを設定していきます。/etc/locale.gen
を編集します。vim等で開いて、ja_JP.UTF-8 UTF-8
をアンコメントした後に、locale-gen
を実行します。
vim /etc/locale.gen # ja_JP.UTF-8 UTF-8をアンコメント
locale-gen
言語などの設定をするために、/etc/locale.conf
を、キーマップを設定するために/etc/vconsole.conf
を作成します。
echo LANG=ja_JP.UTF-8 > /etc/locale.conf
echo KEYMAP=jp106 > /etc/vconsole.conf
ホスト名の設定
システムにホスト名を設定します。/etc/hosts
と/etc/hostname
を編集していきます。
ホスト名は好きなモノにしましょう。(筆者は担当アイドル名にしたりします)
echo hostname > /etc/hostname
/etc/hosts
の中身(多分 空なので全部書きましょう)
127.0.0.1 localhost
::1 localhost
127.0.1.1 hostname
サービスの有効化
NetworkManagerとlightdmを有効化して、起動時に自動的に立ち上がるようにします。
systemctl enable NetworkManager
systemctl enable lightdm
ユーザの追加・パスワード設定
新システムに一般ユーザの追加と、パスワードを設定していきます。
ついでにsudoers
の設定もしていきます。
まず最初にroot
ユーザーのパスワードを設定していきます。
passwd
対話型でパスワードを設定していきます。
次に一般ユーザの追加をしていきます。sudo
を使えるようにするために、wheel
グループへの追加も同時にします。
useradd -m -G wheel username
次にパスワードを設定していきます。
passwd username
最後にsudoers
にwheel
を追加します。
visudo
として
# %wheel ALL=(ALL) ALL
の頭の#
を削除して保存してください。
イニシャル RAM ディスクの生成
イニシャルRAMディスクの生成をします。
以下のコマンドを実行します。
mkinitcpio -p linux
ブートローダーの設定
最後に、ブートローダーをセットアップしていきます。
ブートローダとしてGRUB
を使います。(systemd-bootより楽)
以下のコマンドを実行していきます。
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id="Arch Linux GRUB" --recheck --debug
grub-mkconfig -o /boot/grub/grub.cfg
これで終了
最後にexit
でchroot環境を終了した後、reboot
コマンドを叩きましょう。
恐らくArchLinuxが起動してきます。
それでは良いArchライフを
謝辞
WAKAME_temp氏に「GPTを使うときのパーティショニングはcfdisk
よりもcgdisk
を使っておいたほうが幸せになれる確率が高いと思いますよ」とコメントをいただきまして、該当箇所を修正いたしました。
コメントありがとうございます。