LG Optimus G EFS Backup/Restore
Every rooted Optimus G user should backup their EFS partitions! Included in this thread is a flashable EFS backup script and terminal/adb commands if you want to do it manually. The script automates the entire backup of all 3 EFS partitions and then packs the files into a flashable zip for easy restoring later. Place this zip somewhere safe other than your sdcard!
Thanks goes to toastcfh for the script help and everyone in #lg-optimus-g that helped out with EFS testing.
Original Optimus G EFS Thread(ZERO EFS) - HERE
You never know when your NV/EFS may stop working correctly. Restoring your WORKING EFS may save the day. A few users in the #lg-optimus-g IRC channel have run into issues and found their phone unusable, myself included. Our issues could have been fixed if an EFS backup was made while the phone was still in working order.
m9kefs1 seems to be radio related
m9kefs2 contains your unique phone identifiers: IMEI, phone number, etc
m9kefs3 seems to be blank 00s
Backing up EFS
It's easiest to run the Optimus_G_Create_Flashable_EFS.zip attached to this thread. Run in recovery. Optimus_G_Create_Flashable_EFS.zip creates a flashable zip backup of your EFS in /sdcard/EFS_Backup/(instead of just a .tar). Confirmed working on TWRP 188.8.131.52/184.108.40.206 and CWM 220.127.116.11. Confirmed NOT working on CWM 18.104.22.168. Please check to make sure the backup zip worked and actually made a .zip file in /sdcard/EFS_Backup. Any issues please list what recovery and version you are using and please post the recovery.log.
If you don't like convenience this can also be done manually with adb or terminal with the commands below.. root required.
Restoring EFSCode:su dd if=/dev/block/platform/msm_sdcc.1/by-name/m9kefs1 of=/sdcard/m9kefs1.img dd if=/dev/block/platform/msm_sdcc.1/by-name/m9kefs2 of=/sdcard/m9kefs2.img dd if=/dev/block/platform/msm_sdcc.1/by-name/m9kefs3 of=/sdcard/m9kefs3.img
To restore your original EFS just boot into recovery and flash the efsbackupflash.zip in your /sdcard/EFS_Backup folder.
If you don't like convenience this can also be done manually with adb or terminal with the commands below. Adjust the "dd if=/sdcard/" command depending on where your backup EFS .img files are located.
Code:su dd if=/sdcard/m9kefs1.img of=/dev/block/platform/msm_sdcc.1/by-name/m9kefs1 dd if=/sdcard/m9kefs2.img of=/dev/block/platform/msm_sdcc.1/by-name/m9kefs2 dd if=/sdcard/m9kefs3.img of=/dev/block/platform/msm_sdcc.1/by-name/m9kefs3Code:Changelog v1 EFS backup zip: backed up m9kefs1.img and m9kefs2.img then .tar'd them. v2 EFS backup zip: backed up EFS then creates a flashable .zip containing the EFS partitions. v3 EFS backup zip: zip script is now "safer" and should work on all Optimus G variants. v4 EFS backup zip: backup zip now backs up m9kefs3. this is for "completeness" only. I believe m9kefs3 contains no worthwhile data.