修复nexus4由于使用完美刷机或者刷机精灵导致的底层文件受损

  前一段nexus4升级android 4.4.4的时候突然发现无法使用线刷刷入官方镜像了。当时就感觉很奇怪,但是不知道怎么搞得刷进去了,但是第一次开机的时候总是卡在联网之后的验证(我当时以为是网络不好。。),就这样试了了n多次终于刷好(现在看来完全是运气吧)。但是最近重新刷机的时候仍然遇到类似的问题,不能线刷官方镜像,出现以下代码后就退出刷机了:

archive does not contain 'boot.sig'
archive does not contain 'recovery.sig'
failed to allocate 717312552 bytes
error: update package missing system.img
Press any key to exit...

然后就只能退出了,查了半天的资料终于发现原来是由于以前用过完美刷机和刷机精灵的问题(图省事真是没有好下场!),使用这些软件刷机造成了底层文件受损,导致一系列的问题。还好看了几个大神的帖子,终于能够刷入官方镜像来了而且也可以开机验证通过了(貌似还是比较慢)。接下来就说一下详细的救砖的过程。

一,需要的文件:

  这是我在修复过程中用到的所有软件和文件,大部分是某论坛大神的。点击下载

二,开始修复:(不懂基本刷机的可以看这个帖子:点击

  1. 刷入附件压缩包中的recovery(总之要是第三方的recovery),最好就刷入附件中的recovery。
  2. 下载上面的压缩包,解压之后把文件夹中的LGE960AT-00-V10d-NXS-XX-MAR-04-2013-JVP15L-FACTORY+0.zip解压,并且把TOT后缀名改为BIN后缀名;
  3. 将附件中的LGNPST_ACG_v2.2.3_Lab_Version.msi双击安装,安装完成后(需要重启),将LGNPST_ACG.exe复制到C:LG ElectronicsLGNPST目录下中
  4. 安装附件中的LGNPST_Components_Ver_5_0_20_0.msi、LGNPST_GenericModels_Ver_5_0_12_0.msi、LGNPSTv1.3_Lab_Verison_RightClickReg.msi分别都安装,再安装LGUnitedMobileDriver_S4981MAN38AP22_ML_WHQL_Ver_3.8.1.exe,这是驱动,如果你已安装可以跳过,不确定有没有安装的话还是安装。将解压出来的Models文件夹复制到C:LG ElectronicsLGNPST目录下。
  5. 打开运行窗口,输入regsvr32 "C:LG ElectronicsLGNPSTModelsLGNPST_LS970.dll"并回车,会显示XXX已成功  (其实这部就是简单的装驱动  安装完之后检查是否成功而已 这步是不会有任何技术问题的...)
  6. 手机进入recovery  双清 之后直接关机 然后数据线先连接电脑 ,同时按住手机音量加减键, 然后连接手机,直至屏幕出现download图像(见下图),电脑会自己安装驱动 不用管它,需要几分钟让电脑加载安装

    .
  7. 打开C:LG ElectronicsLGNPST目录下的LGNPST_ACG.exe程序,选择设备管理器中显示的LG开头的端口号。(见下图)
    在下方,DLL File选择 C:LG ElectronicsLGNPSTModelsLGNPST_LS970.dll BIN File选择LGE960AT-00-V10d-NXS-XX-FEB-16-2013-JDQ39-USER+0.bin

    然后点击start刷机就行了,这里需要注意的是: 当进度到67时会卡住 ,千万别动,等一会就回直接跳到85同时手机开机(但是不要在达到85%之前关掉软件)。 我的手机是开机之后让我输入密码(由于sd卡被锁了),进入recovery双清。

  8. 双清之后再进入bootloader模式(就是音量下键加开机键),解压 flashfactory.zip 并进入执行 flash_all.bat 然后等自动完成(这个过程大家应该都做过了,不用细说,救砖一般用这个)然后你现在应该有一个完整功能的 8g 版了。
  9. 扩大到16G:
    开机后  刷入recovery 在recovery下刷入root包 下载re管理器 把附件中的dd     pgpt16G.img       sgpt16G.img            (如果dd文件名字变成了dd.bin,改回dd)这3个文件拉进system 不需要修改权限 放那就行 
    然后进入recovery!!!
    在电脑上把C:WindowsSystem32目录下的cmd文件(文件很多不好找,可以使用搜索功能)复制到flashfactory文件夹,然后双击cmd打开  复制输入这些代码(一行一行的输入)
    adb shell
    mount /system
    cp /system/dd /
    chmod 755 /dd
    /dd if=/dev/block/mmcblk0 of=/system/pgpt8G.img bs=512 count=34
    /dd if=/dev/block/mmcblk0 of=/system/sgpt8G.img bs=512 skip=30777311
    umount /data
    umount /cache
    umount /system
    df -h
    现在屏幕应该输出这些
    # df -h
    Filesystem                Size      Used Available Use% Mounted on
    tmpfs                   911.7M     48.0K    911.6M   0% /dev
     屏幕反馈的数值911.7M 或者934M(貌似是这个数) 数值是多少我记不清了 因为我昨天操作的 今天就记不清了... 别较这个真
    继续输入
    mount /system
    /dd if=/dev/block/mmcblk0 of=/system/DDR bs=512 skip=15267840 count=2015
    /dd if=/system/DDR of=/dev/block/mmcblk0 bs=512 seek=30775296 conv=notrunc
    /dd if=/system/sgpt16G.img of=/dev/block/mmcblk0 bs=512 seek=30777311 conv=notrunc
    /dd if=/system/pgpt16G.img of=/dev/block/mmcblk0 bs=512 seek=0 conv=notrunc
    parted /dev/block/mmcblk0
    然后输入p 然后回车,应该会输出这些:
    Number  Start   End     Size    File system  Name      Flags
    1      524kB   67.6MB  67.1MB  fat16        modem
    2      67.6MB  68.2MB  524kB                sbl1
    3      68.2MB  68.7MB  524kB                sbl2
    4      68.7MB  70.8MB  2097kB               sbl3
    5      70.8MB  71.3MB  524kB                tz
    6      71.3MB  94.4MB  23.1MB               boot
    7      94.4MB  117MB   23.1MB               recovery
    8      117MB   118MB   799kB                m9kefs1
    9      118MB   119MB   799kB                m9kefs2
    10      119MB   120MB   799kB                m9kefs3
    11      120MB   121MB   524kB                rpm
    12      121MB   121MB   524kB                aboot
    13      121MB   122MB   524kB                sbl2b
    14      122MB   124MB   2097kB               sbl3b
    15      124MB   124MB   524kB                abootb
    16      124MB   125MB   524kB                rpmb
    17      125MB   125MB   524kB                tzb
    18      125MB   126MB   524kB                metadata
    19      126MB   143MB   16.8MB               misc
    20      143MB   159MB   16.8MB  ext4         persist
    21      159MB   1040MB  881MB   ext4         system
    22      1040MB  1627MB  587MB   ext4         cache
    23      1627MB  15.8GB  14.1GB  ext4         userdata
    24      15.8GB  15.8GB  524kB                DDR
    25      15.8GB  15.8GB  507kB                grow
    重启进入bootload,输入:
    fastboot erase userdata
    fastboot -w
  10. 然后再线刷官方镜像就能得到完整的16G版本了。
  11. 接着就刷入recovery,root等,然后就可以成功刷入最新的4.4.4的官方镜像了,但是貌似开机还是要等很长时间,遇到过一次验证失败的(再试一次应该会好),虽然不知道是否完美修复,但是已经能够通过验证了有没有!

三,总结:

  首先感谢某论坛大神的详细教程,我在这里只不过按照自己的恢复过程搬运了一下。然后我想说千万别再用完美刷机和刷机精灵的类似的国产刷机软件了。自己动手刷机完全可以避免一些意外。

原文地址:https://www.cnblogs.com/uangyy/p/4042680.html