文件备份的方法及装置制造方法及图纸

技术编号:7074950 阅读:221 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种文件备份的方法及装置,属于计算机系统领域。所述方法包括:解析进程当前使用的无链接文件的全路径名;创建所述无链接文件的临时目录项,并用标识标记所述临时目录项的全路径名;建立所述标记过的临时目录项的全路径名和所述无链接文件在内存中的副本的索引节点之间的对应关系,以及所述标记过的临时目录项的全路径名和所述无链接文件的全路径名之间的对应关系;将所述标记过的临时目录项的全路径名保存到镜像文件中,完成所述无链接文件的备份。本发明专利技术通过正确解析出无链接文件的全路径名以及创建该无链接文件的临时目录项实现了对无链接文件的备份。

【技术实现步骤摘要】

本专利技术涉及计算机系统领域,特别涉及一种文件备份的方法及装置
技术介绍
在Linux操作系统中对文件的操作是通过操作权限来管理的,基本的操作权限包括读(read)、写(write)和执行(execute)。对于磁盘上的文件而言,并不是以独占的方式被使用,即使是一个正在被使用的文件,只要某一个进程具有该文件所在目录的写权限和执行权限,那么该文件及其目录项是可以被该进程删除的。这种磁盘上的源文件及其目录项已被删除、但在内存中的副本仍然被进程使用的文件就被称为无链接(unlinked)文件。 对于unlinked文件,虽然在内存中仍然可以被进程使用,但是已经无法再通过它的全路径名访问到该文件。例如,在网络文件系统(Network File System,NFS)中,一台客户机上的进程A删除了服务器上正在被另一台客户机上的进程B使用的文件的场景众多,这样就会产生很多unlinked文件。现有Linux环境下的应用程序备份和还原系统中,在备份时,遍历进程当前打开的文件的文件表,将文件表中每一个文件的元数据信息及文件的全路径名保存到镜像文件中;在还原时,根据保存在镜像文件中的元数据信息和全路径名还原出所有文件。但是,现有技术在备份时,针对上述进程正在使用的unlinked文件,由于目前内核不支持对unlinked文件的全路径名的解析,因此无法获取unlinked文件的全路径名,所以现有技术无法实现对unlinked文件的备份。
技术实现思路
为了实现对unlinked文件的备份,本专利技术实施例提供了一种文件备份的方法及装置,技术方案如下一方面,提供了一种文件备份的方法,所述方法包括解析进程当前使用的无链接文件的全路径名;创建所述无链接文件的临时目录项,并用标识标记所述临时目录项的全路径名;建立所述标记过的临时目录项的全路径名和所述无链接文件在内存中的副本的索引节点之间的对应关系,以及所述标记过的临时目录项的全路径名和所述无链接文件的全路径名之间的对应关系;将所述标记过的临时目录项的全路径名保存到镜像文件中,完成所述无链接文件的备份。另一方面,提供了一种文件备份的装置,所述装置包括备份模块;所述备份模块包括解析单元,用于解析进程当前使用的无链接文件的全路径名;创建单元,用于创建所述无链接文件的临时目录项,并用标识标记所述临时目录项的全路径名;对应关系管理单元,用于建立所述创建单元标记过的临时目录项的全路径名和所述无链接文件在内存中的副本的索引节点之间的对应关系,以及所述创建单元标记过的临时目录项的全路径名和所述解析单元解析的无链接文件的全路径名之间的对应关系;保存单元,用于将所述创建单元标记过的临时目录项的全路径名保存到镜像文件中,完成所述无链接文件的备份。本专利技术实施例提供的技术方案带来的有益效果是通过正确解析出无链接文件的全路径名,并创建该无链接文件的临时目录项,进而通过建立该临时目录项的全路径名和该无链接文件在内存中的副本的索引节点之间的对应关系、以及和该无链接文件的全路径名之间的对应关系,实现了对无链接文件的备份, 弥补了 Linux环境下的应用程序备份和还原系统中对进程使用的无链接文件的无法备份这一功能缺口,提升了应用程序备份和还原系统的功能完整性。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例一提供的文件备份的方法流程图;图2是本专利技术实施例二提供的文件备份的方法流程图;图3是本专利技术实施例二提供的文件还原的方法流程图;图4是本专利技术实施例三提供的文件备份的装置结构示意图;图5是本专利技术实施例三提供的备份模块的结构示意图;图6是本专利技术实施例三提供的还原模块的结构示意图;图7是本专利技术实施例三提供的另一种还原模块的结构示意图。具体实施例方式为使本专利技术的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术实施方式作进一步地详细描述。实施例一本专利技术实施例提供了一种文件备份的方法,参见图1,方法流程包括101 解析进程当前使用的unlinked文件的全路径名;102 创建该unlinked文件的临时目录项,并用标识标记该临时目录项的全路径名;103 建立该标记过的临时目录项的全路径名和该unlinked文件在内存中的副本的索引节点之间的对应关系,以及该标记过的临时目录项的全路径名和该unlinked文件的全路径名之间的对应关系;104 将该标记过的临时目录项的全路径名保存到镜像文件中,完成该unlinked 文件的备份。本专利技术实施例提供的方法,通过正确解析出unlinked文件的全路径名,并创建该unlinked文件的临时目录项,进而通过建立该临时目录项的全路径名和该unlinked文件在内存中的副本的索引节点之间的对应关系、以及和该unlinked文件的全路径名之间的对应关系,实现了对unlinked文件的备份,弥补了 Linux环境下的应用程序备份和还原系统中对进程使用的unlinked文件的无法备份这一功能缺口,提升了应用程序备份和还原系统的功能完整性。实施例二本专利技术实施例提供了一种文件备份和还原的方法,用于实现对进程正在使用的 unlinked文件的备份和还原。在备份时,参见图2,文件备份的方法包括201 解析进程当前使用的unlinked文件的全路径名;具体地,现有应用程序备份和还原系统在备份时,文件的全路径名解析算法d_ path不支持对unlinked文件的全路径名解析,这是因为该算法会对要解析的文件做一个 unlinked判断,当判定要解析的文件是一个unlinked文件时,该算法会认为unlinked文件的路径名解析是无意义的,进而就会拒绝解析这个unlinked文件的全路径名。本专利技术实施例提供的方法,可以在该系统中自定义一套全路径名解析算法,该全路径名解析算法可以在d_path算法的基础上进行改进得到,即在解析文件的全路径名时不去判断该要解析的文件是不是unlinked文件,而是直接解析该文件的全路径名。该算法解析unlinked文件的全路径名的方式具体可以是从内存中与该unlinked文件相关的数据结构中获取该 unlinked文件的每一层路径名;逐层将获取的每一层路径名用路径分割符“/”拼接起来, 得到该unlinked文件的全路径名。例如,解析出的该unlinked文件的全路径名为“/root/ fileA”。202 创建该unlinked文件的临时目录项,并用标识标记该临时目录项的全路径名;具体地,虽然解析出了该unlinked文件的全路径名,但此时根据该全路径名已经无法获取文件信息,因此,在该unlinked文件所属的文件系统的某一目录下创建一个临时目录项,用于替代该imlinked文件的全路径名,以便能够正确获取到该imlinked文件的文件信息。例如,创建的临时目录项的全路径名为“/root/. tmpjnlinked/fileA”。进一步地,创建好该临时目录项后,用标识标记该临时目录项的全路径名,该标识用于表示该全路径名是一个临时替代的全路径名,以便在还原时能够被本文档来自技高网...

【技术保护点】
1.一种文件备份的方法,其特征在于,所述方法包括:解析进程当前使用的无链接文件的全路径名;创建所述无链接文件的临时目录项,并用标识标记所述临时目录项的全路径名;建立所述标记过的临时目录项的全路径名和所述无链接文件在内存中的副本的索引节点之间的对应关系,以及所述标记过的临时目录项的全路径名和所述无链接文件的全路径名之间的对应关系;将所述标记过的临时目录项的全路径名保存到镜像文件中,完成所述无链接文件的备份。

【技术特征摘要】

【专利技术属性】
技术研发人员:顾政
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:94

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1