#author("2022-07-27T20:47:55+09:00","","")
*Arch Linux メモ - Install [#r0a1545d]

はい、インストールのメモです。基本的なことしかかいてないし、下手するとぐぐったほうが最適解あるかもね。
-2021年3月更新の古い情報のため、いったん避難。


** EFI-Boot、GPTパーティション 前提 [#xb73f9b8]

仮想PCの場合、VirtualBoxなら「システム」-「EFIを有効化」、VMware系ならvmxファイルに firmware="efi" なおまじない追加が必要です。

※2021/03/20時点で、個人的にはVBOX+EFIでのインストール後のブートに失敗しています。

パーティションはGPTで確保します。ベーシックパーティション (MBR)ではないので注意。

いずれも、参考サイトがEFI/GPT前提にしてるところが多いためで、BIOS/MBR構成の場合は読み替えが必要です。

というわけで [[MBR版もメモった>Tips/Lin/Arch/InstMBR]]

** とりあえず EFI でISOイメージブート [#adc8629a]
ArchLinuxの公式wiki経由で最新のISOをぶんどってきます。リンク切れしてることもままあるので、日付の部分をディレクトリ上部にさかのぼってから最新の年月の01日のやつとってくるといいです。

 root@archiso ~ # _

こんなかんじのプロンプトがでてきたらスタートです。え、インストーラは? とおもうかもですが、Arch の場合、Ubuntu / CentOS 等でおなじみのGUIなインストーラはないみたいです。

** キーボードと日本時間な設定 [#b545de17]

 # loadkeys jp106
 (日本語キー設定)
 # timedatectl set-ntp true
 (NTP同期スタート)
 # timedatectl set-timezone Asia/Tokyo
 (EFI/BIOS時刻を日本時間準拠に)
 # timedatectl status
 (日本時間設定とNTP同期ONの確認)

** パーティション確保 [#k9aaeae3]

-ブートパーティション   (FAT32) 512MB
-システムパーティション (ext4)  64GB
-スワップパーティション (swap)  4GB

仮にこういう構成を考えます。実機にていれる場合はSSD/HDDの内容を確認したうえでフレキシブルに考えたほうがいいかも。このwikiメモでは仮想PC (HDDは80GB前後)で記録しているのでこんなふうになってます。

 # fdisk -l

パーティションリストを表示 (-l は L の小文字)  /dev/sda とかでてるやつをえらぶ。

 # fdisk /dev/sda
 Command (m for help) : g
 (GPTでパーティション作る。dosシグネチャ消すよとか赤字警告でるけど w で書いて一度抜けて再度入るとOK)
 Created a new GPT Disklabel (GUID: XXXXXXX)
 Command (m for help) : p
 Disklabel type: gpt
 
 Command (m for help) : n
 新規パーティション作成 パーティションナンバー1~128の入力を促されるが、1=BOOT 2=/ 3=swapでいきます。
 ファーストセクタ2048、ラストセクタ +512M。
 
 Command (m for help) : n
 新規作成その2。ファーストセクタは既定値、ラストセクタは+64G
 
 Command (m for help) : n
 新規作成その3。ファーストセクタは既定値、ラストセクタは+4G
 
 Command (m for help) : p
 一覧表示。全部Linu filesystemになってて大変なので書き換える。
 
 Command (m for help) : t
 1 指定
 エイリアスは L でリストだして1 EFI System が適当とわかるので 1
 
 Command (m for help) : t
 3 指定
 19 Linux swap を指定
 
 Command (m for help) : p
 512M EFI System
  64G Linux filesystem
   4G Linux swap

以上おわったら w でfdisk書き込んで抜ける。

**パーティションの初期化とマウント [#k5151cc9]

 # mkfs.vfat -F32 /dev/sda1
 ブートパーティションは FAT32。
 # mkfs.ext4 /dev/sda2
 sda2 は Linux ジャーナリングファイルシステム。
 # mkswap /dev/sda3
 # swapon /dev/sda3
 スワップ作ってつかいはじめる。
 
 # mount /dev/sda2 /mnt
 # mkdir /mnt/boot
 # mount /dev/sda1 /mnt/boot
 # mount | grep /mnt
 これでマウントは完了。
 # df

** 基本システムのインストール without ブート構成 [#t52ca891]

-/etc/pacman.d/mirrorlist
--このファイルは reflector | grep .jp コマンドで日本鯖をだせたりもするので、その日本鯖をどうにかしてファイル先頭にもってきたい。(.pl のドメインはひっかかりますがスルーでいいかと)

-# pacstrap /mnt base linux linux-firmware
--このコマンドで mnt 以下に基本パッケがはいります。
--パッケージの意味
+++base  Archの基本パッケージ
+++linux Linux コア部分、ブート構成用
+++linux-firmware 一般的なハードウェア関連

**fstab 自動生成 [#h5a86a11]
再起動後のパーティション構成を保存。

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

**ブート環境の登録など [#m5b9fafc]

 # arch-chroot /mnt
 ルートが /mnt になる
 # pacman -S  grub efibootmgr
 ブート関連の基本導入

-GRUB 登録 
 # grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=boot
 # grub-mkconfig -o /boot/grub/grub.cfg

**root パスワードの登録 [#i5b3f227]

 # passwd

これでパスワード(root)を登録。そうしないと締め出されます。

トップ   差分 履歴 リロード   一覧 検索 最終更新   ヘルプ   最終更新のRSS