■
ArchLinuxをBeagleBoneBlackへインストール
目的
今回はBeagleBoneBlackについてです。 BeagleBoneBlackもRaspberryPi同様小さなマイコンボードですが、Debianの派生OSをGUIで動かせてしまうほどの力を持っています。 今回は、そのBeagleBoneBlackへ軽量でパワフルなArchLinuxをインストールしたいと思います。
方法
では、ここからはBeagleBoneBlackのセットアップです。
準備
まずは下記のものを用意してください
- BeagleBoneBlack (Rev C)
- マイクロSDカード
- LANケーブル
- MiniUSB-B to USB-A ケーブル
- マイクロSDカードへ書き込みができるLinuxマシン(マイクロSDアダプターの使用も可)
(1) BeagleBoneBlack には種類が複数ありますが、現在最新のRev Cを使用します。
(2) BeagleBoneBlackはRaspberryPi B+などと同様にマイクロSDカードを使用します。 私は、TOSHIBAの8Gを用意しました。 SDカードのデータはすべて消えますのでバックアップはしておいてください。
内部ストレージもありますが、インストールにはSDカードを使用しないとできません。 内部ストレージの方が早いので、SDで起動した後に内部ストレージへインストールをお勧めします。
(3) BeagleBoneBlackをネットワークに接続するためにLANケーブルを使用します。有線でないと設定できません。
(4) BeagleBoneBlackはMiniBで電源供給を行います。 RaspberryPiと異なり、設定をするとこのポートを使って(ネットワークケーブルを使用せずに)パソコンからログインできるようになります。
SDカードの準備
ここからは作業用Linuxマシンでの操作になります。
まずは、マイクロSDカードをパソコンへ接続してください。 接続したら、lsblkコマンドでマイクロSDカードが認識されていることを確認してください。
$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 119.2G 0 disk └─sda1 8:1 0 119.2G 0 part / sdb 8:16 0 119.2G 0 disk └─sdb1 8:17 0 119.2G 0 part sdc 8:32 1 7.4G 0 disk ├─sdc1 8:33 1 64M 0 part └─sdc2 8:34 1 7.4G 0 part sr0 11:0 1 1024M 0 rom
私の環境では上記結果のようになりました。 SDカードはsdcです。 この時、sdcは既に2つにパーティションが区切られていたため、sdc1とsdc2というパーティションができています。(Typeがpart)しかし、このあと重要になるのはsdcというデバイス名(Typeがdisk)です。
このとき、デバイス名を間違えると、パソコンのハードディスクに書き込んでしまいます。 OSが起動しなくなってしまうかもしれません、念入りにチェックしてください。
パーティション分け
SDカードにルートパーティションを作成します。
fdiskで切り分けていきます。
"devicename"の部分は先程lsblkで調べたデバイス名を使用してください。 私の場合はsdcです。
$ sudo fdisk /dev/devicename
fdiskが起動したら、まずはデバイスのパーティションを全て削除します。 oを入力してください。
Command (m for help): o
これでパーティションが初期されました。
次に、ブートパーティションを作成します。 nを入力してください。
Command (m for help): n
すると、作成するパーティションタイプを選択するよう言われます。 primaryパーティションを使用するため、そのままEnterキーを押すか、pを入力してください。
Select (default p): p
次に、パーティションナンバーを選択するよう言われます。 1を使用するため、そのままEnterキーを押すか、1を入力してください。
Partition number (1-4, default 1): 1
次に、開始セクターを入力するように言われます。 最小の値を使用するため、そのままEnterを押すか、2048を入力してください。 表示される数字はデバイスのサイズによって異なります。
First sector (2048-15564799, default 2048): 2048
次に、終了セクターを入力するよう言われます。 最大の値を使用するため、そのままEnterを押してください。
Last sector, +sectors or +size(K, M, G, T, P} (2048-15564799, default 15564799):
パーティション分けは完了です。 pを入力して、パーティション構成を確認したら、wを入力して変更を適用してください。
Command (m for help): p Command (m for help): w
パーティションのフォーマット
パーティションを作成したので、次にext4にフォーマットします。 私の場合はdevicename1はsdc1になります。 今度は、デバイス名でなくパーティション名を指定するため、最後に1がつくことに注意してください。
$ sudo mkfs.ext4 /dev/devicename1
もしdosfstoolsがインストールされていなかった時はインストールしてください。
# ArchLinuxの場合 $ sudo pacman -Sy dosfstools
SDカードにArchLinuxをインストール
マウント
作業のために適当なディレクトリにマウントします。 今回は~/Document/SDとします。
$ mkdir -p ~/Document/SD $ cd ~/Document
マウントします。
$ sudo mount /dev/devicename1 ~/Document/SD
ダウンロード
ダウンロードしてきます。
$ wget http://archlinuxarm.org/os/ArchLinuxARM-am33x-latest.tar.gz
もしwgetがインストールされていなかった時はインストールしてください。
# ArchLinuxの場合 $ sudo pacman -Sy wget
インストール(展開)
最後に、インストール(SDカードへ展開)をします。 bsdtarを使ってSD/フォルダへ展開してください。
sudo bsdtar -xpf ArchLinuxARM-am33x-latest.tar.gz -C SD
書き込みを完全に完了させるために、syncコマンド(メモリにバッファされたすべてのデータをディスクに書き込む)を実行します。
sync