ブートとパーティション anchor.png

Page Top

ブートモード anchor.png

Page Top

Download Mode anchor.png

VOL DOWN+HOME+POWERを同時に押し続ける。
ずーと押していると,三角の中に工事しているdoroid君が表示されて,「Downloading...」と表示が出てDownload Modeに入れる。
POWERボタンを押し続けると(8s以上),Download Modeから抜けてリブートする。

新しいROMやカスタムROMなんかをインストールするときに使われる。OdinでFlash ROMを書き換える場合も,このモードを使用する。

Page Top

Recovery Mode anchor.png

VOL UP+HOME+POWERを同時に押し続ける。
しばらく押していると画面が消えてロゴが出るんで,POWERを離すと,Recovery Modeに入れる。Recovery Modeから抜けるには,メニューから「reboot system now」を選択する。
Recovery Mode中では,VOL UP・DOWNで選択,HOMEで決定。

adbからだと,

adb reboot recovery 

SC-02Bのterminalからだと,

reboot recovery 

でも,Recoveryモードに入れる。

標準Recoveryの機能としては,

  • reboot
    リブートさせる
  • apply sdcard:update.zip
    sdcard:update.zipを書きこむ
  • wipe data/factory reset
    /dataパーテーションの中身を削除。工場出荷時の設定に復元。
  • wipe cache partition
    cacheパーテーションの中身を削除する。

Flash ROMのバックアップは出来ないんで,カスタムRecoveryであるClockwork recoveryに変更した方が便利になる。

Page Top

パーティション anchor.png

パーティションサイズ説明
bml1256KBプライマリ・ブート・ローダー (boot.bin)
bml2256KBPITファイル(最初の512byteを使用)ROMのパーテション情報
bml36400KB/efs /dev/block/stl3(efs.rfs) IMEIとかの情報
bml41280KBセカンダリ・ブート・ローダー linuxカーネルのロード等(Sbl.bin)
bml51280KBセカンダリ・ブート・ローダー(リカバリ,その他)
bml61280KBスプラッシュ画像なんかが入っている /mnt/.lfs /dev/block/stl6(param.lfs)
bml77680KBLinuxカーネル(zImage=kernel+initramfs)
bml87680KB
bml9293376KB/system /dev/block/stl9(factoryfs.rfs) システム
bml10137216KB/dbdata /dev/block/stl10(dbdata.rfs) パーソナルデータ
bml1135840KB/cache /dev/block/stl11(cache.rfs)アプリ・キャシュ
bml1216384KB(modem.bin) 電話用CPUファームウェア

SC-02B(Galaxy S)では,cacheパーテーションなんかに内蔵Strage(NAND Memory)を使っているんだけど,ファイルシステムとしてはSamsung独自のRFSっていうのを使っているようだ。FATの拡張のようだが,どうもパフォーマンスが良くないのか,たまに端末の反応がなくなることがある。EXT4に変更すると,パフォーマンスが上がるみたいだ。

Page Top

FlashROMのパーテーションのバックアップ anchor.png

adbからかSC-02Bのterminal等を使って,以下のコマンドでバックアップする

# cd /sdcard/flashbackup
# dd if=/dev/block/bml1 of=boot.bin
# dd if=/dev/block/bml2 of=sc02bomkf2.pit
# dd if=/dev/block/bml4 of=sbl.bin
# dd if=/dev/block/bml5 of=recovery
# dd if=/dev/block/stl6 of=param.lfs
# dd if=/dev/block/bml7 of=zImage
# dd if=/dev/block/stl9 of=factoryfs.rfs
# dd if=/dev/block/stl10 of=dbdata.rfs
# dd if=/dev/block/stl11 of=cache.rfs
# dd if=/dev/block/bml12 of=modem.bin

PCにコピーする

> adb pull /sdcard/flashbackup/ .

バックアップしたファイルを使って,odin3で書き換えができるようにファイルを作成しておく。

> tar --format=ustar -cf SC02BOMKF2.tar zImage param.lfs dbdata.rfs factoryfs.rfs cache.rfs
> md5sum -t SC02BOMKF2.tar >> SC02BOMKF2.tar
> mv SC02BOMKF2.tar SC02BOMKF2.tar.md5
>
> tar --format=ustar -cf MODEM_SC02BOMKF2.tar modem.bin
> md5sum -t MODEM_SC02BOMKF2.tar >> MODEM_SC02BOMKF2.tar
> mv MODEM_SC02BOMKF2.tar MODEM_SC02BOMKF2.tar.md5
Page Top

PCでバックアップしたイメージをマウント anchor.png

バックアップしたイメージをマウントして内容を確認できる。

mount -o loop,rw factoryfs.rfs /mnt/backupimage/
Page Top

ROMのハードウェア anchor.png

SC-02Bには,512MBのNAND(OneNAND)Flash Memoryと16GBのeMMC*1が搭載されている。
各ROMのパーテーション情報。

512MB ROM
300MB/systemrfs
100MB/dbdatarfs
30MB/cacherfs
16GB eMMC ROM
1.8GB/datarfs
14GB/sdcardfat32
Page Top

eMMCのバックアップ anchor.png

  • /sdcardのバックアップ
    端末上で,
    # cd /sdcard
    # tar cfz /sdcard/external_sd/internal_sd.tar.gz ./ --exclude "external_sd"
    で,MicroSDにinternel_sd.tar.gzのファイルにバックアップをする。
  • /dataのバックアップ
    同様に端末上で,
    # tar cvfz /sdcard/external_sd/data.tar.gz /data
    で,MicroSDにdata.tar.gzファイルにバックアップする。
Page Top

パーテーションの再設定 anchor.png

なにげにfdiskをしてみたら,内蔵MMCのパーテーションが

/dev/block/mmcblk0p1 5 1672704 13381600 83 Linux
Partition 1 does not end on cylinder boundary
/dev/block/mmcblk0p2 1672705 1918464 1966080 83 Linux
Partition 2 does not end on cylinder boundary
/dev/block/mmcblk0p3 1918465 1944064 204800 83 Linux
Partition 3 does not end on cylinder boundary 

Partition 1 does not end on cylinder boundaryっていう警告を出している。たぶん動作に問題はないと思うが,多少パフォーマンスが落ちるのかも。なんとなく気持ちが悪いんで修正してみた。

adb shellして,fdiskを使って以下のようにパーテーションを再設定する。

# fdisk /dev/block/mmcblk0

以下のようになるように,全部のパーテションを削除し,全く同じStartとEndにして再度書きこむ。

    Device Boot        Start     End   Blocks Id System
/dev/block/mmcblk0p1       5 1672704 13381600 83 Linux
/dev/block/mmcblk0p2 1672705 1918464  1966080 83 Linux
/dev/block/mmcblk0p3 1918465 1944064   204800 83 Linux

全く同じ位置・サイズにすると中のデータは破壊されないようだ。


*1 懐かしいメモリ。まあ,SDと同じです。

新しくコメントをつける

題名
ゲスト名
投稿本文
より詳細なコメント入力フォームへ

トップ   凍結 差分 バックアップ 複製 名前変更 リロード   ページ新規作成 全ページ一覧 単語検索 最新ページの一覧   ヘルプ   最新ページのRSS 1.0 最新ページのRSS 2.0 最新ページのRSS Atom
Counter: 691, today: 1, yesterday: 0
最終更新: 2020-12-26 (土) 16:07:38 (JST) (1210d) by yuji