CN115904820B - 一种失效硬盘的恢复方法及*** - Google Patents
一种失效硬盘的恢复方法及*** Download PDFInfo
- Publication number
- CN115904820B CN115904820B CN202310140057.0A CN202310140057A CN115904820B CN 115904820 B CN115904820 B CN 115904820B CN 202310140057 A CN202310140057 A CN 202310140057A CN 115904820 B CN115904820 B CN 115904820B
- Authority
- CN
- China
- Prior art keywords
- kernel
- hard disk
- firmware
- maintained
- source code
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000011084 recovery Methods 0.000 title claims abstract description 58
- 238000000034 method Methods 0.000 title claims abstract description 50
- 238000003860 storage Methods 0.000 claims description 62
- 230000008569 process Effects 0.000 claims description 19
- 238000012545 processing Methods 0.000 claims description 6
- 230000006870 function Effects 0.000 description 22
- 238000010586 diagram Methods 0.000 description 8
- 230000002159 abnormal effect Effects 0.000 description 7
- GVGLGOZIDCSQPN-PVHGPHFFSA-N Heroin Chemical compound O([C@H]1[C@H](C=C[C@H]23)OC(C)=O)C4=C5[C@@]12CCN(C)[C@@H]3CC5=CC=C4OC(C)=O GVGLGOZIDCSQPN-PVHGPHFFSA-N 0.000 description 2
- 101000711846 Homo sapiens Transcription factor SOX-9 Proteins 0.000 description 2
- 101100232371 Hordeum vulgare IAT3 gene Proteins 0.000 description 2
- 102100034204 Transcription factor SOX-9 Human genes 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000003825 pressing Methods 0.000 description 2
- 102000011727 Caspases Human genes 0.000 description 1
- 108010076667 Caspases Proteins 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Stored Programmes (AREA)
Abstract
本发明提供一种失效硬盘的恢复方法及***,具体涉及计算机技术领域,所述失效硬盘的恢复方法包括:获取操作***内核的版本信息,依据所述版本信息下载内核源码;在所述操作***内创建目录,将所述内核源码存放至所述目录;将所述硬盘芯片的固件烧录流程加入所述内核源码,并在固件烧录流程结束时,在所述内核源码内,将固件版本号打印至所述内核的日志文件中;依据所述内核源码,配置并编译所述内核,获取内核镜像;通过所述内核镜像引导待维修终端设备的***启动,完成所述待维修终端设备失效硬盘的恢复。本发明无需拆解整机,即可实现失效硬盘的恢复。
Description
技术领域
本申请涉及计算机技术领域,具体涉及一种失效硬盘的恢复方法及***。
背景技术
在计算机技术领域,操作***为终端设备硬盘控制器芯片的固件升级提供了应用程序编程接口,以此实现硬盘控制器芯片的固件升级。由于芯片厂商会在固件内设计异常操作的现场保护机制,在异常操作发生时,芯片的固件锁定在不可读、写状态。再次断电重启后,主板无法从芯片启动操作***,表现为硬盘失效。此时需要拆解整机,借助专用解焊工具,将芯片从主板解焊、烧录、再焊接。其过程繁琐、维修成本高,且耗时长。
发明内容
鉴于以上所述现有技术的缺点,本发明提供一种失效硬盘的恢复方法及***,无需拆解整机,即可实现失效硬盘的恢复。
本发明提供的一种失效硬盘的恢复方法,至少包括以下步骤:
获取操作***内核的版本信息,依据所述版本信息下载内核源码;
在所述操作***内创建目录,将所述内核源码存放至所述目录;
将所述硬盘芯片的固件烧录流程加入所述内核源码,并在所述固件烧录流程结束时,在所述内核源码内,将固件版本号打印至所述内核的日志文件中;
依据所述内核源码,配置并编译所述内核,获取内核镜像;以及
通过所述内核镜像引导待维修终端设备的***启动,完成所述待维修终端设备失效硬盘的恢复。
于本发明的一实施例中,将所述硬盘芯片的固件烧录流程加入所述内核源码,并在所述固件烧录流程结束时,在所述内核源码内,将固件版本号打印至所述内核的日志文件中的步骤包括:
获取所述硬盘芯片的固件烧录流程,并将所述固件烧录流程加入所述内核源码;
在所述固件烧录流程结束时,获取所述硬盘芯片的固件版本号,并通过信息打印函数将所述固件版本号打印至所述内核的日志文件中。
于本发明的一实施例中,所述日志文件位于内核信息缓冲区,通过所述内核信息缓冲区处理内核信息。
于本发明的一实施例中,依据所述内核源码和所述日志文件,配置并编译所述内核,获取内核镜像的步骤包括:
选取所述硬盘芯片的配置选项,依据所述内核源码配置所述内核,并生成配置文件;
依据所述配置文件编译生成内核镜像,并通过所述日志文件记录配置和编译的执行过程。
于本发明的一实施例中,所述内核源码包括驱动文件,将所述内核源码加入所述驱动文件的初始化函数内。
于本发明的一实施例中,所述驱动文件包括读取函数,通过所述读取函数获取所述硬盘芯片的固件版本号。
于本发明的一实施例中,通过所述内核镜像引导待维修终端设备的***启动,完成所述待维修终端设备失效硬盘的恢复的步骤包括:
提供一移动存储设备,并将所述移动存储设备的内核文件替换为所述内核镜像;
将所述移动存储设备***待维修终端设备,由所述移动存储设备启动所述待维修终端设备,完成所述待维修终端设备失效硬盘的恢复。
于本发明的一实施例中,将所述移动存储设备***待维修终端设备,由所述移动存储设备启动所述待维修终端设备,完成所述待维修终端设备失效硬盘的恢复的步骤包括;
将所述移动存储设备***待维修终端设备,并开启所述待维修终端设备进入基本输入输出***;
在所述基本输入输出***内查找启动标签,并在所述启动标签下设置由所述移动存储设备启动所述待维修终端设备;
所述硬盘芯片的固件烧录升级,完成所述待维修终端设备失效硬盘的恢复。
于本发明的一实施例中,所述硬盘芯片的固件烧录升级后还包括步骤:通过显示命令导出所述日志文件,查看所述固件版本号是否升级为新版本固件,若未升级为新版本固件,则查找出错原因;若升级为新版本固件,则完成所述硬盘芯片的固件烧录升级。
本发明还提供一种失效硬盘的恢复***,至少包括:
数据获取模块,获取操作***内核的版本信息,依据所述版本信息下载内核源码。
数据处理模块,在所述操作***内创建目录,将所述内核源码存放至所述目录;将硬盘芯片的固件烧录流程加入所述内核源码,并在所述固件烧录流程结束时,在所述内核源码内,将固件版本号打印至所述内核的日志文件中。
内核镜像生成模块,依据所述内核源码,配置并编译所述内核,获取内核镜像。
启动恢复模块,通过所述内核镜像引导待维修终端设备的***启动,完成所述待维修终端设备失效硬盘的恢复。
如上所述本发明提供的一种失效硬盘的恢复方法及***,通过获取的内核源码,将硬盘芯片的固件烧录流程加入获取的内核源码中,并依据所述内核源码定制生成内核镜像。将移动存储设备的内核文件替换成定制的内核镜像,并将此移动存储设备***待维修终端设备,设置由移动存储设备启动待维修终端设备,从而对待维修终端硬盘芯片固件进行烧录升级,完成失效硬盘的恢复。在本实施例中,无需拆解整机,定制的移动存储设备启动待维修终端设备,即将待维修终端设备的硬盘芯片的固件重新烧录升级,实现失效硬盘的恢复。同时,操作过程简单,维修花费低。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术者来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请的一示例性实施例示出的失效硬盘的恢复方法的实施环境图;
图2是本申请的一示例性实施例示出的失效硬盘的恢复方法的流程图;
图3是图2所示实施例中的步骤S230在一示例性的实施例中的流程图;
图4是图2所示实施例中的步骤S240在一示例性的实施例中的流程图;
图5是图2所示实施例中的步骤S250在一示例性的实施例中的流程图;
图6是图5所示实施例中的步骤S520在一示例性的实施例中的流程图;
图7是本申请的一示例性实施例示出的失效硬盘的恢复***的框图。
图中:110、待维修终端设备;120、移动存储设备;130、终端设备;710、数据获取模块;720、数据处理模块;730、内核镜像生成模块;740、启动恢复模块。
具体实施方式
以下将参照附图和优选实施例来说明本发明的实施方式,本领域技术人员可由本说明书中所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。应当理解,优选实施例仅为了说明本发明,而不是为了限制本发明的保护范围。
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
在下文描述中,探讨了大量细节,以提供对本发明实施例的更透彻的解释,然而,对本领域技术人员来说,可以在没有这些具体细节的情况下实施本发明的实施例是显而易见的,在其他实施例中,以方框图的形式而不是以细节的形式来示出公知的结构和设备,以避免使本发明的实施例难以理解。
首先需要说明的是,EMMC(Embedded MulTI Media Card)为MMC协会所订立的、主要是针对手机产品为主的内嵌式存储器标准规格。在计算机技术领域中,EMMC硬盘芯片主要焊接在终端设备的主板上,并通过windows操作***实现EMMC硬盘芯片的固件升级。在本实施例中,对于发生异常操作导致固件无法读、写,提供一种无需拆解整机的方式,实现固件的重新烧录,能够保证在节省时间和花费的情况下,实现失效硬盘的恢复。
请参阅图1所示,在本发明一实施例中,待维修终端设备110包括主板以及焊接在主板上的EMMC硬盘,通过EMMC硬盘存放***、应用和数据等,并通过windows操作***实现EMMC硬盘芯片的固件升级。当待维修终端设备110发生异常操作的情况时,待维修终端设备110的硬盘固件为无法读、写状态,待维修终端设备110的硬盘表现为失效状态。此时,通过终端设备130定制移动存储设备120,并将定制的移动存储设备120***待维修终端设备110,使得移动存储设备120与待维修终端设备110建立连接。此时,通过移动存储设备120启动待维修终端设备110,实现待维修终端设备110硬盘固件的烧录升级,以此实现待维修终端设备110的失效硬盘恢复。
请参阅图1和图2所示,在本发明一实施例中,图1所示的待维修终端设备110可以是平板电脑、笔记本电脑等终端设备,但并不限于此。图1所示的移动存储设备120,例如可以是SD卡、移动硬盘、U盘等,在本实施例中,移动存储设备120为U盘。图1所示的终端设备130可以是平板电脑、笔记本电脑等终端设备,在本实施例中,终端设备130与待维修终端设备110具有相同的硬盘芯片以及相同的硬盘芯片固件版本号。移动存储设备120通过***主机端的通用串行总线(Universal Serial Bus,USB)接口,建立待维修终端设备110与移动存储设备120之间的连接,并通过移动存储设备120启动待维修终端设备110,实现失效硬盘的恢复。图2是本申请的一示例性实施例示出的失效硬盘的恢复方法的流程图。如图2所示,本发明所述失效硬盘的恢复方法可以应用于图1所示的实施环境。
请参阅图2所示,在本发明一实施例中,失效硬盘的恢复方法至少包括步骤S210至步骤S250。其中,在步骤S210中,获取操作***内核的版本信息,依据所述版本信息下载内核源码。需要理解的是,内核是操作***最基本的部分,它是为众多应用程序提供对计算机硬件的有限的安全访问的一部分软件,并且内核决定一个程序在什么时候对某部分硬件操作多长时间。
请参阅图1所示,在本发明一实施例中,当待维修终端设备110出现异常操作情况时,硬盘固件无法读、写,硬盘表现为失效状态。此时,通过终端设备130定制移动存储设备120,采用移动存储设备120对失效硬盘进行恢复,则需要配置内核,以此定制能对待维修终端设备110硬盘固件进行重新烧录的移动存储设备120。
请参阅图1和图2所示,在本发明一实施例中,在步骤S210中,在终端设备130上安装操作***。在本实施例中,终端设备130例如为笔记本电脑。操作***为ubuntu操作***,即一个以桌面应用为主的Linux操作***,此操作***的核心为Linux内核。此时,通过uname命令获取操作***的版本信息。具体的,uname命令显示多个***信息,包括Linux内核体系结构、名称版本和发行版。当需要查看Linux内核版本信息时,打开终端窗口,执行uname -a命令,打印出所有操作***信息,其中包括Linux内核版本信息。当获取操作***内核的版本信息后,安装后续编译内核需要的依赖包,以此避免在编译内核时发生错误。在本实施例中,依赖包通过命令sudo apt-get install kernel-wedge kernel-packagelibncurses5-dev进行安装。
请参阅图1和图2所示,在本发明一实施例中,在步骤S210中,依据获取的操作***内核的版本信息,查看可以下载的内核源码版本。此时,可以登录Linux内核官方网站,进行内核源码的下载。需要理解的是,内核源码包括拥有Linux内核的多个子***的内核核心代码、其它非核心代码以及用来配置和编译的辅助文件等。通过获取的内核源码,可以进行内核的配置与编译,以此实现移动存储设备120的定制。
请参阅图1和图2所示,在本发明一实施例中,在步骤S220中,在所述操作***内创建目录,将所述内核源码存放至所述目录。在完成内核源码的下载后,将获取的内核源码解压安装在目录下。在本实施例中,在操作***内创建目录,下载内核源码,将获取的内核源码解压存放至目录中。具体的,在操作***内创建目录通过命令sudo mkdir src实现,将获取的内核源码解压存放至目录中通过命令cd src和apt-get source linux-image-$(uname -r)实现。
请参阅图1和图2所示,在本发明一实施例中,在步骤S230中,将所述硬盘芯片的固件烧录流程加入所述内核源码,并在所述固件烧录流程结束时,在所述内核源码内,将固件版本号打印至所述内核的日志文件中。需要了解的是,芯片在生产过程中,并没有写入程序。而当芯片出厂前,厂商会自定义设置烧录流程,将程序储存到芯片中。在本实施例中,由于终端设备发生操作异常,EMMC硬盘芯片固件为不可读、写状态,此时需要对固件进行重新烧录,以此对失效硬盘进行恢复。
请参阅图1至图3所示,在本发明一实施例中,当执行步骤S230时,即将所述硬盘芯片的固件烧录流程加入所述内核源码,并通过所述内核源码内的函数将固件版本号打印至所述内核。具体的,步骤S230可以包括步骤S310和步骤S320。
步骤S310,获取所述硬盘芯片的固件烧录流程,并将所述固件烧录流程加入所述内核源码。
步骤S320,在所述固件烧录流程结束时,获取所述硬盘芯片的固件版本号,并通过信息打印函数将所述固件版本号打印至所述内核的日志文件中。
请参阅图1至图3所示,在本发明一实施例中,在步骤S310中,EMMC硬盘芯片的固件在出厂时,硬盘控制器厂商会自定义烧录流程,将程序写入EMMC硬盘芯片。在本实施例中,为进行固件的重新烧录,需要获取EMMC硬盘芯片的固件烧录流程,并将获取的固件烧录流程加入到内核源码中。其中,内核源码内包括驱动文件/drivers/mmc/core/mmc.c,在驱动文件下找到初始化函数mmc_init_card( ),将获取的固件烧录流程加入到初始化函数mmc_init_card( )内。
请参阅图1至图3所示,在本发明一实施例中,在步骤S310中,具体的,将固件烧录流程加入内核源码主要是添加CMD命令序列,将相应的程序代码加入内核源码中。首先是加入命令CMD62,命令CMD62带参数0xA3B2C0D5,并加入延迟函数Delay 100ms,定义延迟250ms。接着加入命令CMD1,命令CMD1带参数0x40FF8080,并加入延迟函数Delay 100ms,定义延迟250ms。之后依次加入命令CMD2、命令CMD3、命令CMD7、命令CMD6、命令CMD6和命令CMD13,其中,依次为命令CMD2带参数0x00000000,命令CMD3带参数0x00020000,命令CMD7带参数0x00020000,命令CMD6带参数0x03b70000,命令CMD6带参数0x03b90000和命令CMD13带参数0x00020000。再然后,加入命令CMD25,命令CMD25带参数0x000001E3,其中Block数量BlkCnt =2,数据内容Pattern = 0x0D。最后,依次加入命令CMD12和命令CMD13,其中命令CMD12带参数0x00020000,命令CMD13带参数0x00020000。
请参阅图1至图3所示,在本发明一实施例中,在步骤S320中,内核源码内包括驱动文件/drivers/mmc/core/mmc.c,在驱动文件下找到读取函数mmc_read_ext_csd( ),通过读取函数mmc_read_ext_csd( )可以获取硬盘芯片的固件版本号。其中,硬盘芯片包括多个寄存器,获取硬盘芯片的固件版本号FIRMWARE_VERSION即获取寄存器值Ext_CSD[261:254]。此时,通过信息打印函数printk将固件版本号FIRMWARE_VERSION打印至内核的日志文件中,即将寄存器值Ext_CSD[261:254]打印至内核的日志文件中。具体的,信息打印函数printk是在内核源码中用来记录日志信息的函数,只能在内核源码范围内使用,可以将信息记录到内核中,并调用控制台驱动来将信息输出。内核的日志文件为内核log,其位于内核信息缓冲区log ring buffer内,信息打印函数printk将固件版本号打印至内核的日志文件中,即将内核信息输出到内核信息缓冲区log ring buffer中。
请参阅图1和图2,以及图4所示,本发明所述失效硬盘的恢复方法包括步骤S240。在步骤S240中,依据所述内核源码,配置并编译所述内核,获取内核镜像。当完成内核源码的准备工作后,首先进行内核的配置,依据开发需求选取相应的模块。最终将源代码编译成程序,获取得到定制的内核镜像。如图4所示,在一示例性的实施例中,当执行步骤S240时,即依据所述内核源码和所述日志文件,配置并编译所述内核,获取内核镜像。具体的,步骤S240可以包括步骤S410和步骤S420。
步骤S410,选取所述硬盘芯片的配置选项,依据所述内核源码配置所述内核,并生成配置文件。
步骤S420,依据所述配置文件编译生成内核镜像,并通过所述日志文件记录配置和编译的执行过程。
请参阅图1和图2,以及图4所示,在步骤S410中,当需要进行内核配置时,首先进入存放内核源码的目录内,接着进行内核的配置。具体的,通过命令cd linux-$(uname -r)和make menuconfig实现。其中,在进行内核配置时,存在多个配置选项,进行针对性的选择,能够在不影响***工作的情况下,有效减小定制内核镜像的体积。在本实施例中,选取EMMC硬盘芯片的配置选项,即选取EMMC硬盘芯片模块进行内核配置,并最终完成内核配置,生成配置文件。
请参阅图1和图2,以及图4所示,在步骤S420中,当完成内核配置时,退出配置界面,并依据配置生成的配置文件进行内核编译。在本实施例中,采用多线程进行编译,能够有效提高编译效率,减少编译时间。具体的,通过命令sudo make -j8实现,最终编译生成定制的内核镜像zImage,并存放在目录/linux/arch/arm/boot/zImage内。
请参阅图1和图2,以及图5所示,本发明所述失效硬盘的恢复方法包括步骤S250。在步骤S250中,通过所述内核镜像引导待维修终端设备110的***启动,完成待维修终端设备110的失效硬盘恢复。在本实施例中,通过定制的内核镜像引导待维修终端设备110的windows***启动,实现待维修终端设备110的硬盘芯片固件的烧录升级,以此完成待维修终端设备110的失效硬盘恢复。如图5所示,在一示例性的实施例中,当执行步骤S250时,即通过所述内核镜像引导待维修终端设备110的***启动,完成待维修终端设备110的失效硬盘恢复。具体的,步骤S250可以包括步骤S510和步骤S520。
步骤S510,提供一移动存储设备,并将所述移动存储设备的内核文件替换为所述内核镜像。
步骤S520,将所述移动存储设备***待维修终端设备,由所述移动存储设备启动所述待维修终端设备,完成所述待维修终端设备失效硬盘的恢复。
请参阅图1和图2,以及图5所示,在本发明一实施例中,在终端设备上安装ubuntu操作***,通过获取的内核源码定制生成内核镜像zImage,因此制作同版本的ubuntu移动存储设备120,以此进行待维修终端设备110的启动。其中,在本实施例中,移动存储设备120为U盘,在其它设置例中,可以采用其它具有存储功能的设备。在安装ubuntu操作***的终端设备上下载启动盘制作工具Rufus。当下载完成后,将移动存储设备120***安装ubuntu操作***的终端设备中,运行Rufus.exe程序,选择***的移动存储设备120,并选择下载的ubunut.iso镜像文件进行配置,最终完成ubuntu启动U盘的制作,即同版本的ubuntu移动存储设备120。其中,镜像文件的目录/casper下包括内核文件vmlinuz。此时,删除内核文件vmlinuz,将定制的内核镜像zImage拷贝到目录/casper下,即将移动存储设备120的内核文件vmlinuz替换为所述内核镜像zImage。
请参阅图1和图2,以及图5和图6所示,在本发明一实施例中,当操作******发生操作异常,EMMC硬盘芯片的固件表现为不可读写状态时,再次断电重启后,EMMC硬盘芯片变为不可用状态,表现为EMMC硬盘失效。此时,将定制的移动存储设备120作为待维修终端设备110的启动盘,即可实现待维修终端设备110的EMMC硬盘芯片固件的重新烧录,表现为EMMC硬盘为可用状态,操作***即可正常使用。如图6所示,在一示例性的实施例中,当执行步骤S520时,即将所述移动存储设备120***待维修终端设备110,由所述移动存储设备120启动所述待维修终端设备110,完成所述待维修终端设备110的失效硬盘恢复。具体的,步骤S520可以包括步骤S610至步骤S630。
步骤S610,将所述移动存储设备***待维修终端设备,并开启所述待维修终端设备进入基本输入输出***。
步骤S620,在所述基本输入输出***内查找启动标签,并在所述启动标签下设置由所述移动存储设备启动所述待维修终端设备。
步骤S630,所述硬盘芯片的固件烧录升级,完成所述待维修终端设备失效硬盘的恢复。
请参阅图1和图2,以及图6所示,在本发明一实施例中,对于硬盘失效的待维修终端设备110,***定制的待维修终端设备110,即将U盘***硬盘失效的电脑上。此时,按待维修终端设备110的开机键,开启待维修终端设备110。同时,当看到开机图标后,按F2或Delete等其它键,待维修终端设备110进入基本输入输出***(Basic Input OutputSystem,BIOS)。
请参阅图1和图2,以及图6所示,在本发明一实施例中,当进入基本输入输出***BIOS界面后,在BIOS界面内查找启动标签Boot,在启动标签Boot可以进行启动项的设置。具体的,在设置启动项Set Boot Priority里设置由移动存储设备120启动待维修终端设备110,最后保存此启动项的选择,并退出BIOS界面。
请参阅图1和图2,以及图6所示,在本发明一实施例中,在完成启动项的设置后,待维修终端设备110由移动存储设备120启动,当移动存储设备120内的操作***ubuntu启动完成后,完成EMMC硬盘芯片的固件重新烧录,即EMMC硬盘芯片升级为新版本固件。在本实施例中,EMMC硬盘芯片的固件烧录升级后,需要通过显示命令dmesg导出日志文件,即导出内核log,以此查看EMMC硬盘芯片的固件版本号Ext_CSD[261:254]是否升级为新版本固件,若未升级为新版本固件,则查找出错原因,若升级为新版本固件,则完成EMMC硬盘芯片的固件烧录升级。
请参阅图1至图6所示,将***待维修终端设备110的移动存储设备120拔下,重新启动待维修终端设备110。此时,主板能够识别EMMC硬盘,EMMC硬盘表现为恢复状态。Windows***能正常启动,未表现为操作异常,此时,EMMC硬盘芯片的固件为可用状态,能够进行正常的读写。因此,通过定制移动存储设备120启动待维修终端设备110,进行硬盘芯片固件的烧录升级,完成了失效硬盘的恢复。
图7是本申请的一示例性实施例示出的失效硬盘的恢复***的结构框图。该***可以应用在图1所示的实施环境中,并具体分别配置在待维修终端设备110和终端设备130中。该***也可以适用于其它的示例性实施环境,并具体配置在其它设备中,本实施例不对该***所适用的实施环境进行限制。
请参阅图1和图7所示,该示例性的失效硬盘的恢复***至少包括数据获取模块710、数据处理模块720、内核镜像生成模块730和启动恢复模块740,其中,数据获取模块710获取操作***内核的版本信息,依据版本信息下载内核源码。数据处理模块720在操作***内创建目录,将内核源码存放至目录,且数据处理模块720将硬盘芯片的固件烧录流程加入内核源码,并在固件烧录流程结束时,在内核源码内,将固件版本号打印至内核的日志文件中。内核镜像生成模块730依据内核源码,配置并编译内核,获取内核镜像。启动恢复模块740通过内核镜像引导待维修终端设备110的***启动,完成待维修终端设备110的失效硬盘恢复。
需要说明的是,上述实施例所提供的失效硬盘的恢复***与上述实施例所提供的失效硬盘的恢复方法属于同一构思,其中各个模块和单元执行操作的具体方式已经在方法实施例中进行了详细描述,此处不再赘述。上述实施例所提供的通讯网络接口的生成***在实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将***的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能,本处也不对此进行限制。
综上所述,通过获取的内核源码,将EMMC硬盘芯片的固件烧录流程加入获取的内核源码中,在安装ubuntu操作***的终端设备上配置并编译Linux内核,从而定制内核镜像。将移动存储设备120的内核文件替换成定制的内核镜像,并将此移动存储设备***待维修终端设备,设置由移动存储设备启动待维修终端设备,从而对待维修终端设备的EMMC硬盘芯片固件进行烧录升级,完成失效硬盘的恢复,使得硬盘芯片为可用状态,EMMC硬盘芯片可以进行正常的读、写。在本实施例中,无需拆解整机,将EMMC硬盘芯片从主板上解焊下。通过定制的移动存储设备即可实现硬盘芯片的烧录升级,同时实施过程简单、花费低。
附图中的流程图和框图,图示了按照本申请各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
上述实施例仅示例性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,但凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
Claims (9)
1.一种失效硬盘的恢复方法,其特征在于,至少包括以下步骤:
获取操作***内核的版本信息,依据所述版本信息下载内核源码;
在所述操作***内创建目录,将所述内核源码存放至所述目录;
提供一硬盘芯片,并将所述硬盘芯片的固件烧录流程加入所述内核源码,并在所述固件烧录流程结束时,在所述内核源码内,将固件版本号打印至所述内核的日志文件中;
依据所述内核源码,配置并编译所述内核,获取内核镜像;以及
通过所述内核镜像引导待维修终端设备的***启动,完成所述待维修终端设备失效硬盘的恢复;
其中,所述待维修终端设备失效硬盘的恢复步骤包括:由移动存储设备启动所述待维修终端设备,实现所述待维修终端设备的硬盘芯片的固件烧录升级,并完成所述待维修终端设备失效硬盘的恢复;
其中,所述硬盘芯片的固件烧录升级后还包括步骤:通过显示命令导出所述日志文件,查看所述固件版本号是否升级为新版本固件,若未升级为新版本固件,则查找出错原因,若升级为新版本固件,则完成所述硬盘芯片的固件烧录升级。
2.根据权利要求1所述的失效硬盘的恢复方法,其特征在于,将所述硬盘芯片的固件烧录流程加入所述内核源码,并在所述固件烧录流程结束时,在所述内核源码内,将固件版本号打印至所述内核的日志文件中的步骤包括:
获取所述硬盘芯片的固件烧录流程,并将所述固件烧录流程加入所述内核源码;
在所述固件烧录流程结束时,获取所述硬盘芯片的固件版本号,并通过信息打印函数将所述固件版本号打印至所述内核的日志文件中。
3.根据权利要求1所述的失效硬盘的恢复方法,其特征在于,所述日志文件位于内核信息缓冲区,通过所述内核信息缓冲区处理内核信息。
4.根据权利要求1所述的失效硬盘的恢复方法,其特征在于,依据所述内核源码和所述日志文件,配置并编译所述内核,获取内核镜像的步骤包括:
选取所述硬盘芯片的配置选项,依据所述内核源码配置所述内核,并生成配置文件;
依据所述配置文件编译生成内核镜像,并通过所述日志文件记录配置和编译的执行过程。
5.根据权利要求1所述的失效硬盘的恢复方法,其特征在于,所述内核源码包括驱动文件,将所述硬盘芯片的固件烧录流程加入所述驱动文件的初始化函数内。
6.根据权利要求5所述的失效硬盘的恢复方法,其特征在于,所述驱动文件包括读取函数,通过所述读取函数获取所述硬盘芯片的固件版本号。
7.根据权利要求1所述的失效硬盘的恢复方法,其特征在于,通过所述内核镜像引导待维修终端设备的***启动,完成所述待维修终端设备失效硬盘的恢复的步骤包括:
提供一移动存储设备,并将所述移动存储设备的内核文件替换为所述内核镜像;
将所述移动存储设备***待维修终端设备,由所述移动存储设备启动所述待维修终端设备,完成所述待维修终端设备失效硬盘的恢复。
8.根据权利要求7所述的失效硬盘的恢复方法,其特征在于,将所述移动存储设备***待维修终端设备,由所述移动存储设备启动所述待维修终端设备,完成所述待维修终端设备失效硬盘的恢复的步骤包括;
将所述移动存储设备***待维修终端设备,并开启所述待维修终端设备进入基本输入输出***;
在所述基本输入输出***内查找启动标签,并在所述启动标签下设置由所述移动存储设备启动所述待维修终端设备;
所述硬盘芯片的固件烧录升级,完成所述待维修终端设备失效硬盘的恢复。
9.一种失效硬盘的恢复***,其特征在于,至少包括:
数据获取模块,获取操作***内核的版本信息,依据所述版本信息下载内核源码;
数据处理模块,在所述操作***内创建目录,将所述内核源码存放至所述目录;提供一硬盘芯片,并将所述硬盘芯片的固件烧录流程加入所述内核源码,并在所述固件烧录流程结束时,在所述内核源码内,将固件版本号打印至所述内核的日志文件中;
内核镜像生成模块,依据所述内核源码,配置并编译所述内核,获取内核镜像;以及
启动恢复模块,通过所述内核镜像引导待维修终端设备的***启动,完成所述待维修终端设备失效硬盘的恢复;
其中,所述待维修终端设备失效硬盘的恢复步骤包括:由移动存储设备启动所述待维修终端设备,实现所述待维修终端设备的硬盘芯片的固件烧录升级,并完成所述待维修终端设备失效硬盘的恢复;
其中,所述硬盘芯片的固件烧录升级后还包括步骤:通过显示命令导出所述日志文件,查看所述固件版本号是否升级为新版本固件,若未升级为新版本固件,则查找出错原因,若升级为新版本固件,则完成所述硬盘芯片的固件烧录升级。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310140057.0A CN115904820B (zh) | 2023-02-21 | 2023-02-21 | 一种失效硬盘的恢复方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310140057.0A CN115904820B (zh) | 2023-02-21 | 2023-02-21 | 一种失效硬盘的恢复方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115904820A CN115904820A (zh) | 2023-04-04 |
CN115904820B true CN115904820B (zh) | 2023-06-16 |
Family
ID=86488395
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310140057.0A Active CN115904820B (zh) | 2023-02-21 | 2023-02-21 | 一种失效硬盘的恢复方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115904820B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105590072A (zh) * | 2015-12-18 | 2016-05-18 | 上海华测导航技术股份有限公司 | 一种实现嵌入式***自动烧录的方法 |
CN113094059A (zh) * | 2021-04-13 | 2021-07-09 | 深圳市研强物联技术有限公司 | 一种固件***数据的传输方法及其烧录装置 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7055148B2 (en) * | 2000-12-07 | 2006-05-30 | Hewlett-Packard Development Company, L.P. | System and method for updating firmware |
CN1297907C (zh) * | 2003-03-31 | 2007-01-31 | 联想(北京)有限公司 | 一种计算机硬盘数据恢复和备份的实现方法 |
CN101038551A (zh) * | 2006-03-16 | 2007-09-19 | 南京大学 | 在移动硬盘上实现启动Linux操作***的方法 |
CN102033770B (zh) * | 2010-12-17 | 2015-01-28 | 中兴通讯股份有限公司 | 移动终端的触摸屏固件升级方法及装置 |
US8732527B2 (en) * | 2011-08-16 | 2014-05-20 | Google Inc. | Secure recovery apparatus and method |
US11243782B2 (en) * | 2016-12-14 | 2022-02-08 | Microsoft Technology Licensing, Llc | Kernel soft reset using non-volatile RAM |
TWI712045B (zh) * | 2020-01-16 | 2020-12-01 | 慧榮科技股份有限公司 | 資料儲存裝置修復方法 |
CN113268366A (zh) * | 2020-02-17 | 2021-08-17 | 斑马智行网络(香港)有限公司 | 内核运行方法、设备和*** |
CN114625389A (zh) * | 2020-12-14 | 2022-06-14 | 北京配天技术有限公司 | 嵌入式设备升级方法、嵌入式设备及存储装置 |
-
2023
- 2023-02-21 CN CN202310140057.0A patent/CN115904820B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105590072A (zh) * | 2015-12-18 | 2016-05-18 | 上海华测导航技术股份有限公司 | 一种实现嵌入式***自动烧录的方法 |
CN113094059A (zh) * | 2021-04-13 | 2021-07-09 | 深圳市研强物联技术有限公司 | 一种固件***数据的传输方法及其烧录装置 |
Also Published As
Publication number | Publication date |
---|---|
CN115904820A (zh) | 2023-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100778293B1 (ko) | 디지털방송처리장치 및 디지털방송처리장치 부트로더의업그레이드 방법 | |
KR101856284B1 (ko) | 장치의 초기화 동안 펌웨어의 백업 | |
CN104123153A (zh) | 用于使用usb升级固件的装置与方法 | |
US20110004871A1 (en) | Embedded electronic device and firmware updating method thereof | |
CN110413230B (zh) | 一种嵌入式***构建方法及存储介质 | |
JP2009048649A (ja) | カスタムソフトウェア画像をコンピュータシステムへ供給する方法およびシステム | |
CN111562934B (zh) | 一种基于热补丁的软件***升级方法、终端及存储介质 | |
US20080098381A1 (en) | Systems and methods for firmware update in a data processing device | |
US20080270685A1 (en) | Information processing apparatus and firmware updating method | |
CN101021797A (zh) | 一种用于嵌入式***的软件修复和升级方法 | |
US7337359B2 (en) | System and method for recovering a device state | |
US20040199911A1 (en) | Apparatus and method for upgrading execution code of the portable memory device | |
CN102479121A (zh) | 独立磁盘冗余阵列实现及测试方法 | |
CN102053848A (zh) | Linux操作***的自动安装方法 | |
CN114756290A (zh) | 一种操作***安装方法、设备及可读存储介质 | |
CN113377586B (zh) | 一种服务器自动化检测方法、装置及存储介质 | |
CN100361075C (zh) | 应用自动编译框架来快速开发嵌入式***的方法及装置 | |
CN115904820B (zh) | 一种失效硬盘的恢复方法及*** | |
CN116954674A (zh) | eMMC固件升级方法、固件升级设备和存储装置 | |
KR20180023575A (ko) | 펌웨어 자동 업데이트 방법 및 이의 방법을 기록한 컴퓨터 판독 가능한 기록 매체 | |
EP4296860A1 (en) | Method for running startup program of electronic device, and electronic device | |
CN111258617B (zh) | 一种电子设备 | |
CN114510375A (zh) | 一种Flash芯片数据区域动态共享***及方法 | |
CN113778485A (zh) | 电子芯片的***运行方法、装置、电子芯片和存储介质 | |
CN112667444A (zh) | 一种***升级方法、存储介质及终端设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |