法启动等故障出现。通过本实施例提供的数据诊断修复方法,在进行系统诊断时,数据分区在挂接后,新建一个
?diagnose目录,然后再将/data/.diagnose挂接到/data下,这样Android系统虽然仍然是访问/data目录,但需要的数据实际上却是从/data/.diagnose目录访问得到,而/data/.diagnose目录是个空目录,不存在数据混乱的问题,因此可保证系统得以正常启动,同时也达到了隐藏原来的数据分区和不破坏原来数据的目的。一旦系统得以正常启动,则可说明之前发生的故障为系统故障。并且,系统正常启动后,虽然访问的是/data/.diagnose目录,但并不影响系统其他功能的正常使用。
[0041]本发明实施例提供的一种数据诊断修复方法,通过在数据分区新建一个空目录,并利用空目录替代原有的系统根目录的功能,使得系统通过访问该空目录得以正常启动,相较于现有技术,本发明一方面实现了智能终端系统故障的自我自动诊断及修复,可迅速解决智能终端使用中的系统故障问题,节省维修成本,并具有操作简单的优点,同时可减少因送修而导致的用户个人资料泄露的可能性,提高用户个人信息安全;另一方面,由于是通过利用空目录替代原有的系统根目录的功能,因此不破坏原来的数据,且不需要新增存储分区,避免了由于系统规划时需要预留空间而导致的资源浪费。
[0042]请参阅图2,图2为本发明第二实施例提供的一种数据诊断修复方法的实现流程示意图。本实施例提供的数据诊断修复方法可应用于智能手机、平板电脑、智能穿戴设备等智能移动终端。如图2所示,该方法主要包括以下步骤:
[0043]S201、当检测到智能终端启动后,若超过预置时长仍未正常进入系统,则触发数据诊断修复任务;
[0044]具体地,智能终端在启动后,若检测到自身超过预置时长(如:10分钟)仍未正常进入系统,则触发数据诊断修复任务。
[0045]S202、当检测到数据诊断修复任务被触发时,重启智能终端并进入数据诊断模式;
[0046]S203、在数据诊断模式下,在数据分区新建一个空目录;
[0047]空目录即其中不包含任何文件的目录。数据分区即智能终端的物理系统分区,以Android(安卓)系统为例,即为data分区。于本实施例中,可在data分区新建一个空目录,如:.dagnose目录。可以理解地,在其他操作系统中,数据分区可指代其他同类分区。
[0048]S204、利用bind参数将空目录挂接到数据分区,使得系统通过访问空目录启动;
[0049]具体地,利用Linux的mount命令,使用bind参数,将/data/.diagnose目录挂接到/data下,使得系统通过访问/data/.diagnose目录启动,从而实现系统故障的自动诊断与修复。
[0050]上述方法可实现系统故障的自动诊断与修复的原理在于=Android系统中数据分区物理结点为/(^¥/1310^^/11861(^七3,数据分区挂接点为/(^七3。通常情况下,411(11'0丨(1系统是将/dev/blockAiserdata挂接到/data,将系统默认访问的数据存储在/data目录下,这样一旦/data目录下的数据发生混乱,就会导致Android系统无法启动等故障出现。通过本实施例提供的数据诊断修复方法,在进行系统诊断时,数据分区在挂接后,新建一个
?diagnose目录,然后再将/data/.diagnose挂接到/data下,这样Android系统虽然仍然是访问/data目录,但需要的数据实际上却是从/data/.diagnose目录访问得到,而/data/.diagnose目录是个空目录,不存在数据混乱的问题,因此可保证系统得以正常启动,同时也达到了隐藏原来的数据分区和不破坏原来数据的目的。一旦系统得以正常启动,则可说明之前发生的故障为系统故障。
[0051]S205、若系统在预置时长内正常启动,则显示预置的提示信息,提示信息用于提示用户系统存在故障,是否进行修复操作;
[0052]控制系统通过访问新建的空目录尝试启动,若预置时长内,正常进入到系统,则显示预置的提示信息,以提示用户是否进行修复操作,例如:进行清除和整理数据分区的操作。
[0053]S206、接收用户基于提示信息触发的系统修复指令,对系统执行修复操作。
[0054]具体地,接收用户基于提示信息触发的系统修复指令,重启系统并进入数据修复模式,在数据修复模式下,先对数据分区执行删除操作,然后重建数据分区,之后再次重启系统,从而使得智能终端系统得以完全恢复。
[0055]本发明实施例提供的一种数据诊断修复方法,通过在数据分区新建一个空目录,并利用空目录替代原有的系统根目录的功能,使得系统通过访问该空目录得以正常启动,相较于现有技术,本发明实现了智能终端系统故障的自我自动诊断及修复,可迅速解决智能终端使用中的系统故障问题,节省维修成本,并具有操作简单的优点,同时可减少因送修而导致的用户个人资料泄露的可能性,提高用户个人信息安全。
[0056]请参阅图3,图3是本发明第三实施例提供的一种数据诊断修复装置的结构示意图,为了便于说明,仅示出了与本发明实施例相关的部分。图3示例的数据诊断修复装置可以是前述第一实施例提供的一种数据诊断修复方法的执行主体,其可以是智能终端或者智能终端中的一个功能模块。图3示例的数据诊断修复装置,主要包括:检测模块301、重启模块302、新建模块303以及挂接模块304。各功能模块详细说明如下:
[0057]检测模块301,用于检测数据诊断修复任务是否被触发;
[0058]重启模块302,用于当检测模块301检测到该数据诊断修复任务被触发时,重启智能终端并进入数据诊断模式;
[0059]新建模块303,用于在该数据诊断模式下,在数据分区新建一个空目录;
[0060]挂接模块304,用于将该空目录挂接到该数据分区,使得系统通过访问该空目录启动。
[0061]上述模块实现各自功能的具体过程可参考图1所示第一实施例的相关内容,此处不再赘述。
[0062]需要说明的是,上述图3示例的数据诊断修复装置的实施方式中,各功能模块的划分仅是举例说明,实际应用中可以根据需要,例如相应硬件的配置要求或者软件的实现的便利考虑,而将上述功能分配由不同的功能模块完成,即将该装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。而且,实际应用中,本实施例中的相应的功能模块可以是由相应的硬件实现,也可以由相应的硬件执行相应的软件完成(本说明书提供的各个实施例都可应用上述描述原则,以下不再赘述)。
[0063]本发明实施例提供的一种数据诊断修复装置,通过在数据分区新建一个空目录,并利用空目录替代原有的系统根目录的功能,使得系统通过访问该空目录得以正常启动,相较于现有技术,本发明一方面实现了智能终端系统故障的自我自动诊断及修复,可迅速解决智能终端使用中的系统故障问题,节省维修成本,并具有操作简单的优点,同时可减少因送修而导致的用户个人资料泄露的可能性,提高用户个人信息安全;另一方面,由于是通过利用空目录替代原有的系统根目录的功能,因此不破坏原来的数据,且不需要新增存储分区,避免了由于系统规划时需要预留空间而导致的资源浪费。
[0064]请参阅图4,图4是本发明第四实施例提供的一种数据诊断修复装置的结构示意图,为了便于说明,仅示出了与本发明实施例相关的部分。与图3所示本发明第三实施例提供的一种数据诊断修复装置不同的是,在本实施例中:
[0065]进一步地,检测模块301,还用于检测该智能终端在启动后,是否超过预置时长仍未正常进入该系统;
[0066]该装置还包括:
[0067]任务触发模块401