BH3-FA F2FS化されたSDカードの作成方法

####はじめに
高い耐久性を持つmicroSDとNANDフラッシュメモリ向けに最適化されたF2FS(Flash-Friendly File System)ファイルシステムを採用することにより壊れにくいSDカードを実現することができます。

ビズライト・テクノロジー社製BH3-FAはF2FSでフォーマットされたSDカードを採用しています。

####準備
本作業は16GB以上のmicroSD カードを2枚使用します。
(1枚はF2FS化するため、2枚目はF2FSの変換ツールを動作させます)

####Debian OSをSDカードに書き込む
本作業はWindows PCで行います。事前に、Win32DiskImager 等のイメ－ジファイル書き込み用ソフトウェアをご用意ください。ダウンロードするOSはStretch以上をOSを取得してください。[^1]


●Raspbian Stretch Desktop 2019-04-08 版（約 1.1GB):
http://ftp.jaist.ac.jp/pub/raspberrypi/raspbian/images/raspbian-2019-04-09/2019-04-08-raspbian-stretch.zip
●Raspbian Buster Desktop 最新版 （約 1.2GB):
https://www.raspberrypi.org/software/operating-systems/
●過去の Buster Desktop 版（オフィシャルア－カイブ）
https://downloads.raspberrypi.org/raspios_armhf/images/
●過去の Buster Desktop 版（ア－カイブ 2）
http://ftp.jaist.ac.jp/pub/raspberrypi/raspios_armhf/images/

ダウンロードしたイメージを2枚のSDカードそれぞれに書き込みます。[^1]

[^1]: 変換に支障をきたす恐れがありますので、2枚のSDカードには必ず同じOSバージョンでイメ－ジを使用してください。

### BH3-FA用セットアップツールのインストール
SDカードをBH3-FAに挿入し、下記のコマンドでセットアップツールを取得します。
SDカード2枚とも同じ作業を行います。[^1]

OSがStretchの場合

```
$ cd ~
$ wget http://dl.bizright.jp/bh/bh-fa-tools-stretch-2019-04-08-latest.tgz
$ tar zxvf bh-fa-tools-stretch-2019-04-08-latest.tgz
```

OSがBusterの場合

```
$ cd ~
$ wget http://dl.bizright.jp/bh/bh-fa-tools-buster-latest.tgz
$ tar zxvf bh-fa-tools-buster-latest.tgz
```

起動すると「Welcome to the Raspberry Pi」というメッセージが表示されますので初期設定後、再起動してください。[^2]

[^2]: 初期設定を最後まで行わないとお使いの wifi アクセスポイントが見つからない、本セットアップに関する日本語メッセ－ジが文字化けするなどの不具合が発生する場合があります。 

続けて下記のコマンドを実行し、パッケージ情報の更新します。[^3]

[^3]: エラーが出た場合は、成功するまでコマンドを実行してください。

```
$ cd ~/bh-fa-tools
$ sudo ./raspi-setup-apt.sh 
```

###ファイルシステムをF2FSに変換
下記のコマンドを実行しますが、ここからは2枚のSDカード(A)と(B)で手順が異なります。
SDカード(A)：F2FS化するSDカード
SDカード(B)：F2FS変換に使うツールが入ったSDカード

```
$ cd ~/bh-fa-tools
$ sudo ./raspi-setup-filesystem.sh 
```

・SDカード(A)の場合：
「処理を止めるには Ctrl+C を押してください」と表示されたところで、Enter キーを押してください。処理が継続し、Raspberry Pi の電源が切れます。SDカードを取りだします。

・SDカード(B)の場合：
「処理を止めるには Ctrl + C を押してください」と表示されたところで、Ctrl + C キーを押して処理を停止します。 



SDカード(B)がSDカードスロットに挿入されたまま、F2FS化するSDカードをUSB 接続の SD カードリーダーを使用し、USBポートへ接続します。
起動後下記のコマンドを実行します。

「リム－バブルメディアが挿入されました」と表示された場合は、キャンセルを押してください。また、デスクトップ上に SD カードのアイコンが表示されている場合は、/media/pi/rootfs 以下に自動的にマウントされていますので、下記を実行してマウントを解除します。 

```
$ sudo umount /media/pi/rootfs
$ sudo umount /media/pi/boot
```

 SD カードのマウントが解除されている状態で下記を実行してください。
 （スペ－スや.の入力漏れにご注意ください。） 

```
$ sudo mkdir /mnt/rootfs
$ sudo mount /dev/sda2 /mnt/rootfs
$ cd /mnt/rootfs
$ sudo tar czvf ~/raspi-rootfs.tar.gz . 
```

アーカイブに時間がかかる場合があります。
$が表示されるまで、しばらく待ちます。 

```
$ cd ..
$ sudo umount /mnt/rootfs
$ sudo mkfs.f2fs -f -l rootfs /dev/sda2 
```

上記コマンド入力後に「Info: format successful」と表示されていることを
確認してから下記のコマンドを実行します。

```
$ sudo mount /dev/sda2 /mnt/rootfs
$ cd /mnt/rootfs
$ sudo tar xzvpf ~/raspi-rootfs.tar.gz
```

アーカイブに時間がかかる場合があります。
$が表示されるまで、しばらく待ちます。

```
$ sudo poweroff
```

電源がオフになったらF2FS化されたSDカードをSDカードスロットに挿入します。

|![main_05.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1590352/659c37ad-9d92-3a9c-0945-6898d04f85a6.jpeg)
|:--:|
|【ビズライト・テクノロジー社製BH3-FA】|
BHシリーズは、株式会社ビズライト・テクノロジーが開発・生産する、シングルボードコンピュータの実用化した商品です。BHシリーズではRaspberryPiを産業利用するための対策が施されています。詳しくは、[こちら](http://bh.bizright.co.jp/)をご覧ください。