今更ながらLGL21を入手したのでroot化のメモを...
 

なんか面倒なんでワンクリっぽいもの置いときます

LGL22のroot化ファイルを拾ってくる。
必須ファイル 
・device.db
・run_root_shell
・unlock_security_module
・su


適当に今回はこの中身を拝借
https://github.com/kbc-developers/g2_support_tool/releases

/data/local/tmpにファイルを配置して各種実行
shell@android:/data/local/tmp $ ./unlock_security_module
./unlock_security_module


Device detected: LGL21 (IMM76L)

Mapping kernel memory...
Detected kernel physical address at 0x80208000 form iomem
Attempt acdb exploit...
LGL21 (IMM76L) is not supported.
Attempt put_user exploit...
OK.

Dump kernel memory...
Dumped.

Finding kallsyms address in memory...
Checking kallsyms_in_memory working...
OK. Ready to unlock security module.

Essential symbols are:
  prepare_kernel_cred = 0xc01a81d8
  commit_creds = 0xc01a833c
  remap_pfn_range = 0xc020ae58
  vmalloc_exec = 0xc0215b74
  ptmx_fops = 0xc0e713c8

Checking mmc_protect_part...
mmc_protect_part is not found.
Checking ccsecurity...
Found ccsecurity.

Unlocked LSM.

 
shell@android:/data/local/tmp $ ./run_root_shell
./run_root_shell


Device detected: LGL21 (IMM76L)

Attempt acdb exploit...
LGL21 (IMM76L) is not supported.

Attempt fj_hdcp exploit...

Attempt msm_cameraconfig exploit...

Attempt put_user exploit...
shell@android:/data/local/tmp #


一時root化できたのでパーティションのバックアップを取る
shell@android:/dev/block # ls platform/msm_sdcc.1/by-name -l
ls platform/msm_sdcc.1/by-name -l
 DDR -> /dev/block/mmcblk0p30
 aboot -> /dev/block/mmcblk0p5
 bnr -> /dev/block/mmcblk0p20
 boot -> /dev/block/mmcblk0p7
 cache -> /dev/block/mmcblk0p24
 drm -> /dev/block/mmcblk0p15
 eksst -> /dev/block/mmcblk0p22
 encrypt -> /dev/block/mmcblk0p21
 factory -> /dev/block/mmcblk0p19
 felica -> /dev/block/mmcblk0p35
 fota -> /dev/block/mmcblk0p31
 fsg -> /dev/block/mmcblk0p29
 grow -> /dev/block/mmcblk0p38
 m9kefs1 -> /dev/block/mmcblk0p12
 m9kefs2 -> /dev/block/mmcblk0p13
 m9kefs3 -> /dev/block/mmcblk0p14
 misc -> /dev/block/mmcblk0p18
 modem -> /dev/block/mmcblk0p1
 modemst1 -> /dev/block/mmcblk0p10
 modemst2 -> /dev/block/mmcblk0p11
 mpt -> /dev/block/mmcblk0p32
 pad -> /dev/block/mmcblk0p9
 persist -> /dev/block/mmcblk0p26
 recovery -> /dev/block/mmcblk0p28
 reserved -> /dev/block/mmcblk0p37
 rpm -> /dev/block/mmcblk0p6
 rpmbak -> /dev/block/mmcblk0p34
 sbl1 -> /dev/block/mmcblk0p2
 sbl2 -> /dev/block/mmcblk0p3
 sbl3 -> /dev/block/mmcblk0p4
 seclog -> /dev/block/mmcblk0p36
 sns -> /dev/block/mmcblk0p16
 ssd -> /dev/block/mmcblk0p17
 system -> /dev/block/mmcblk0p23
 tombstones -> /dev/block/mmcblk0p27
 tz -> /dev/block/mmcblk0p8
 tzbak -> /dev/block/mmcblk0p33
 userdata -> /dev/block/mmcblk0p25

userdataのp25以外は全部バックアップをとる。
 for i in mmcblk0p1 mmcblk0p2 mmcblk0p3 mmcblk0p4 mmcblk0p5 mmcblk0p6 mmcblk0p7 mmcblk0p8 mmcblk0p9 mmcblk0p10 mmcblk0p11 mmcblk0p12 mmcblk0p13 mmcblk0p14 mmcblk0p15 mmcblk0p16 mmcblk0p17 mmcblk0p18 mmcblk0p19 mmcblk0p20 mmcblk0p21 mmcblk0p22 mmcblk0p23 mmcblk0p24 mmcblk0p26 mmcblk0p27 mmcblk0p28 mmcblk0p29 mmcblk0p30 mmcblk0p31 mmcblk0p32 mmcblk0p33 mmcblk0p34 mmcblk0p35 mmcblk0p36 mmcblk0p37 mmcblk0p38;do dd if=/dev/block/$i of=/sdcard/$i bs=4096;done

ちょっと無茶してる気がするけど、何もデータ入れて無ければ容量は足りるはずなんで。
バックアップしたmmcblk~ファイルはPCにコピーしてzipで固めて保管。
Download Modeもできるし、totも探せばあるので文鎮はほぼしないけど念のためってことで。



ファイルを配置する。
shell@android:/ # mount -o rw,remount /system
shell@android:/ # mv /system/bin/ccs-auditd /system/bin/ccs-auditd.org
shell@android:/ # dd if=/data/local/tmp/unlock_security_module of=/system/bin/ccs-auditd
shell@android:/ # dd if=/data/local/tmp/su of=/system/xbin/su
shell@android:/ # chmod 755 /system/bin/ccs-auditd
shell@android:/ # chmod 6755 /system/xbin/su
shell@android:/ # mount -o ro,remount /system
以上でセキュリティ解除とsuのインストールは完了。
あとはPlayからSuperSUをインストールすれば、rootが使えるようになる。

ブート書き換えなんて要らなかった。