ArchLinux ; インストール #2 ディスクのパーティショニング (このページ)
ArchLinux ; インストール #3 インストール時の初期設定
はファイルシステムにext4を使用しています
btrfsファイルシステムにインストールする場合は下記ページに纏めてあります
ArchLinux ; インストール #4 btrfsでのインストール方法
1. Arch Linux をインストールするディスクのパーティショニング
今回はUEFI モード、パーティションテーブルをGPTにするのでコマンドはgdiskを利用する
現在のディスク情報を確認
1 2 3 4 5 |
# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS loop0 7:0 0 788.9M 1 loop /run/archiso/airootfs sr0 11:0 1 1.1G 0 rom /run/archiso/bootmnt nvme0n1 259:0 0 30G 0 disk |
上記の場合、VmwareWorkststion 上で 30 GB の仮想 HDD を作成したので、nvme0n1 の SIZE が 30 GB になっています。NAME 行の nvme0n1 が、ディスク全体を表すデバイス名でこのnvme0n1にパーティショニングを行います
今回はEFIパーティションとArch Linux 用パーティションを作成しswapパーティションは作成しません
以前は、スワップ用にパーティションを一つ作って、それをスワップとして割り当てていましたが、現在は 「スワップファイル」 を使うことができるため、スワップ用のパーティションは作らなくても使用できます。
「スワップファイル」は、スワップ用に任意のサイズのファイルを一つ作成しておいて、その領域をスワップとして使う方法で、作成・削除・リサイズができます。
GPT の場合
1 2 3 4 5 6 7 8 9 10 |
# gdisk /dev/nvme0n1 GPT fdisk (gdisk) version 1.0.10 Partition table scan: MBR: not present BSD: not present APM: not present GPT: not present Creating new GPT entries in memory. |
・o コマンドで、空のパーティションテーブルを作成
1 2 3 |
Command (? for help): o This option deletes all partitions and creates a new protective MBR. Proceed? (Y/N): Y |
・EFI システムパーティションを作成
n コマンドで、パーティションを追加
1 2 3 4 5 6 7 |
Command (? for help): n Partition number (1-128, default 1): First sector (34-62914526, default = 2048) or {+-}size{KMGTP}: Last sector (2048-62914526, default = 62912511) or {+-}size{KMGTP}: +512M Current type is 8300 (Linux filesystem) Hex code or GUID (L to show codes, Enter = 8300): ef00 Changed type of partition to 'EFI system partition' |
・Arch Linux 用パーティションを作成
n コマンドで、パーティションを追加
1 2 3 4 5 6 7 |
Command (? for help): n Partition number (2-128, default 2): First sector (34-62914526, default = 1050624) or {+-}size{KMGTP}: Last sector (1050624-62914526, default = 62912511) or {+-}size{KMGTP}: Current type is 8300 (Linux filesystem) Hex code or GUID (L to show codes, Enter = 8300): 8300 Changed type of partition to 'Linux filesystem' |
・パーティションテーブルをディスクに書き込み
wコマンドを使用します
1 2 3 4 5 6 7 8 |
Command (? for help): w Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING PARTITIONS!! Do you want to proceed? (Y/N): Y OK; writing new GUID partition table (GPT) to /dev/nvme0n1. The operation has completed successfully. |
2. 各パーティションのフォーマット
・EFI システムパーティションのフォーマット
1 2 |
# mkfs.vfat -F32 /dev/nvme0n1p1 mkfs.fat 4.2 (2021-01-31) |
・Arch Linux 用パーティションのフォーマット
Linux で使えるファイルシステムにはext4 、XFSなどがありますが安定したext4を利用する
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
# mkfs.ext4 /dev/nvme0n1p2 mke2fs 1.47.0 (5-Feb-2023) /dev/nvme0n1 contains a vfat file system Proceed anyway? (y,N) y Creating filesystem with 7864320 4k blocks and 1966080 inodes Filesystem UUID: ae90b5e9-eada-4e19-9ef7-1d03f312384a Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000 Allocating group tables: done Writing inode tables: done Creating journal (32768 blocks): done Writing superblocks and filesystem accounting information: done |
3.Arch Linux をインストール
3.1 ネットに接続
インストールするファイル(パッケージ)は、ネットからダウンロードする必要があるので、まずは、インストールシステム上でネットに接続する必要があります。有線 LAN の場合は、起動時に自動で接続される場合がほとんど
接続確認
1 2 3 4 5 6 7 8 9 10 11 |
# ping -c 4 archlinux.jp PING archlinux.jp (160.16.119.98) 56(84) bytes of data. 64 bytes from tk2-235-27344.vs.sakura.ne.jp (160.16.119.98): icmp_seq=1 ttl=53 time=10.3 ms 64 bytes from tk2-235-27344.vs.sakura.ne.jp (160.16.119.98): icmp_seq=2 ttl=53 time=14.0 ms 64 bytes from tk2-235-27344.vs.sakura.ne.jp (160.16.119.98): icmp_seq=3 ttl=53 time=12.8 ms 64 bytes from tk2-235-27344.vs.sakura.ne.jp (160.16.119.98): icmp_seq=4 ttl=53 time=14.3 ms --- archlinux.jp ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3005ms rtt min/avg/max/mdev = 10.274/12.834/14.327/1.589 ms |
3.2 時刻設定
ネットからパッケージをダウンロードする際、パソコンの時刻が正しくないと、ダウンロードできない場合があるので、ネットから時刻を調整する
1 |
# timedatectl set-ntp true |
3.3 パーティションのマウント
・Arch Linux 用パーティションのマウント
1 |
# mount /dev/nvme0n1p2 /mnt |
・EFI システムパーティションのマウント
EFI システムパーティションに、ブートローダーや Linux カーネルをインストールする/mnt/boot にマウントします
1 2 |
# mkdir /mnt/boot # mount /dev/nvme0n1p1 /mnt/boot |
3.4 リポジトリのサーバーを選択
・reflector コマンドを利用する場合
1 |
# reflector --sort rate --country jp --latest 10 --save /etc/pacman.d/mirrorlist |
・ミラーリストを編集する場合
Pacman Mirrorlist Generator(https://archlinux.org/mirrorlist/)でCountry:Japanのミラーサイトを開くと次の通り
1 2 3 4 5 6 7 8 9 10 11 12 13 |
## Japan #Server = http://mirrors.cat.net/archlinux/$repo/os/$arch #Server = https://mirrors.cat.net/archlinux/$repo/os/$arch #Server = http://jp.mirrors.cicku.me/archlinux/$repo/os/$arch #Server = https://jp.mirrors.cicku.me/archlinux/$repo/os/$arch #Server = http://ftp.tsukuba.wide.ad.jp/Linux/archlinux/$repo/os/$arch #Server = http://ftp.jaist.ac.jp/pub/Linux/ArchLinux/$repo/os/$arch #Server = https://ftp.jaist.ac.jp/pub/Linux/ArchLinux/$repo/os/$arch #Server = http://repo.jing.rocks/archlinux/$repo/os/$arch #Server = https://repo.jing.rocks/archlinux/$repo/os/$arch #Server = http://mirror.nishi.network/archlinux/$repo/os/$arch #Server = https://mirror.nishi.network/archlinux/$repo/os/$arch #Server = https://mirror.saebasol.org/archlinux/$repo/os/$arch |
これらの先頭の#を削除し/etc/pacman.d/mirrorlistの最上位に貼り付ける
3.5 パッケージのインストール
最低限必要なのはbase Linux カーネル、ファームウェア、テキストエディタ (CUI) など
その他はあれば便利なツールで後からでも必要な時にインストールできます
1 |
# pacstrap /mnt base base-devel linux linux-firmware networkmanager vi vim nano openssh dhcpcd netctl wget man-db man-pages |
3.6 fstabの設定
起動時に自動的にマウントするパーティションなどの情報を、/etc/fstab のファイルに記述します。
1 |
# genfstab /mnt >> /mnt/etc/fstab |
fstab ファイルの内容を確認
1 2 3 4 5 6 7 8 9 10 11 |
# vim /mnt/etc/fstab # Static information about the filesystems. # See fstab(5) for details. # <file system> <dir> <type> <options> <dump> <pass> # UUID=6d751983-f27b-4761-b2be-a97e73f46e47 /dev/nvme0n1p2 / ext4 rw,relatime 0 1 # UUID=BC5A-3349 /dev/nvme0n1p1 /boot vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro 0 2 |