Raspberry PiをLinuxベースで使用する際は間違いなくLaspbianがメインストリームであるが、いかんせんサイズが大きくて「組み込み用途」としてはもっとコンパクトなものが欲しくなることもある。Arch Linuxというコンパクトなディストリビューションが提供されているのだが、現在はRaspberry Piの公式ページからはダウンロードできなくなっているので、紹介を兼ねてインストール方法を説明する。
情報源
Raspberry Piの公式ページからダウンロードできなくなった経緯はこの辺から伺える。Arch Linux ARMのメンテナーから見れば、Raspberry Piは「プラットフォームの1つ」に過ぎないので、まぁそんなものか、と。
配布アーカイブは、bsdtarによってアーカイブされたものなので、解くためにはbsdtar互換のツールが必要。MaxOS Xにはデフォルトで入っているが、主要なLinuxディストリビューションでは追加でインストールが必要。(Windowsについては調べていない)。
Raspberry Pi用のSDカードを作成する
まずRaspberry Piで使用するSDカードを作成する。次のように2つのパーティションを作成する。
次に、フォーマットしたSDカードを、親子関係に注意しながらマウントする。仮にマウントポイントを/mnt、SDカードが/dev/sdcだとすると、Linuxでは以下の手順でマウントできる。Mac OS Xの場合は、diskutil unmountDisk コマンドで、各パーティションをアンマウントしておく(SDカードボリュームをEjectしてしまってはいけない)。
# mount -t ext4 /dev/sdc2 /mnt (第2パーティションを/mntにマウント) # mkdir /mnt/boot (/bootディレクトリを作成する) # mount -t vfat /dev/sdc1 /mnt/boot
最後に、ダウンロードしたイメージファイルをSDカードに書き込む。-pオプションは、ファイルの所有者やパーミッションを「そのまま」回復することを指定するもの。-Cオプションは、展開先のディレクトリを指定するものである。
# bsdtar -xpf ArchLinuxARM-rpi-latest.tar.gz -C /mnt
各パーティションをアンマウントして、SDカードを取り出せばできあがり。rootの初期パスワードはrootになっている。
初期設定など
まず最初に、時計が狂っていると何かと面倒なので、その設定だけはしておこう。(日本で使うのであれば)以下のコマンドで、タイムゾーンをAsia/Tokyoにセットし、時計を合わせておく。(参考にしたサイト)
# timedatectl set-timezone Asia/Tokyo # timedatectl set-time "2014-10-29 18:55:00" ←正しい時刻(ローカル)を指定する # timedatectl status Local time: Wed 2014-10-29 18:13:59 JST Universal time: Wed 2014-10-29 09:13:59 UTC RTC time: n/a Time zone: Asia/Tokyo (JST, +0900) NTP enabled: no NTP synchronized: no RTC in local TZ: no DST active: n/a
次に、OSを最新の状態にアップデートすると共に、パッケージを追加するための準備を行う。Arch Linuxは、独自のパッケージマネージャを使用している。Arch LinuxのWikiは日本語情報が充実しているので、以下のページなどを参考にして、必要なパッケージを導入する。
とりあえず、最初に行うのは、以下のコマンドを実行して、インストールされたパッケージを最新の状態に更新すること。ARM版のリポジトリのミラーは少ない上に国内には無いので、ミラーサイトの調整は必要なさそうだ。
# pacman -Syu
インストール直後の初期状態では、見事なほどに最小限のパッケージしか入っていないので、必要なパッケージを順次入れていくことになる。