メインコンテンツへスキップ

AndroidスマホのpostmarketOSパーティションをPCへバックアップする

·
カテゴリー スマートフォン 真のLinuxスマホ
タグ PostmarketOS Android
目次

Backup postmarketOS partitions of Android phone.

postmarketOSシステムパーティションのデータをバックアップする方法について話します。

postmarketOSにはrsyncやTimeshiftなど、バックアップツールがいくつもあります。システムを以前の状態へ戻せます。Linuxの権限はAndroidより完全なので、理論上はどのディレクトリでもバックアップできます。さらにスマホがLinuxメインラインカーネルをサポートしているなら、BTRFSのスナップショットも活用できます。

ただし、この記事で扱うのは「全機バックアップ」の方法です。スマホのデータを1対1でバックアップし、ワンクリックで以前の状態へ戻せるようにしたいのです。

1. postmarketOSとAndroidパーティション
#

PinePhoneにpostmarketOSをインストールする場合、Tow-BootでPinePhoneを1つのディスクのようにできます。そうするとPCへ挿した後、ddコマンドでシステムイメージ全体を抽出し、システム全体をバックアップできます。

しかし、postmarketOSデバイスの多くはAndroidスマホから改造されたものです。パーティションテーブルはAndroid由来です。そのため、Androidの方法でバックアップする必要があります。

Android 9以前のデバイスではA/Bパーティションがよく使われ、Android 10以降のデバイスでは多くの場合、動的パーティションが使われます。デバイスごとに違います。Xiaomi Poco F1を例にすると、postmarketOSはfasboot経由でbootuserdataパーティションへ書き込まれ、他のパーティションはAndroidの元の状態を保ちます。したがって、FastbootとRecoveryは引き続き使えます。

この場合、理論上はAndroid Recovery画面でADBコマンドを使い、この2つのパーティション全体のイメージファイルを抽出できます。

全機バックアップなので、使用容量は簡単にスマホ本体の容量を超えます。抽出したイメージファイルは、より大きいSDカードかPCへ置く必要があります。USB 3以上の速度のポートで転送することをおすすめします。

2. postmarketOSパーティションをバックアップ
#

Xiaomi純正のRecoveryにはADB機能がないため、私はLineageOSのrecoveryを使います。TWRPでバックアップしてもよいですが、TWRPはすべてのスマホにあるわけではありません。

  1. 再起動してスマホをFastbootモードに入れます

  2. LineageOSサイトからRecoveryをダウンロードして書き込みます

  3. 再起動してLineageOS Recoveryに入ります

fastboot reboot recovery
  1. Advancedメニューをタップし、ADB機能を有効化します

  2. スマホをPCへ接続します。

  3. パーティションをPCへ抽出します

adb pull /dev/block/bootdevice/by-name/userdata userdata.img

adb pull /dev/block/bootdevice/by-name/boot boot.img
  1. これで2つのimgファイルが得られます。

3. postmarketOSパーティションを復元
#

復元効果を実測します:

  1. 再起動してpostmarketOSに入ります

  2. いくつかファイルを削除します

  3. imgを再度書き込みます。今回はfastbootで書き込みます

fastboot flash boot boot.img

fastboot flash userdata userdata.img
  1. 再起動後、理屈では以前の状態に戻るはずです。

スマホのシステムをAndroidへ戻した後でも、この方法でpostmarketOSのデータを復元できるのか、と聞きたくなるかもしれません。かなり危険です。パーティションテーブルが壊れる可能性があります。

参考資料
#

関連記事


最後までお読みいただきありがとうございます。本サイトでは公開コメント欄を設けていません。私はソーシャルな反応やアクセス数を追い求めるためではなく、自分の考えを誠実に探求するために文章を書いています。記事を丁寧にお読みいただいたうえで、ご感想やご意見をお寄せいただければ幸いです。誤字・誤り・技術的な問題などを見つけた場合、またはフィードバックを共有したい場合は、Aboutページに記載しているメールアドレスまでお気軽にご連絡ください。