« iPhone 3GにブループランSSで機種変更しました。 | トップページ | iPhone/iPod touchをお風呂で使う »

jailbreak時にrsyncでホームディレクトリを復元する

iPhone Dev TeamのPwnage Tool(Windows向けには、firmware 2.0.2にも対応したQuickPwnも出ている)のおかげで、iPhone 3Gに移行した後も無事にjailbreakできています。やはり、純正AppStoreのアプリだけでは満足できないため、今後もjailbreakは必須になりそうです。

しかしながら、jailbreak環境のファームウェア・アップデート作業後は、必ずホームディレクトリが初期状態に戻ってしまうため、以前の環境を復元するのは面倒です。音楽やカレンダ、アドレスブック、AppStore経由のアプリはiTunesとの再同期で以前の環境を復元できますが、それ以外のホームディレクトリのデータ(~/.bashrcや独自にコピーしたファイル)はiTunesでは復元されないため、別途バックアップ/リストアを行う必要があります。

バックアップ/リストアのツールと言えば、やはりrsyncが柔軟で信頼できる代表的なツールであることから、iPod touch/iPhone用のバックアップスクリプトを作成してみました。

バックアップ先はsshログイン可能なPCあるいはMacを前提とします。また、iPod touch/iPhoneはjailbreak済みであり、Cydiaを使ってOpenSSHとrsyncがインストール済みであるとします。

rsyncコマンドは、バックアップ先とiPod touch/iPhoneのどちらで実行しても構いませんが、ここではiPod touch/iPhone上でrsyncコマンドを実行することにします。以下のスクリプトは、iPod touch/iPhoneのホームディレクトリ/var/mobileをPCあるいはMacの~/Backup/iPhone/mobileにバックアップするためのものです。

#!/bin/sh
# backup.sh
rsync -a -E --delete --progress \
--exclude="mobile/Applications" \
--exclude="mobile/Library" \
--exclude="mobile/Media/iTunes_Control*" \
--exclude="mobile/Media/ApplicationArchives" \
--exclude="mobile/Media/DCIM" \
--exclude="mobile/Media/Downloads" \
--exclude="mobile/Media/Photos" \
--exclude="mobile/Media/Purchases" \
--exclude="mobile/Media/com.apple*" \
/private/var/mobile <user>@<backup-host>:~/Backup/iPhone

基本的に、iTunesで復元可能な~/Applications、~/Library、および~/Media内のApple管理対象ディレクトリはバックアップの対象から外しました。

jailbreak後にリストアする場合は、以下のスクリプトを使用します。安全のためリストア時には--deleteオプションを外しています。

#!/bin/sh
# restore.sh
rsync -a -E --progress \
--exclude="mobile/Applications" \
--exclude="mobile/Library" \
--exclude="mobile/Media/iTunes_Control*" \
--exclude="mobile/Media/ApplicationArchives" \
--exclude="mobile/Media/DCIM" \
--exclude="mobile/Media/Downloads" \
--exclude="mobile/Media/Photos" \
--exclude="mobile/Media/Purchases" \
--exclude="mobile/Media/com.apple*" \
<user>@<backup-host>:~/Backup/iPhone/mobile /private/var

なお、スクリプト中のbackup-hostはバックアップ先PCまたはMacのホスト名(またはIPアドレス)に、userはPCまたはMacのアカウント名に置き換えてください。

|

« iPhone 3GにブループランSSで機種変更しました。 | トップページ | iPhone/iPod touchをお風呂で使う »

iphone」カテゴリの記事

ipod」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/181807/42259098

この記事へのトラックバック一覧です: jailbreak時にrsyncでホームディレクトリを復元する:

« iPhone 3GにブループランSSで機種変更しました。 | トップページ | iPhone/iPod touchをお風呂で使う »