本发明属于计算机领域,尤其涉及一种回收站文件存储方法及装置。
背景技术:
1、分布式文件系统已经被广泛应用到日常生活和工作中,然而用户在使用分布式文件系统的时候,可能存在误删文件的行为,从而造成无法估量的损失。因此,在分布式文件系统中,往往是通过引入文件回收站的概念,来解决误删文件的问题。即分布式文件系统在收到用户删除文件请求之后,并不是直接执行删除文件操作,而是将文件移动到回收站里面,这样,使得用户可以在回收站中找回原来的文件并进行恢复。
2、然而,目前对于分布式文件系统中的文件或者目录节点常采用的删除方式为:将被删除的节点全部移动到回收站目录,然后所有的节点平铺在回收站目录下。这样的删除方式,会使得回收站中的节点就会失去原来的目录结构信息,没有办法直接恢复成原来的目录结构。
技术实现思路
1、鉴于以上现有技术的不足,发明的目的在于提供一种回收站文件存储方法及装置,能够在回收站中保存原来的目录结构,从而使得在恢复目录的时候不需要构建目录树。
2、本发明的第一方面,提出了一种回收站文件存储方法,包括:在接收到删除文件节点请求,且开启回收站功能之后,判断回收站中是否存在以当前文件节点的文件父节点标识命名的节点;
3、若所述回收站中未存在以当前文件节点的文件父节点标识命名的节点,则创建以所述文件父节点标识命名的节点,并将所述当前文件节点下对应的文件移动到以所述文件父节点标识命名的目录下。
4、进一步地,所述方法还包括:若所述回收站中存在以当前文件节点的文件父节点标识命名的节点,则将当前文件节点对应的文件移动到以所述文件父节点标识命名的目录文件。
5、进一步地,所述方法还包括:若接收到删除目录节点请求,且开启回收站功能之后,则判断所述回收站中是否存在以当前目录节点的目录父节点标识命名的节点;
6、若所述回收站中未存在以当前目录节点的目录父节点标识命名的节点,则创建以所述目录父节点标识命名的节点;
7、判断所述回收站中是否存在以当前目录节点标识命名的节点;
8、若所述回收站中未存在以当前目录节点标识命名的节点,则将当前目录节点移动到以所述目录父节点标识命名的节点。
9、进一步地,所述方法还包括:若所述回收站中存在以当前目录节点标识命名的节点,则将与所述当前目录节点具有相同标识的目录节点进行重命名,并将重命名后的目录节点移动到以所述目录父节点标识命名的节点,删除原始目录结构中对应的节点。
10、进一步地,所述方法还包括:若所述文件父节点标识或者所述目录父节点标识中存在同名的目录标识或者文件标识,则将同名的目录标识或者同名的文件标识加上时间戳进行重命名。
11、进一步地,所述方法还包括:使用重命名接口将所述回收站中的目录节点或文件节点移动到原始文件目录结构中,以对所述回收站中的文件或者目录进行恢复。
12、进一步地,所述方法还包括:遍历所述回收站中的文件节点和目录节点;
13、若所述目录节点的修改时间超过设定时间,则删除所述目录节点下的所有节点,以对所述回收站中的过期文件进行清理。
14、本发明的第二方面,提出了一种实现回收站文件存储方法的装置,包括
15、判断模块,用于在接收到删除文件节点请求,且开启回收站功能之后,判断回收站中是否存在以当前文件节点的文件父节点标识命名的节点;
16、移动模块,用于若所述回收站中未存在以当前文件节点的文件父节点标识命名的节点,则创建以所述文件父节点标识命名的节点,并将所述当前文件节点下对应的文件移动到以所述文件父节点标识命名的目录下。
17、进一步地,所述移动模块还用于,若接收到删除目录节点请求,且开启回收站功能之后,则判断所述回收站中是否存在以当前目录节点的目录父节点标识命名的节点;
18、若所述回收站中未存在以当前目录节点的目录父节点标识命名的节点,则创建以所述目录父节点标识命名的节点;
19、判断所述回收站中是否存在以当前目录节点标识命名的节点;
20、若所述回收站中未存在以当前目录节点标识命名的节点,则将当前目录节点移动到以所述目录父节点标识命名的节点。
21、进一步地,所述移动模块还用于,若所述回收站中存在以当前目录节点标识命名的节点,则将与所述当前目录节点具有相同标识的目录节点进行重命名,并将重命名后的目录节点移动到以所述目录父节点标识命名的节点,删除原始目录结构中对应的节点。
22、本发明有益效果如下:
23、本发明所述的方法和装置,在接收到删除文件节点请求,且开启回收站功能之后,若回收站中未存在以当前文件节点的文件父节点标识命名的节点,则创建以文件父节点标识命名的节点,并将当前文件节点下对应的文件移动到以文件父节点标识命名的目录下。这样,在删除文件的时候,将当前文件节点下对应的文件移动到以文件父节点标识命名的目录下,从而可以实现在回收站中保存原来的目录结构,从而使得在恢复目录的时候不需要构建目录树。
1.一种回收站文件存储方法,其特征在于,所述方法包括:
2.根据权利要求1所述的一种回收站文件存储方法,其特征在于,所述方法还包括:
3.根据权利要求1或2所述的一种回收站文件存储方法,其特征在于,所述方法还包括:
4.根据权利要求3所述的一种回收站文件存储方法,其特征在于,所述方法还包括:
5.根据权利要求1所述的一种回收站文件存储方法,其特征在于,所述方法还包括:
6.根据权利要求1所述的一种回收站文件存储方法,其特征在于,所述方法还包括:
7.根据权利要求1所述的一种回收站文件存储方法,其特征在于,所述方法还包括:
8.一种回收站文件存储装置,其特征在于,用于实现权利要求1至7任一项所述的回收站文件存储方法,所述装置包括:
9.根据权利要求8所述的装置,其特征在于,所述移动模块还用于,
10.根据权利要求9所述的装置,其特征在于,所述移动模块还用于,若所述回收站中存在以当前目录节点标识命名的节点,则将与所述当前目录节点具有相同标识的目录节点进行重命名,并将重命名后的目录节点移动到以所述目录父节点标识命名的节点,删除原始目录结构中对应的节点。