※ MicroSD カードから立ち上げる事を想定しています。
※ USB/NVMe においても考え方は基本的に同じですが、config.txt や cmdline.txt 、fstab の設定を変更する必要があります(ここでは、それは説明しません)
※ ファイアウォールの設定の説明はしていません
※ 下記のサイトを参考にしています
https://kiljan.org/2023/11/24/arch-linux-arm-on-a-raspberry-pi-5-model-b/
※ 作業環境:Windows( VitrualBox + Extension Pack + Manjaro )
◆ MicroSD カードを挿入し、 Manjaro に認識させる。
・仮想環境の Manjaro を起動
・VirtualBox のメニューから デバイス → USB → 該当のカードリーダーを選択
◆ Manjaro アイコン → ターミナルエミュレータを立ち上げて下記のコマンドを実行
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 8G 0 disk
┗━sda1 8:1 0 8G 0 part /
sdb 8:16 1 16G 0 disk
┗━sdb1 8:17 1 16G 0 part
sr0 11:0 1 1024M 0 rom
この中で sdb が今回は MicroSDカード になります(環境によって異なります)
◆ MicroSD カードに ArchLinuxARM をインストールします
※以下のコマンドをひたすら実行して行きます
※全ての作業は root で行います
※コマンドを実行する上で以下のパッケージのインストールが必要です
libarchive-tools gdisk f2fs-tools base base-devel devtools dosfstools ntfs-3g
$ su
passwd:
# pacman -Syu
# pacman -S libarchive-tools gdisk f2fs-tools base base-devel devtools dosfstools ntfs-3g
※既に全てインストールされているなら必要ありません
# mkdir -p /tmp/pi
# cd /tmp/pi
# curl -JLO http://os.archlinuxarm.org/os/ArchLinuxARM-rpi-aarch64-latest.tar.gz
# gdisk /dev/sdb
※ sdb の部分は環境によって異なります
command:o で y と答えて消す
Command:n
Partition number : 1
First sector : ENTER
Last sector : 512MiB
Current type is 8300 ~ Hex code or GUID : EF00
Command : n
Partition number : 2
First sector : ENTER
Last sector : ENTER
Current type is 8300 ~ Hex code or GUID : 8300
Command : w で y と答えて保存終了する
# mkfs.vfat -F 32 /dev/sdb1
# mkfs.ext4 -E lazy_itable_init=0,lazy_journal_init=0 -F /dev/sdb2
# mkdir -p /mnt/sd
# mount /dev/sdb2 /mnt/sd
# mkdir -p /mnt/sd/boot
# mount /dev/sdb1 /mnt/sd/boot
# sudo bsdtar -xpf /tmp/pi/ArchLinuxARM-rpi-aarch64-latest.tar.gz -C /mnt/sd
# sudo rm -rf /mnt/sd/boot/*
# sudo mkdir -p /tmp/pi/linux-rpi
# pushd /tmp/pi/linux-rpi
# sudo curl -JLO http://mirror.archlinuxarm.org/aarch64/core/linux-rpi-6.12.6-1-aarch64.pkg.tar.xz
※ http://mirror.archlinuxarm.org/aarch64/core/ にアクセスして最新バージョンを確認してください。これを書いている時点での最新バージョンは 6.12.6-1 です。
# tar xf *
# cp -rf boot/* /mnt/sd/boot/
# popd
# sync
# umount /dev/sdb1
# umount /dev/sdb2
# shutdown -h now
◆ インストールした MicroSD カードをラズパイに挿入して起動
ユーザー名:alarm パスワード:alarm
1.ラズパイから直接ログインして作業する場合
login:root
passwd:root
2.Windows のターミナルから SSH でアクセスする場合(有線LAN接続)
※書式は ssh ユーザー名@ホスト名.local
> ssh alarm@alarm.local
$ su
passwd:root
#
◆ ミラーリスト
# nano /etc/pacman.d/mirrorlist
※ Japanのサーバを一番上に持って来て、サーバーのアドレスの前に # があれば消す
nano における 検索Ctrl+w 上書保存Ctrl+o 終了Ctrl+x 切取Ctrl+k 張付Ctrl+u
◆ Keyring の初期化と、アップデート
# pacman-key --init
# pacman-key --populate archlinuxarm
# pacman -Syu
※ MicroSD カードをメインとして使う場合、必ず下記の処理をして下さい
◆ ルートパスワードの変更
# passwd root
New password:
Retype new password:
◆ ホスト名の変更 ※ホスト名を変更すれば、当然 SSH 接続時に入力する内容も変更になります
# nano /etc/hostname
※ alarl を消して、好きなホスト名に
# nano /etc/hosts
※ 下記の習って、ホスト名を変更します
127.0.0.1 localhost
::1 localhost
127.0.1.1 新ホスト名.localdomain 新ホスト名
◆ 新しいユーザーの作成 ※ホスト名の変更同様、 SSH 接続時に入力する内容が変わります
# useradd -m -s /bin/bash 新ユーザー名
New password:
Retype new password:
◆ 既存の alarm ユーザーを削除
# userdel -r alarm
◆ 作成したユーザーに sudo 権限を付与
# EDITOR=nano visudo
※ 一番下まで移動して、以下の文面を追記して保存します
新ユーザー名 ALL=(ALL) ALL
◆ sudo 権限付与の確認
# exit
xxxx login:新ユーザー名
Password:
$ sudo pacman -Syu
初回はごにょごにゅと表示されますが気にせずパスワードを入力
[sudo] password for 新ユーザー名 :
※ この処理でエラーが起きなければ sudo 権限付与は成功してます
これでラズパイで起動させる基本的な CUI 環境の構築は終わりです