System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及计算机,特别是涉及孤儿节点处理方法、装置、操作系统、电子设备,以及计算机可读存储介质。
技术介绍
1、在现有的linux操作系统中,当使用容器时,通常采用overlay文件系统作为容器使用的文件系统。容器的镜像通常使用层级结构,每层只保存与上层的差异之处,最上层是一个可写层,当前容器改写的内容都记录在可写层。overlay文件系统通过将多个目录挂载到同一个根目录实现上述的层级结构。overlay文件系统在长期运行后,有可能因为遇到容器内业务系统出错等情况,导致overlay文件系统的可写层对应的文件中出现孤儿节点。例如,容器内的进程打开了可写层的文件并做读写等操作,在容器内进程遇到错误异常退出时,可能导致没有正确关闭可写层所对应的底层文件系统上的文件,使得文件对应的inode(索引节点)的计数无法减记,之后清理容器文件时,这个没有关闭的文件的计数不为0,不会从磁盘上删除,成为永久的孤儿文件。记录孤儿文件的索引节点则为孤儿节点。
2、现有技术中,linux操作系统的指令无法准确识别系统中是否存在以及存在多少上述的孤儿节点,如果想释放这类孤儿文件占用的空间,只能通过重启系统完成,而正式运行的业务系统,通常都要避免重启操作。
技术实现思路
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.根据权利要求2所述的方法,其特征在于,所述遍历所述设备信息对应的文件系统中的孤儿节点的链表,获取所述文件系统中待筛选的孤儿节点的第一列表,包括:
4.根据权利要求2所述的方法,其特征在于,所述基于所述设备信息对应的文件系统中的分配组和索引节点信息,获取所述文件系统中的待筛选的孤儿节点的第一列表,包括:
5.根据权利要求4所述的方法,其特征在于,所述根据所述分配组对应的分配组内索引节点所在块的偏移和索引节点的块内偏移,获取每个所述分配组中的全部孤儿节点,包括:
6.根据权利要求1所述的方法,其特征在于,所述对所述目标孤儿节点进行清理,包括:
7.一种孤儿节点处理装置,其特征在于,所述装置包括:
8.一种操作系统,其特征在于,包括:
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在处理器上运行的程序代码,其
10.一种计算机可读存储介质,其上存储有程序代码,其特征在于,该程序代码被处理器执行时实现权利要求1至6任意一项所述的孤儿节点处理方法的步骤。
...【技术特征摘要】
1.一种孤儿节点处理方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述获取所述设备信息对应的文件系统中待筛选的孤儿节点的第一列表,包括:
3.根据权利要求2所述的方法,其特征在于,所述遍历所述设备信息对应的文件系统中的孤儿节点的链表,获取所述文件系统中待筛选的孤儿节点的第一列表,包括:
4.根据权利要求2所述的方法,其特征在于,所述基于所述设备信息对应的文件系统中的分配组和索引节点信息,获取所述文件系统中的待筛选的孤儿节点的第一列表,包括:
5.根据权利要求4所述的方法,其特征在于,所述根据所述分配组对应的分配组内索引节点所在块的偏移和...
【专利技术属性】
技术研发人员:请求不公布姓名,请求不公布姓名,
申请(专利权)人:中科方德软件有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。