ファイルシステムの変換方法

前提条件

この記事では、Raspbian for FA のセットアップを進める中で、ファイルシステムを ext4 から Btrfs に変換するために必要最低限の手順を紹介します。

Raspbian for FA のセットアップでは、以下の手順でファイルシステムを変換します。

  1. ext4 の上で必要な設定を済ませておく
  2. ファイルシステム変換作業用の作業環境を用意して、ext4 -> btrfs 変換を実行する
  3. btrfs で起動する

作業環境を用意する

ファイルシステムを変換するための作業環境を用意します。
Raspberry Pi で作業環境を作る場合は以下の手順に従ってください。

  1. Raspbian をセットアップする
  2. カーネルのバージョンを Raspbian for FA と同じにする
    Raspbian for FA のセットアップを1回目の再起動まで実行するのが簡単です。
  3. Btrfs 関連プログラムをインストールする
    $ sudo apt install btrfs-tools
  4. ファイルシステム変換対象の microSD カードを読み書きするリーダーライターを接続する

Raspbian 以外の OS で作業環境を用意する場合は、カーネルと btrfs-tools のバージョンを Raspbian に合わせるようにしてください。

ファイルシステム変換手順

  1. 作業環境を起動する
  2. (必要があれば) btrfs モジュールをロードする
    $ sudo modprobe btrfs
  3. 変換対象の microSD を作業環境に接続する
    ※ ここでは /dev/sda として認識されたものとして説明します。
    ※ /dev/sda1 (vfat) と /dev/sda2 (ext4) が認識されるはずです。
  4. 変換対象の microSD がマウントされてしまった場合はマウント解除する
    $ sudo umount /dev/sda1 # vfat (/boot)
    $ sudo umount /dev/sda2 # ext4 (/)
  5. btrfs への変換を実行する
    $ sudo btrfs-convert /dev/sda2
  6. 念のため sync しておく
    $ sync
  7. 変換対象の micsoSD を取り外す

参考資料

Raspbian for FA
https://さきラボ.jp/fapp/raspi/raspbian-for-fa/

Conversion from Ext3
https://btrfs.wiki.kernel.org/index.php/Conversion_from_Ext3

この記事の投稿者

崎 洋佑
崎 洋佑
さきラボの代表取締役。自称プログラマーもどき。
開発でよく使う言語は日本語。
IT技術よりも人が好きな、天然物のエンジニアです。