2011年4月29日金曜日

IDEOSの公式アップデータを展開する方法

IDEOSの公式アップデータを適用すると、システム領域, "/cust", カーネル, リカバリ領域, ベースバンド, AMSSを全て書き換えられてしまいます。
個別に適用したい場合のためにLinux環境限定ですがアップデータを展開方法をご紹介します。
また、system.imgなどを更に展開してファイルを取り出す方法もついでにご紹介します。

初期状態のUbuntuでの環境を想定しています。

展開方法
  1. 作業フォルダを作っておきます。
  2. mkdir IDEOS_extract
  3. 展開したい公式アップデータの"UPDATA.APP"を作業フォルダにコピーします。
  4. 展開したい公式アップデータが"UPDATE.APP"の場合はリネームしておいてください。
  5. 展開に必要なファイル"split_updata.pl"と"crc"をコチラから作業フォルダにダウンロードします。
  6. "crc"に実行権限を与えます。
  7. cd IDEOS_extract
    chmod 700 crc
  8. "split_updata.pl"を実行します。
  9. perl split_updata.pl
作業フォルダ内に"output"フォルダが現れたら成功です。

さて、肝心のアップデータの中身ですが、"system.img"と"recovery.img"と"boot.img"がありますね。
これらはfastbootで個別に焼くことができます。
"/cust"は"unknown_file.6"というファイル名で展開されています。
AMSSとベースバンドのデータもどれかなのでしょうが、わかったところで焼く方法がないのでスルーします。

"system.img"と"unknown_file.6"はそれぞれ"/system"と"/cust"なので実際はファイルの塊です。
これをzipファイルのように更に展開してファイルを取り出してみたいと思います。
これらはyaffsというファイルシステムですのでunyaffsにて展開可能です。
展開方法
  1. 作業フォルダを作っておきます。
  2. mkdir system_output
  3. 展開したい"system.img"を作業フォルダにコピーします。
  4. 展開に必要なファイル"unyaffs"をコチラから作業フォルダにダウンロードします。
  5. "unyaffs"に実行権限を与えます。
  6. cd system_output
    chmod 700 unyaffs
  7. "split_updata.pl"を実行します。
  8. ./unyaffs system.img
たくさんフォルダが出てきたら成功です。
"/cust"を展開したい場合は"system.img"を"unknown_file.6"に読み替えてください。

これで様々な公式アップデータを展開できますね。
まぁ、使用用途としてはカスタムROM適用で無くしてしまった公式のフォントを持って来たり程度でしょうが、一応展開環境があると安心ですね。

3 件のコメント:

  1. すみません、公式アップデータというのはオフィシャルな
    場所からダウンロード出来るのでしょうか?

    返信削除
  2. >>greenBrush様
    日本通信版もHuaweiグローバルサイトにあるらしいのですがリンクが貼られていないため、ミラーサイトの方をご紹介しました。
    私はHuaweiグローバルサイトのどこにあるのかは存じ上げません……。

    返信削除
  3. ありがとうございました。探して見つかったら報告します。

    返信削除