IS11S に CWM(ClockwordMod)入れたお( ^ω^)

2016年8月16日

(旧ブログからの移行記事です)

Xperia acro (IS11S) / android 2.3.4

残念ながら本端末はICSへのアップデートは受けられなさそうです。そこで今更ながらIS11SをRoot化させました(Link2SDというアプリを使いたかったので)。

CWMの入れ方は結構情報があるのですが、IS11Sは対象外とされている方法が多い or 情報が古い(必要なファイルがダウンロードできない等)ということがありまして、初めてやる自分は混乱してしまいました。

そのため、備考録として、CWMをIS11Sに入れる方法を書きます。

What’s CWM?

本当にざっくりと調べた感じですと、バックアップをとった時点まで、携帯を元に戻すことを可能にするツールのようです。「正常だった頃へ戻すためのツール」って感じですね。

あとはカスタムROMをインストールする時なんかにも使えるみたいですが、それってFlashtoolでもできますよね確か。日本仕様のacroだとバックアップ用途以外の恩恵はあんまり受けられなさそうなさそう。

(参考)

日本語だと似たりよったりの記事しか出て来なかったので英語で調べてたんですが、このような説明がありました。

ClockworkMod recovery allows you to perform several advanced recovery, restoration, installation and maintenance operations on your Android device that aren’t possible with the stock recovery, and is one of the most common ways used to gain root access, back up device data, install a custom ROMs, kernels, themes, mods and more.

What Is ClockworkMod Recovery And How To Use It On Android [Complete Guide]

より詳細なこともサイトに書かれているんですが、要は、zipの形式のROMなんかをインストールできるっぽいです。とりあえずフツーの人には、バックアップの方法が重要そうですね。あと、update.zipとかいうモノを自分で作れると便利そうですね。あとで調べてみようかな。

CWM の 入れ方

基本的に

  1. CWMを携帯に入れ
  2. CWMで携帯のバックアップを取る
  3. (何か起きた時、CWMで携帯の状態をもとに戻す)

という感じになるのですが、2,3の手順はIS11S以外の情報でも流用できるため(ネットを探せば、いくらでも出てくる為)割愛します。

以降書いているのは1のところだけです。

方法1:xda-developersで配布されてるCWMを手動で入れる

xdaのやり方(Yahoo知恵袋)

基本的には、上記回答で示されている、xda-developersのサイトの通りにやればよいみたいです。しかしながら、Installationで指示されている方法に Root Explorer を用いているわけでございます。有料ソフトだよねそれ!

adb shellというものを使えばこういったアプリを使わずとも同じことができるのですが、linuxに馴染みの疎い人には「mount」やら「chmod」やら言われてもなんのことやらだと思われますので少しだけ敷居が高そうです。

…なんて思っていたら、ESファイルエクスプローラでルートディレクトリからアクセスできるみたいです。ただし、パーミッションと呼ばれるものも変える必要があるのですが、それもESファイルエクスプローラでできるのかは不明。

方法2:自動バッチを使う(私がやった方法)

もうちょっと簡単な他の方法を調べてみたところ

Easy CWM Recovery install

こんなソフトがありました。内容を読む限り、先ほど書いた方法を自動でやってくれるソフトみたいです。

上記サイトのCWM Installのdownloadを押して、ファイルダウンロードします。

そして、「USBデバッグモード」に設定したXperiaをパソコンに接続した後、install-cwm2.cmdをクリックする(USBデバッグモードは「アプリケーション」→「開発」のところにあります)。

ここが注意するところで、実行するのはinstall-cwm1.cmdではなくて、install-cwm2.cmdです。install-cwm1のところにxperia arcと書いてあるので「acroもこっちだなきっと」とひっかかりそうになりますが、そちらではなくてinstall-cwm2.cmdを実行します。

実行後は、画面の指示通りにやればokです。

(あと、ちゃんと英語で指示が書かれていますが、途中でrootを要求する画面が表示されて文字表示が止まります。その時、IS11S側でroot権限を許可する必要があるので忘れないように注意)

終了したら再起動すればOKです。

これでCWMは入ってるのであとは、「CWM 使い方」とかでググればいいと思う。

 

アプリ使う

上記の方法をアプリでできるようにしたx-Partsというアプリがあります。これを使うのが本来であれば一番簡単そうです。

しかし、このアプリ、IS11Sを認識しません。偽造すれば使えるみたいですが、「クリックするだけ」の上記の方法に比べて少しばかし面倒なのでやめときました。

やった人のブログを見てみると、機種偽造した後、また設定を戻さないと問題が生じるらしいですし・・・

一番上のやり方が理解できる人は一番上のやり方でインストールして、それ以外の人は2番目のやり方でやるのがIS11Sでは良さそうですね。

 

二番目の自動化ツールは何をやってるのだろうか

2番目の方法で私はcwmを入れたのですが完全にブラックボックスで気持ちが悪いので、何が実行されてるのか確認してみました。

大まかに何がやられてるのかくらいは知りたいじゃない。

install-cwm2.cmdのコードを確認してみると以下のようになっている。

@echo off
 
cd >root.txt
set /p root=<root.txt
del root.txt
 
path=%path%;%root%\BIN
 
color 0b
 
adb kill-server
adb start-server
cls
echo.
echo ClockWorkMod Recovery 5.0.2.6
echo Xperia Mini / MiniPro / Active / Live With Walkman
echo.
echo Credits to :
echo nobodyAtall@xda
echo.
echo installation script by puppet13th@xda
echo.
echo Please connect your devices and enable usb debugging
echo.
echo waiting for device . . .
adb wait-for-device
adb push recovery /data/local/tmp
adb push recovery\chargemon2 /data/local/tmp/chargemon
adb shell chmod 755 /data/local/tmp/sh
adb shell chmod 755 /data/local/tmp/cwm-rec
echo ready to work . . .
echo Wake up the screen!
pause
echo Press Allow on Super User Request
adb shell su -c /data/local/tmp/cwm-rec
echo cleaning up . . .
adb shell rm -r /data/local/tmp/*
pause

こちらでadb環境を用意しなくても、BIN/にadbの実行に必要なファイルが用意されているっぽい。コードを見る限りpathを追加しているっぽいので、たぶんadb環境ない人でも実行できそうな予感がします。

ちなみに、install-cwm1.cmdとの違いは、28行目が

adb push recovery\chargemon2 /data/local/tmp/chargemon

から

adb push recovery\chargemon1 /data/local/tmp/chargemon

になっていることだけでした。だから、chargemon1とchargemon2の違いを調べればなんでIS11Sではinstall-cwm2.cmdを実行しなきゃいけないのかわかるっぽいんですが、あんま興味ないしパッと見でよくわからないコマンドが描いてあったのでやめておきます。

ここに書いてあるバッチの大部分は、recoveryディレクトリにあるものを、アンドロイドの一時保管用ディレクトリに転送しているだけ。

肝心の箇所は35行目の

adb shell su -c /data/local/tmp/cwm-rec

ここ!

cwm-recがルート権限で実行されてるので、何が書かれているか確認してみると

#!/data/local/tmp/sh
echo installing ClockWorkMod Recovery 5.0.2.6
mount -o remount rw /system
cp /data/local/tmp/recovery.tar /system/bin/recovery.tar
cp /data/local/tmp/sh /system/xbin/sh
if [ -f /system/bin/charger ]
    then
    echo charger exist . . .
    else
    mv /system/bin/chargemon /system/bin/charger
fi
cp /data/local/tmp/chargemon /system/bin/chargemon
chmod 644 /system/bin/recovery.tar
chmod 755 /system/bin/chargemon /system/xbin/sh
mount -o remount ro /system

コレ。

結局このバッチファイルがやっていることは

  • (PCの)CWM-Install/recovery/recovery.tarを(携帯の)/system/bin/recovery.tarに置いて644の権限を与える
  • (PCの)CWM-Install/recovery/shを(携帯の)/system/xbin/shに置いて755の権限を与える
  • (携帯に)/system/bin/chargerというファイルが存在していない場合は、(携帯の)/system/bin/chargemonを(携帯の)/system/bin/chargerに名前を変える
  • (PCの)chargemon2を(携帯の)/system/bin/chargemonとしておいて755の権限を与える.

ってことみたいですね。手動でやる方法1とほとんど同じですね。

手動1で配布されていたchargerって、/system/bin/chargemonをリネームしたヤツでいいんですね…


PAGE TOP