XiaomiのスマートフォンをMagiskでRoot化

魔法の
©いらすとや.

昔のAndroidはSuperuserをインストールしてRoot化することが多かったが、最近の主流はMagisk。今回はXiaomiのスマートフォンにMagiskをインストールしてRoot化する。
Magiskアプリはいきなりインストールしても良いが、インストールしただけではルート化にはならない。先ずはXiaomiのスマートフォンのファームウエアを取得しそこからboot.imgを抽出する。基本的にここ数年以内に発売されたXiaomi, Pocoのスマートフォンの多くで通用する筈。ただし、この記事作成時点では最新のAndroid 12またはMIUI 13では不具合が発生するようなのでAndroid 11且つMIUI 12.5までとする。

本来の手順としてはMagiskをインストールしようとしているスマートフォンにブートRAMディスクがあるか無いかを確認することになっている。ただし、Xiaomiのスマートフォンの場合は取り敢えずブートRAMディスクがあるものとしてパッチを当てたboot.imgををインストールしてみて、どうしてもダメそうであればブートRAMディスクが無い場合手順でパッチを当てたrecovery.imgをインストールするので良さそう。このページではブートRAMディスクが無いというパターンは割愛。

また、本来の手順としてはスマートフォンにvbmetaパーティションがあるか無いかを確認しvbmetaパーティションがあれぱvbmeta.imgにもパッチを当てるということになっている。

$ adb shell ls -l /dev/block/by-name
中略
lrwxrwxrwx 1 root root 16 1971-12-05 03:57 userdata -> /dev/block/sda18
lrwxrwxrwx 1 root root 16 1971-12-05 03:57 vbmeta -> /dev/block/sde50
lrwxrwxrwx 1 root root 16 1971-12-05 03:57 vbmeta_system -> /dev/block/sda10
lrwxrwxrwx 1 root root 16 1971-12-05 03:57 vbmeta_systembak -> /dev/block/sda11
後略

これはXiaomiのRedmi Note 9Sで確認してみた結果。vbmetaがある。

ただし、パッチを当てたboot.imgでブートループなどの問題が発生しなければvbmeta.imgのパッチ当てとそのフラッシュ(イメージ焼き)も不要で良さそう。この記事でも割愛。
つまり、MagiskでのRoot化に必要なのはboot.imgファイルだけ。

Root Explorer
とりあえずGoogle PlayからRoot Explorerをインストールしておく。Root化した端末であればほぼなんでもやりたい放題にできるファイラーアプリ。端末をRoot化してなくてもユーザー所有のファイルであれば普通に便利なファイラーとして利用できる。(Root化が必要な機能は使えない)
「がとらぼ」の中の人は10年以上愛用している。そのせいもありXiaomiのスマートフォンに標準で入っているファイラーは意味がわからないので「がとらぼ」の中の人は全く使えない。

2022年12月1日追記:
この記事ではRoot Explorer (有料アプリ)を挙げていますが、Root Explorerを使わなくてはならないということではありません。圧縮ファイル解凍(抽出)機能があるファイラー、または圧縮ファイルの解凍(抽出)機能のあるアプリの使い慣れたものがあればそれを使ってください。

boot.imgの抽出

ファームウエアからboot.imgの抽出 1
ファームウエアのファイルを取得するためにAndroidの設定から「デバイス情報」をタップ。

ファームウエアからboot.imgの抽出 2
「MIUIバージョン」をタップ。

ファームウエアからboot.imgの抽出 3
中央のMIUIバージョンのロゴを連打するとUpdateの拡張機能をオンにできる。一度拡張機能をオンにしてしまえば次の大きな更新或いはファームウエアの焼き直しをするまでずっとオンが維持される。
Updateの拡張機能をオンにしたら右上の「」(メニューアイコン)をタップ。

ファームウエアからboot.imgの抽出 4
「最新のパッケージをダウンロード」をタップする。

ファームウエアからboot.imgの抽出 5
使用しているファームウエアとユーザーによってはファームウエアをダウンロードできないことがある。「がとらぼ」の中の人はMiパイロットテスターなのでこの画面のようにダウンロードできないと表示される(ことがある)。あとベータテスターに登録してる人なども。
一般ユーザーは普通にダウンロードできると思う。このようにダウンロードできない場合は次。
「ダウンロードできないことがある」というのは正式ローンチ前のMiパイロットテスト版や安定版ベータと言われる段階のファームウエアを既に使っていてMiアカウントにログインしていない場合のことを指します。普通のユーザーが正式ローンチ済みの安定版ファームウエアを使用している場合は使用中と同じバージョンまたは正式な更新版(次の安定版)を普通にダウンロードできる筈です。また、正式ローンチ済みの安定版ファームウエアをダウンロードする場合は後述の「暗号化の解除」というのは関係ないので「ダウンロード後に急いで」というのは不要でしょう。

ファームウエアからboot.imgの抽出 6
ファームウエアを焼き直した後などMiアカウントでログインし忘れていることがある(よね?)
MiパイロットテスターやベータテスターはMiアカウントにログインしましょう。一般のユーザーはMiアカウントにログインする必要は無いしそもそもMiアカウントを作る必要もないかも。
「Miアカウント」をタップ。

ファームウエアからboot.imgの抽出 7
MiアカウントにログインすればOK。電話番号以外の個人情報を登録する必要はないかと。
Android設定に戻って「デバイス情報」、「MIUIバージョン」右上の「」、「最新のパッケージをダウンロード」をタップ。

ファームウエアからboot.imgの抽出 8
Miアカウントにログインすれば、ファイルのダウンロードが行えるようになるので完了までしばらく待つ。
安定版ファームウエアを使用している普通のユーザーはMiアカウントにログインする必要はありません

ファームウエアからboot.imgの抽出 9
ダウンロードが終わると「暗号化の解除」が始まる。暗号化解除の完了を待つが、その後の操作は「なるはや」で実行。(次へ)
安定版ファームウエアのダウンロードの後には「暗号化の解除」はないでしょうが、もしあったら完了を待ってください。

ファームウエアからboot.imgの抽出 10
このとき、焦って「今すぐ再起動」をタップしないこと。(次へ)
ちなみに、端末はずっと再起動待ちになるが、boot.imgを抽出した後にダウンロードしたファームウエアのファイルを削除すれば「今すぐ再起動」を実行しても問題ない。(再起動待ちのアイコンがステータスバーから消える以外は何も起きない)

ファームウエアからboot.imgの抽出 11
先にインストールしたRoot Explorerアプリを起動し、内部ストレージのDownloadフォルダを開く。その中にdownloaded_romフォルダが作成されていてその下にダウンロードしたファームウエアのファイルが保存されている miui_機種コード+SKU_バージョン_謎の文字列.zipがそれ。今回はフルサイズのRecoveryファイル。
このファイル名をダブルタップする。(急いで次へ)

ファームウエアからboot.imgの抽出 12
ZIPファイルの中身のファイル一覧が表示される。その一番上にboot.imgが表示されることを確認。(急いで次へ)
なお、暗号化解除後にのんびりしていたり他の余計な操作を行っているとファイル一覧が表示できなくなる。圧縮ファイルではないとかファイルが正常ではないような旨のエラーが出たらこのダウンロードしたファームウエアファイルを削除してダウンロードをやり直す。
ダウンロードしたファイルの暗号化解除待ちがなかった場合は急ぐ必要はありません。この場合は何度でもファイルの解凍やファイルの抽出ができるのでファイル一覧が表示できないとかファイルが正常ではないというエラーも出ないのでダウンロードをやり直す必要もないでしょう。

ファームウエアからboot.imgの抽出 13
「boot.img」を長押しすると表示が反転する。そして右上に(抽出/ダウンロード)アイコンが表示されるのでそれをタップする。

ファームウエアからboot.imgの抽出 14
ファームウエアのファイルサイズが大きいのでboot.imgファイルの抽出にはしばらく待たされる。

ファームウエアからboot.imgの抽出 15
「抽出は正常に実行されました」が表示されれば成功。抽出されたファイルの保存場所が表示される。「展開先へ移動」をタップ。
なお、抽出が成功すれば後は急ぐ必要はない。

ファームウエアからboot.imgの抽出 16
抽出したboot.imgがある筈。
「boot.img」を長押しすると右上に幾つかアイコンが表示されるので「(カット)」アイコンをタップ。

ファームウエアからboot.imgの抽出 17
内部ストレージ直下の「Download」フォルダに移動して右下の「(ペースト)」で移動完了。

今回は正式ローンチ前の最新バージョン(Miパイロットテスト,ベータ)でもRoot化できるようにAndroid設定のソフトウエア更新からダウンロードしたファームウエアを使用したが、ローンチ済みのバージョンからboot.imgを抽出するなら、この「がとらぼ」のXiaomi + POCOファームウエア最新一覧から機種と国/地域の適切な組み合わせを検索してファームウエアをダウンロードできる。それを普通に解凍してboot.imgを取り出す方が簡単かも。

MagiskのインストールとRoot化

Magiskのダウンロード
https://github.com/topjohnwu/Magisk/releases からMagiskアプリの最新版をダウンロードする。

XiaomiスマートフォンをMagiskでのroot化 1
ダウンロードしたMagisk-v*****.apkをファイラー上でタップ。(上の画像はRoot Explorer)。インストールの許可を求められるので許可する/または単に「インストール」を選択。XioamiのMIUIだとさらに確認を求められるかも。また、インストール直前にセキュリティスキャンが実行される際にも確認を求められることも。(全部許可)

XiaomiスマートフォンをMagiskでのroot化 2
Magiskアプリのインストールが完了したらドロワー等からMagiskを起動する。
MagiskのRoot化パッチ済みboot.imgがインストール済みではないことを確認し「インストール」をタップ。

XiaomiスマートフォンをMagiskでのroot化 3
「bootイメージ中のvbmetaをパッチする」の意味は不明。vbmetaパーティションがある(Fastbootイメージにvbmeta.imgがある)場合はチェック不要なのかもしれない。反対にチェックしても何か変わった様子もない・・・
今回は、取り敢えずチェックして「次へ」をタップした。

XiaomiスマートフォンをMagiskでのroot化 4
方法のオプションはこの時点では1つだけ「パッチするファイルの選択」が表示されるのでそれをタップする。
「はじめる →」をタップする。

XiaomiスマートフォンをMagiskでのroot化 5
ファイルの選択画面が表示されるがこれがよく判らないやつ。上段の方に「他のアプリでファイルを探す」があるので左右にスクロールして使いやすいファイラーをタップする。上の画像ではRoot Explorer。

XiaomiスマートフォンをMagiskでのroot化 6
ファイラー(今回はRoot Explorer)で内部ストレージのDownloadフォルダに移動し、先に抽出した「boot.img」を選択(タップ)する。

XiaomiスマートフォンをMagiskでのroot化 7
パッチ当てが自動的に進行する。All done!が表示されれば完了。
左上の「←」をタップする。

XiaomiスマートフォンをMagiskでのroot化 8
元のboot.imgのあったフォルダ(今回は内部ストレージのDownloadフォルダ)に「magisk_patched-*****_*****.img」というファイルができている。

この「パッチの当たったboot.img」である「magisk_patched-*****_*****.img」をスマートフォンのBootパーティションにフラッシュする(焼く)ということになるが、正常に機能するかわからないものをいきなり焼くというのは怖い。 そこで「magisk_patched-*****_*****.img」をPCにコピーする。

fastbootコマンドはWindowsでもLinuxでも標準では入っていない。
Linux (debian/ubuntu系)なら

$ sudo apt install fastboot
$ sudo apt install adb    #adbも入れておくと後々便利

Windowsなら 15 seconds ADB Installer をインストールしてコマンドプロンプトで実行する。

XiaomiのスマートフォンとPCをUSBケーブルで接続する。
スマートフォンを再起動し、リブートで画面が真っ暗になったときに音量ボタンの↓を押したままにする。または、電源オフの状態で音量ボタンの↓を押しながら電源ボタンで電源オンにする。Fastbootの画面が表示されたらスマートフォンのボタンから手を離す。

PCのターミナル/コマンドプロンプトで、 magisk_patched-*****_*****.imgを置いたディレクトリに移動して

$ fastboot boot magisk_patched-*****_*****.img

これは、fastboot flash boot magisk_patched-*****_*****.imgではないので注意。これでAndroid OSが起動する筈だが正常に起動しないならboot.imgのパッチ当てで何か問題があったかもしれない。その場合は電源ボタン超長押しで電源オフか再起動で通常に戻る。(今回はパッチ当てしたboot.imgを電話機に書き込んではいなくて、PCにあるパッチ当てしたboot.imgを使って起動しただけなので)
Android OSが起動したらPCとのUSBケーブルの接続を外す。

XiaomiスマートフォンをMagiskでのroot化 9
OSが起動したらドロワーからMagiskアプリを開く。パッチの当たったboot.imgで起動しているのでMagiskがインストール済みでそのバージョンが表示された状態になっている。(これが重要)
「インストール」をタップする。

XiaomiスマートフォンをMagiskでのroot化 10
前回は、「パッチするファイルの選択」しかなかったが、今回は「直接インストール(推奨)」が表示されている。
その「直接インストール(推奨)」をタップして選択。「はじめる→」をタップする。

XiaomiスマートフォンをMagiskでのroot化 11
Root化パッチ適用済みのBootに改変される。
All done!が表示されれば書き込み完了。
右下の「再起動」をタップする。Android OSが再起動する。

XiaomiスマートフォンをMagiskでのroot化 12
ドロワーからMagiskアプリを開く。 既にBootが書き換えられてMagiskがインストール済みになっているのでそのような表示になっている。また、Ramdiskが「対応」になっている。このRamdiskの表示はどうでも良い。
右上の「 (設定)」アイコンをクリックする。

XiaomiスマートフォンをMagiskでのroot化 13
下にスクロールして、「Zygisk」のスイッチをオンにする。
Androidを再起動する。

XiaomiスマートフォンをMagiskでのroot化 14
Android OSの再起動後に再度ドロワーからMagiskアプリを開く。
Zygiskが「対応」になっていることを確認する。

MagiskによるRoot化が完了したので今回はここまで。

関連記事:

クルマのマップランプのT10 LEDバルブを再交換した

ダウンライト
©いらすとや.

2年ほど前にクルマのマップランプをハロゲン球からLEDに交換したところ純正ハロゲンよりは明るくなったんだけど、それでも我が家のクルマのマップランプって何か明るくない。スマホ画面を見る分には車内の照明は関係ないから問題ないんだけど夜に紙に書かれた文字を読もうとすると鳥目な「がとらぼ」の中の人は苦労する。そこで新しいLEDバルブを購入してみた。

AliExpress商品画像 619円 291円
(2024年06月20日 の参考価格)

クルマのマップランプの再交換 1
AliExpressから届いたT10 LEDバルブ2本。航空郵便でよく見る黄色い紙封筒の中に入っていたのはこれだけ。大きさは小さいが樹脂ではなくアルミ製ということもあって重め。

クルマのマップランプの再交換 2

バルブの先端はレンズになっているのだが何か汚い。レンズの中は5.6mm x 3.0mm (5630)のSMD LEDが2つ入っているっぽい。ソケットに刺さる方はハロゲンバルブのように電極の針金がビョコピョコ出てるタイプではなく基板の表面にレジストがあるタイプ。基板は厚めなので簡単にはソケットから抜け落ちなさそうで安心。厚すぎるわけではなくてハロゲン球のガラス+針金程度の厚み。

クルマのマップランプの再交換 3
このT10バルブは側面に90°毎にの5630 LEDが1枚、計4つ貼られている。つまり、このバルブは全部で6枚の5630を備える。消費電力はこの6枚が点灯して1.7Wということになっている。中華通販なのでこの手の数字は全然アテにはならないけど。銀色の円筒部分の素材は樹脂ではなくアルミ。なので重めだが、なんか細かいキズだらけで汚い感じ。以前に購入したアルミのT10バルブ(長め)より品質的には期待できそうにはない。そしてその以前の長めのT10バルブの激光ぶりを期待してたのでその点ではハズレだった。

クルマのマップランプの再交換 4
今回はクルマのマップランプ(前席中央の天井でルームミラー近辺にあるランプ)を交換する。以前に紹介した激安T10 LEDバルブが左右1つずつ刺さっている。カバーは既に外した状態。

クルマのマップランプの再交換 5
これまで使っていたT10 LEDバルブ(画像の下側のバルブ)よりは少し長いがそれでもマップランプのカバーに当たる程ではないので使用できる。ちなみにこれまで使っていたT10 LEDバルブは純正のハロゲンT10バルブより1mm長いもの。なので今回購入したT10バルブは純正ハロゲンT10バルブより2.5mmほど長い。クルマの車種によっては長すぎる可能性がないとはいえない。
旧T10 LEDバルブも製品説明が本当なら腰の辺りの銀色の帯部分はアルミらしい。放熱用?

ウェッジ球なので取り外しはひねらずにまっすぐ引き抜く。硬くて抜けないときは電球にガムテープを巻き付けてガムテープごと引き抜くと力が入れやすくて安全で簡単。はめ込む際は、ソケットの中に溝があるのでその溝にウェッジ球の板のような部分を合わせてまっすぐ押し込む。嵌めるときはそんなに硬くない筈。逆に緩いときは細いマイナスドライバなどでソケットの溝の中の電極を少しだけ起こしてやるとしっかり刺さるようになる。

クルマのマップランプの再交換 6
左側がこれまで使っていたT10 LEDで、右側だけ今回購入したバルブに替えた状態。これまで使っていたのが3030 LEDが1つだけなので新しいのはもっと明るいかと思ったがまぁ横方向を照らす分には側面に5630が計4枚あるらしい明るさだが、これまで使っていた3030が1枚のLEDの方が眩しさは上にも見える。新しい方は緑っぽい色に写っていて左の古いT10の方がマップランプ内部の照らされる色が自然な感じ。

クルマのマップランプの再交換 7
真下から覗き込んでみた。上の画像はカメラの明るさ調整により眼で見るより暗く写っている。
左の3030 LEDが1枚のバルブは光が出る方向が真下でバルブのカバーで光を散らしているだけなので横方向は光が弱く真下側が強力に照らされる。なのでマップランプのユニット内は右のランプと比べると暗め。
右の5630 LEDが2枚がレンズの中にあるバルブはレンズの効果が不明。あまり明るく感じない。緑っぽさが目立つ。家庭用の白熱電球でいう60W相当とか100W相当で中国製のクソ安いLED電球は色味が悪くて食べ物が不味そうに見えるのだが、こんな色味。

クルマのマップランプの再交換 8
マップランプのカバーを取り付けた。上と同じく右側のライトだけ新しいバルブに交換した状態。新しいバルブは横方向を照らすLEDが4つ付いていてマップランプユニット内が照らされるのでユニット内全体が明るい感じ。ただし、バルブそのものの「眩しさ」は左の旧LEDバルブには負けている気がする。(画像では色味の違い以外は同じように見えるけど)
左の旧LEDバルブはマップランプユニット内は明るくないのでバルブ1点だけが強く光って見える。マップランプのカバーを取り付けても色味は旧LEDバルブの方が好き。(個人の感想です)

クルマのマップランプの再交換 9
左右共に新LEDバルブに交換した状態。新LEDバルブの方がマップランプのカバー全体が光っているように見える点は良いんだけどなぁ。

旧LEDバルブは3030が1つだけなので黄色い蛍光体部分の面積で言えば3mm x 3mmで9mm2、新LEDバルブは5630なので5.6mm x 3.0mmでそれが6枚で16.8mm2の6倍100.8mm2。つまり単純に蛍光体の面積だけなら11倍もあることになる。(蛍光体の面積だけ比べても意味ないけど)
でも、今回の新LEDバルブは旧LEDバルブと並べて光らせても明るい感じはしなくて熱いだけ。明るくなったように見えないなら旧T10 LEDバルブのコスパの良さを再確認しただけのような。

ところで、円安と中国製品の値上がりの合わせ技でAliExpressのT10バルブの価格は2年前と比べると全体的に1.5倍に迫る勢い(ものによっては2倍超えも)。すごい割高感。それでも日本のアマゾンでボッタクリ価格で購入するよりは安いけど。

関連記事:
Up