MotorolaのMoto G7 PlusにLineageOSをインストールする。GraphineOSと異なり、LineageOSの方がサポートするデバイス(スマフォの機種)の範囲は圧倒的に広い。
※ただし、機種にもよるのかもしれないが、GrapheneOSに比較すると、LineageOSのインストールはややこしい、今回はMotorolaのMoto G7 Plusを試した。
サポートデバイスは、https://wiki.lineageos.org/devices/を参照のこと。
準備
Windows10パソコン、Moto G7 Plus、TYPE-A/TYPE-Cケーブル、それにネット接続があればよい。
https://wiki.lineageos.org/devices/lakeがMoto G7 Plusの情報ページで、Guides/Installationのページを開く。
ADBとfastbootのインストール
Windows10にADBとfastbootをインストールする。単に、Using ADB and fastbootからzipファイルをダウンロードして、展開し、環境変数の実行パスを設定すればよい。簡単に設定するには例えば、Rapid Environment Editorを管理者モードで動作させて編集すればよい。
これを行った後に、コマンドラインでadbなどのコマンドが使用できるようになるはず。
UniversalsADBDriverのインストール
さらに、https://github.com/koush/UniversalAdbDriverからWindows用のものをダウンロードして、インストールする。
パソコンを再起動しておく。
※注意:この時点では、モトローラのUSBドライバをインストールしていないので、「fastboot devices」等のコマンドは機能しない。
スマフォを起動して開発者モードにする
スマフォを起動する。このスマフォは中古で、初期化されている状態なので、いろいろと聞いてくるが、何も設定する必要はない。Wifi無し、Googleアカウント無し、指紋ロック無し、モトローラとの連携無し。唯一PINだけ設定した。
次に開発者モードにするが、この時点ではPCに接続する必要はない。スマフォ単体で行うことができる。システム設定を開き、一番下の電話情報を開く。
ビルド番号を7回ほどタップすると、開発者モードになる。これはすべてのAndroid機で共通。
システム情報のトップに戻って、システムを開く。
システムを開き、「詳細設定」をタップすると、開発者向けオプションが現れる。
スクロールしていくと、USBデバッグがあるので、ONにする。これにより、パソコン側からスマフォのシステムにアクセスする準備ができた。
パソコンとスマフォを接続する
パソコンとスマフォをUSBケーブルで接続する。この時、スマフォ側では「USBデバッグを許可するか?」といった表示になるので承諾する。
パソコン側ではコマンドライン(PowerShellでもよい)を立ち上げる。この時点では、スマフォは通常動作しているので、PCのコマンドラインから再起動を指示する。「adb reboot bootloader」と入力する。
スマフォ側は、上のような表示になるはずだ。ここでoem_lockedの表示に注意。ロック状態では、LineageOSをインストールできない。ロックを解除するのだが、これが少々ややこしい。
OEMロック解除キーのリクエスト
OEMロックを解除するには、モトローラのページUNLOCK YOUR BOOTLOADERの指示に従う必要があるのだが、概要としては以下である。
- モトローラウェブページに登録する(Googleアカウントでも可)
- モトローラのUSBドライバをインストールする
- get_unlocked_dataコマンドを使用して、アンロック用の文字列を取得する
- 上の文字列をモトローラ側に送る。
- メールで解除キーが送られてくる。
- この解除キーを使ってOEMロックを解除する。
1.は行う必要がない。2のモトローラのUSBドライバをダウンロードしてインストールする。
次にパソコン側から、「fastboot oem get_unlock_data」コマンドを使うと、以下のような文字が表示される。
(bootloader) 0A40040192024205#4C4D3556313230
(bootloader) 30373731363031303332323239#BD00
(bootloader) 8A672BA4746C2CE02328A2AC0C39F95
(bootloader) 1A3E5#1F53280002000000000000000
(bootloader) 0000000
この文字列を接続して一つにする
0A40040192024205#4C4D355631323030373731363031303332323239#BD008A672BA4746C2CE02328A2AC0C39F951A3E5#1F532800020000000000000000000000
これを入力して、「Can my device be unlocked?」ボタンを押すと、一番下に以下のボタンが出現するので、Agreeをチェックして「Requesst unlock key」をクリックすると、登録メアドに解除キーが送られてくる。
OEMロック解除キーの投入
こんなメールが送られてくる。
この解除キーを使って「fastboot oem unlock 解除キー」というコマンドを投入する。
そして、ここが大事なところだが、このコマンドを送った直後にスマフォを起動しないといけないようだ。スマフォ側はfastboot画面になっており、電源ボタンを押すと「START」するはずなので、これを押して起動させる。いったんリブート等をさせると、上のコマンドの効力が無くなってしまうように思う。
※実際にはこのステップは不要かもしれない。思考錯誤したので、上の手順になっている。
OEMロック解除の許可
実際のOEMロック解除許可は、スマフォの設定画面から行う。つまり、
- 解除キーの投入
- 直後にスマフォの起動
- 少なくとも起動後にWifiに接続していること
- スマフォの設定画面にて、OEMロック解除
という手順になる。うまく行けば、以下のようにOEMロック解除項目が有効になり、ONにすることができる。
※実際にこれを何度もやり直した。この一連の操作にWifi接続は不要と思いこんでいたのだが、実際にはWifiに接続していないと、OEMロック解除の許可ができないようだ。そして、「ロック解除の許可」とは、ロック解除そのものではないようだ。「ブートローダーによるロック解除を許可する」と説明があるように、ロック解除は別途行う必要がある。
OEMロック解除
開発者オプションで「ロック解除を許可」にした後で、実際のロック解除を行う。
再度、PCから「adb reboot bootloader」
を投入してスマフォを再起動する。
再度、以下のコマンドを投入すると、警告が出るので、再々度同じコマンドを投入する。
C:\Users\admin\Desktop>fastboot oem unlock 解除キー
(bootloader) ***************************************
(bootloader) WARNING: This command erases user data!
(bootloader) WARNING: This command voids warranty!
(bootloader) Please re-run this command to confirm.
(bootloader) ***************************************
OKAY [ 0.031s]
Finished. Total time: 0.032sC:\Users\admin\Desktop>fastboot oem unlock 解除キー
(bootloader) Bootloader is unlocked!
OKAY [ 0.315s]
Finished. Total time: 0.317s
ここで初めて上のように「Bootloader is unlocked」という表示が出る。
スマフォのボリュームボタンを操作して「RESTART BOOTLOADER」にし、電源ボタンでブートローダーを再起動する。
再起動した後は、以下のようにunlockedの表示になっている。
これ以降は、https://wiki.lineageos.org/devices/lake/installの「Temporarily booting a custom recovery using fastboot」以降を行えば良い。
LineageOSのインストール
OEMロックが解除できたところで、次はいよいよLineageOSをインストールしていく。
https://wiki.lineageos.org/devices/lake/installの「Temporarily booting a custom recovery using fastboot」以降を行えば良い。これは以下の手順になる。
- リカバリイメージをスマフォに投入する
- リカバリイメージでスマフォを起動して、そこからcopy-partitionsというものを投入する(スマフォ内部のドライブ領域のパーティションに関するものらしい)
- リカバリイメージでスマフォを起動して、LineageOSを投入する
必要なファイルのダウンロード
上記の手順で三つのファイルを使うので、これをあらかじめダウンロードしておく。リカバリイメージとLineageOSについては、ここから現時点の最新をダウンロードした。
copy-partitionsについては、現時点ではここにあるが、説明本文中を確認すること。
結局、以下の三つになる。
リカバリイメージの投入
まず、スマフォは以下の状態になっている。
この状態で、「fastboot flash boot *-recovery-lake.img」を投入する。*部分はバージョンによって異なる。
C:\Users\admin\Desktop>fastboot flash boot lineage-18.1-20210921-recovery-lake.img
(bootloader) is-logical:boot_b: not found
Sending ‘boot_b’ (23069 KB) OKAY [ 0.513s]
Writing ‘boot_b’ OKAY [ 0.692s]
Finished. Total time: 1.399sC:\Users\admin\Desktop>
スマフォをリカバリモードにする
スマフォをリカバリモードにする。ボリュームボタンで「RECOVERY MODE」をメニュー選択し、電源ボタンを押す。
起動途中に恐ろしげな表示になるが、気にしない。
リカバリモードになった。これ以降は、パソコン側からの指示と、スマフォのリカバリモードのメニュータップで操作するので、ボリュームボタンと電源ボタンは触らない。
copy-partitionsを投入する
スマフォ上で「Apply Update」をタップし、次に「Apply from ADB」をタップする。以下のような表示になる。
この状態で「adb sideload copy-partitions-20210323_1922.zip
」を投入する。スマフォ上では、「Signature verification failed、Install anyway?」と表示されるが、Yesで良い。
最終的に、スマフォは以下の表示になる。
フォーマット
スマフォ左上の「←」をタップして、トップメニューに戻る。リカバリモード画面の「Factory Reset」をタップし、「Format data/factory reset」をタップし、さらに「Format data」をタップする。これはほとんど即座に終了する。左上の「←」をタップしてメインメニューに戻る。
LineageOSの投入
「Apply Update」をタップし、「Apply from ADB」をタップする。PC側では、「adb sideload lineage-*-lake-signed.zip」を投入する。*部分はバージョンによって異なる。この処理には少々時間がかかる。
C:\Users\admin\Desktop>adb sideload lineage-18.1-20210921-nightly-lake-signed.zip
Total xfer: 1.00xC:\Users\admin\Desktop>
最終的にスマフォは以下の表示になる。
左上の「←」でメインメニューに戻り「Reboot system now」をタップする。先程も出た恐ろしげな表示の後に、LineageOSの起動画面が表示されるはず。
ブートローダーにロックをかける
ブートローダ画面にして以下を投入する
>fastboot flashing lock (bootloader) *************************************** (bootloader) WARNING: This command erases user data! (bootloader) Please re-run this command to confirm. (bootloader) *************************************** OKAY [ 0.009s] Finished. Total time: 0.009s >fastboot flashing lock (bootloader) Bootloader is now locked OKAY [ 0.303s] Finished. Total time: 0.305s
スマフォの画面はすぐには変わらないが、ボリュームキーをいじっているとそのうち「Locked」の表示になる。「START」で再起動する。