V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
extreme
V2EX  ›  问与答

望各位使用华为 C8813Q 的来帮助一下本人,非常重要的事情。

  •  1
     
  •   extreme · 2014-12-09 01:31:29 +08:00 · 3179 次点击
    这是一个创建于 3673 天前的主题,其中的信息可能已经有所发展或是发生改变。
    亲爱的,

    昨天晚上本人在使用fdisk操作华为C8813Q内部储存的分区时,导致扩展分区中的分区表丢失。

    经过分析,出现此问题的原因如下:
    华为把扩展分区的分区表放在了266882至270335之中,所以使用fdisk查看分区表可以看到所有逻辑分区的起始扇区都是紧接着前一个逻辑分区的终止扇区。但fdisk不是这样操作扩展分区的分区表的,可能是把逻辑分区的起始扇区与末尾扇区信息存放在接下来要创建的逻辑分区的起始扇区前的扇区(这是我的猜测,因为我企图使用fdisk重建分区表时,发现无法让起始扇区紧接着前一个逻辑分区的终止扇区)。
    本人当时创建分区,在输入起始扇区的步骤直接按了Enter使用了默认值,而默认值就是在266882至270335之间,然后杯具就这样发生了。

    这不是简简单单的丢数据(事实上重要的数据我有备份),/system与/data仅是丢失的多个逻辑分区中的其中两个,其余的分区将导致手机无法启动,即使刷官方固件,也无法解决。

    您可能会问,你手机发分区表出问题了,你如何启动手机恢复呢?
    因为更改分区表后,内核并不会立刻更新分区表,特别是某些分区已经被挂载,内核是无法更新的,因此我手机在分区表出问题后至今,仍处于运行状态。但万万不能关机,这一关机,就是……

    阅读完以上的内容后,您可能会产生帮助我的念头,却不知道该做什么。
    如果您真的要帮助我,那实在是非常感谢。
    在帮助我之前,您需要确保您的手机已具备以下条件:
    1. 手机已成功获取root权限(我觉得准点的说法应该是您可以自由切换到root用户)。
    如果您已具备上述条件,那么很好,接下来您需要安装一个Android Terminal,例如:Connect Bot, JuiceSSH(强烈推荐,我还特意付费购买了附加功能),您可以在Google Play找到。
    安装完毕Terminal后,启动您的Terminal,并使用local shell(这两个终端都自带SSH Client,但我们这里不需要,而是需要他们使用本地的Shell。JuiceSSH可以点击右上角图标是闪电状的按钮,在出现的窗口中点击下拉菜单,选择"Local Device"),然后点击"Start"按钮。
    下面,我来教您如何导出MBR与EBR:
    输入:
    su
    按Enter,切换至root用户(root权限管理程序可能会询问您是否允许,记得点击允许哦!),
    执行下面两个命令:
    dd if=/dev/block/mmcblk0 of=/sdcard/mmcblk0.mbr bs=512 count=1
    dd if=/dev/block/mmcblk0 of=/sdcard/mmcblk0.ebr bs=512 skip=266881 count=3455
    其中第一个命令是导出位于第一个扇区的分区表,第二个命令是导出第266882个扇区至270335个扇区间的扩展分区分区表(count可能多了几个扇区,只是为了数据的完整)。
    最后,您只需把/sdcard/mmcblk0.mbr, /sdcard/mmcblk0.ebr这两个文件发送给我,然后剩下的就是等待我的好消息了。

    这里顺便附加一个我的华为C8813Q内部储存默认的分区的信息:
    Device Boot Start End Blocks Id System
    /dev/block/mmcblk0p1 * 1 40 20 4d QNX4.x
    /dev/block/mmcblk0p2 41 640 300 45 Unknown
    /dev/block/mmcblk0p3 641 266880 133120 c W95 FAT32 (LBA)
    /dev/block/mmcblk0p4 266881 7634943 3684031+ 5 Extended /dev/block/mmcblk0p5 270336 294911 12288 6a Unknown /dev/block/mmcblk0p6 294912 303103 4096 46 Unknown /dev/block/mmcblk0p7 303104 311295 4096 63 GNU HURD or SysV /dev/block/mmcblk0p8 311296 317439 3072 58 Unknown /dev/block/mmcblk0p9 319488 325631 3072 4a Unknown /dev/block/mmcblk0p10 327680 333823 3072 4b Unknown /dev/block/mmcblk0p11 335872 344063 4096 47 Unknown /dev/block/mmcblk0p12 344064 360447 8192 48 Unknown /dev/block/mmcblk0p13 360448 401407 20480 60 Unknown /dev/block/mmcblk0p14 401408 409599 4096 6c Unknown /dev/block/mmcblk0p15 409600 802815 196608 83 Linux /dev/block/mmcblk0p16 802816 966655 81920 83 Linux /dev/block/mmcblk0p17 966656 3063807 1048576 83 Linux /dev/block/mmcblk0p18 3063808 5423103 1179648 83 Linux /dev/block/mmcblk0p19 5423104 7634943 1105920 6b Unknown
    您可以检查一下您的分区的扇区信息是否与我的默认信息一致。

    如果您要报酬的话,那请您先不要给我文件,以免因误会而引起纠纷,当然,希望您要的钱不多,毕竟本人还只是一个学生……

    为了尽快找到可以且愿意帮助我的人,我还打算把上述内容转发到以下社区/论坛:
    Hostloc

    此致,
    最高的问候,

    Extreme
    24 条回复    2016-03-10 21:10:00 +08:00
    xudshen
        1
    xudshen  
       2014-12-09 01:40:37 +08:00
    看这行文我还以为我是加班过多结果穿越了
    manhere
        2
    manhere  
       2014-12-09 01:43:14 +08:00 via Android
    线刷模式也不能用了吗?我记得应该跟C8815通用吧?
    extreme
        3
    extreme  
    OP
       2014-12-09 01:47:05 +08:00
    @manhere 刷官方固件,仅能重建boot, recovery, system, data四个分区,基带等更重要的分区是不会重建的。
    extreme
        4
    extreme  
    OP
       2014-12-09 01:58:31 +08:00
    刚才已把本人发的内容转发到添翼圈,安智论坛。
    hexor
        5
    hexor  
       2014-12-09 02:08:58 +08:00
    楼主看起来很真诚, 顶一下
    evlos
        6
    evlos  
       2014-12-09 03:23:01 +08:00
    不知道手机上能否用 parted 或者 testdisk 来恢复分区
    xcv58
        7
    xcv58  
       2014-12-09 03:58:16 +08:00
    帮顶
    xlvecle
        8
    xlvecle  
       2014-12-09 08:35:47 +08:00
    @extreme bootloader应该是独立的吧,不碰bootloader应该都能重建?
    tanyuxiang
        9
    tanyuxiang  
       2014-12-09 09:00:51 +08:00
    感觉lz的id眼熟。。。广东免备案?
    mlhorizon
        10
    mlhorizon  
       2014-12-09 09:08:20 +08:00
    lz的how to help me写得不错
    wangtuyi
        11
    wangtuyi  
       2014-12-09 09:10:33 +08:00
    楼主这个帖子发的很有含金量
    aiguozhedaodan
        12
    aiguozhedaodan  
       2014-12-09 09:25:44 +08:00 via Android
    建议发到华为的贴吧或者华为自己的论坛上。比如花粉之类的。这样用户群集中些。
    momou
        13
    momou  
       2014-12-09 09:29:37 +08:00
    手动点个赞,帖子发得不错
    mimzy
        14
    mimzy  
       2014-12-09 09:30:45 +08:00   ❤️ 2
    链接: http://pan.baidu.com/s/1bEza2 密码: h0n9
    我的手机是 C8813Q,ROM 刷的魔趣 4.4 不知道是否有影响。我没有验证里边的内容,还请麻烦您自己检验下~
    extreme
        15
    extreme  
    OP
       2014-12-09 12:46:18 +08:00
    @mimzy 非常感谢,刚刚放学,我现在就去检查一下。
    zzNucker
        16
    zzNucker  
       2014-12-09 13:12:42 +08:00
    发帖姿势很正确,读起来很舒服!
    extreme
        17
    extreme  
    OP
       2014-12-09 13:13:56 +08:00
    @mimzy 刷固件不会重新规划分区。
    刚刚在一个服务器上导入了您提供的MBR与EBR,使用diff对比了分区信息,与默认的完全一致,目前正准备导入至我的华为C8813Q的内部储存中。
    extreme
        18
    extreme  
    OP
       2014-12-09 13:15:40 +08:00
    @mimzy 已成功导入/dev/block/mmcblk0,使用diff与默认信息对比,完全一致,目前准备重启手机,祝我好运吧!
    extreme
        19
    extreme  
    OP
       2014-12-09 13:27:41 +08:00
    @mimzy 已成功重新启动,目前正常运行中。
    实在是感激不尽,不知如何报答。
    如果您有需要帮助的地方,请联系我,如果是在我力所能及的范围内的,我一定会尽力完成。
    csx163
        20
    csx163  
       2014-12-09 13:28:25 +08:00
    刚看到,话说这手机还真是流畅的不行
    mimzy
        21
    mimzy  
       2014-12-09 13:47:34 +08:00 via Android
    @extreme 不客气!助人为乐应当的~帮忙解决了问题很开心~ :)
    aheadlead
        22
    aheadlead  
       2014-12-09 13:50:17 +08:00
    感觉楼主很碉
    chenyao168
        23
    chenyao168  
       2016-03-10 20:23:53 +08:00
    @mimzy 你好,我也有这个需要,你可以重新上传一份吗?因为我今天格式化的时候不小心把 mmcblk0 给格式化了。
    此致
    chenyao168
        24
    chenyao168  
       2016-03-10 21:10:00 +08:00
    @extreme 你好,我想与你通过 IM 软件探讨一下 QPST 的使用,主要是备份 /还原设备方面的问题,请问你愿意与我讨论这些问题吗?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2111 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 00:19 · PVG 08:19 · LAX 16:19 · JFK 19:19
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.