一种文件系统的ACL权限设置方法、装置、设备及介质与流程

文档序号:16135147发布日期:2018-12-01 00:51阅读:246来源:国知局

本发明涉及系统配置领域,特别是涉及一种文件系统的acl权限设置方法、装置、设备及介质。

背景技术

随着大数据时代的到来,企业所使用的linux文件系统中的数据量往往异常庞大,进而文件系统的目录层级相对较多,每一层级的目录中均可能存在文件,因此进行目录或文件操作权限的控制是文件系统中的重要环节,当前通常使用acl(accesscontrollist)访问控制列表对文件以及目录的访问权限进行设置。

acl权限分为access类型权限以及default类型权限,access类型权限以及default类型权限中均包含“w”写权限、“r”读权限以及“x”执行权限等约束用户使用的权限。access类型权限应用于目录及文件并且作用于当前已存在的文件或目录,而default类型权限仅应用于目录并且作用于该目录下尚未生成的文件或目录,即对目录进行default类型权限的设置后,该目录中新生成的文件或目录均将具有该default类型权限。当前对文件系统进行acl权限设置时,需要分别单独进行access类型权限的设置以及default类型权限的设置,而在进行access类型权限或default类型权限的设置时,均需要对文件系统各级目录以及文件进行遍历,由于当前的文件系统中的文件数量往往较多,因此当前的acl权限设置方法会产生较大的时间开销,降低了整体的执行效率。

由此可见,提供一种文件系统的acl权限设置方法,以相对减少进行acl权限设置过程中的时间开销,提高整体的执行效率,是本领域技术人员亟待解决的问题。



技术实现要素:

本发明的目的是提供一种文件系统的acl权限设置方法、装置、设备及介质,以相对减少进行acl权限设置过程中的时间开销,提高整体的执行效率。

为解决上述技术问题,本发明提供一种文件系统的acl权限设置方法,包括:

对目标文件系统中的预设目录进行遍历操作;

当进行遍历操作的过程中搜索到文件时,在文件对应的acl中设置既定的access类型权限;

当进行遍历操作的过程中搜索到目录路径时,在目录路径对应的acl中设置既定的access类型权限以及既定的default类型权限;

将acl中的内容写入目标文件系统的磁盘以使设置内容生效。

优选的,在文件对应的acl中设置既定的access类型权限具体为:

在文件对应的acl中设置指定用户的access类型权限;

相应的,在目录路径对应的acl中设置既定的access类型权限以及既定的default类型权限具体为:

在目录路径对应的acl中设置指定用户的access类型权限以及default类型权限。

优选的,在文件对应的acl中设置指定用户的access类型权限前,该方法进一步包括:

判断指定用户的相关信息是否预先被登记于文件对应的acl中;

如果是,则执行在文件对应的acl中设置指定用户的access类型权限的步骤;

否则,在文件对应的acl中新增指定用户的相关信息,并执行在文件对应的acl中设置指定用户的access类型权限的步骤;

相应的,在目录路径对应的acl中设置指定用户的access类型权限以及default类型权限前,该方法进一步包括:

判断指定用户的相关信息是否预先被登记于目录路径对应的acl中;

如果是,则执行在目录路径对应的acl中设置指定用户的access类型权限以及default类型权限的步骤;

否则,在目录路径对应的acl中新增指定用户的相关信息,并执行在目录路径对应的acl中设置指定用户的access类型权限以及default类型权限的步骤。

优选的,当判定指定用户的相关信息预先被登记于文件对应的acl中时,该方法进一步包括:

判断指定用户对应的当前权限是否与既定的access类型权限存在差异;

如果是,则执行在文件对应的acl中设置指定用户的access类型权限的步骤;

相应的,当判定指定用户的相关信息预先被登记于目录路径对应的acl中时,该方法进一步包括:

判断指定用户对应的当前权限是否与access类型权限以及default类型权限存在差异;

如果是,则执行在目录路径对应的acl中设置指定用户的access类型权限以及default类型权限的步骤。

优选的,在对目标文件系统中的预设目录进行遍历操作后,该方法进一步包括:

对预设目录下,目录路径与文件之间的从属关系进行统计,并生成目录树以记录至日志中。

此外,本发明还提供一种文件系统的acl权限设置装置,包括:

遍历模块,用于对目标文件系统中的预设目录进行遍历操作;

第一处理模块,用于当进行遍历操作的过程中搜索到文件时,在文件对应的acl中设置既定的access类型权限;

第二处理模块,用于当进行遍历操作的过程中搜索到目录路径时,在目录路径对应的acl中设置既定的access类型权限以及既定的default类型权限;

生效模块,用于将acl中的内容写入目标文件系统的磁盘以使设置内容生效。

优选的,该装置进一步包括:

统计模块,用于对预设目录下,目录路径与文件之间的从属关系进行统计,并生成目录树以记录至日志中。

此外,本发明还提供一种文件系统的acl权限设置设备,包括:

存储器,用于存储计算机程序;

处理器,用于执行计算机程序时实现如上述的文件系统的acl权限设置方法的步骤。

此外,本发明还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述的文件系统的acl权限设置方法的步骤。

本发明所提供的文件系统的acl权限设置方法,首先对目标文件系统中的预设目录进行遍历操作以获取预设目录下的文件以及目录路径,进而当遍历操作的过程中搜索到文件时,在该文件对应的acl中设置access类型权限,当遍历操作的过程中搜索到目录路径时,在该目录路径对应的acl中同时设置access类型权限以及default类型权限,最终通过将acl中的内容写入目标文件系统的磁盘以使acl中的设置内容生效。可见,本方法实现了在对目标文件系统的一次遍历中同时设置access类型权限以及default类型权限的操作,因此相比于现有技术,本方法减少了对文件系统进行遍历的次数,进而相对减少了进行acl权限设置过程中的时间开销,提高了整体的执行效率。此外,本发明还提供一种文件系统的acl权限设置装置、设备及介质,有益效果同上所述。

附图说明

为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种文件系统的acl权限设置方法的流程图;

图2为本发明实施例提供的一种文件系统的acl权限设置装置的结构图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。

本发明的核心是提供一种文件系统的acl权限设置方法,以相对减少进行acl权限设置过程中的时间开销,提高整体的执行效率。本发明的另一核心是提供一种文件系统的acl权限设置装置、设备及介质。

为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。

实施例一

图1为本发明实施例提供的一种文件系统的acl权限设置方法的流程图。请参考图1,文件系统的acl权限设置方法的具体步骤包括:

步骤s10:对目标文件系统中的预设目录进行遍历操作。

需要说明的是,在本步骤中所指的预设目录应根据用户的遍历需求而定的,预设目录为遍历时的根目录,在预设目录中往往还包括有子目录以及文件,子目录中能够包含文件,子目录也可以与文件同属于另一子目录下。例如,预设目录为usr,在usr目录下包括share目录以及file1文件,则file1文件与share目录同级,同属于usr目录,在遍历时将usr目录作为根目录进行逐级遍历,即遍历usr目录时能够获得其下一级的share目录以及file1,进而再对share目录中的内容进行遍历,遍历直至无后续子目录的目录时截止。

步骤s11:当进行遍历操作的过程中搜索到文件时,在文件对应的acl中设置既定的access类型权限。

由于各个目录下的文件对于不同的用户或用户组所提供的操作权限存在差异,文件的操作权限主要包括“r”读权限、“w”写权限以及“x”执行权限等。在实际应用中为了保证文件的安全,管理员等高级用户可以拥有对于某一文件的较多甚至所有的操作权限,而对于一些初级身份的用户则可能无法对某一文件进行任何操作,而通过在acl中设置既定的access类型权限是当前实现用户对文件的操作权限区别化的操作手段,因此在acl中进行设置的具体步骤是本领技术人员所知的技术内容,在此不做赘述。

步骤s12:当进行遍历操作的过程中搜索到目录路径时,在目录路径对应的acl中设置既定的access类型权限以及既定的default类型权限。

另外需要说明的是,本步骤中的目录路径依照目录之间的包含关系组成,如目录路径“/usr/share/doc/”相当于usr目录下包含share目录,share目录下包含doc目录,并且该目录路径为doc目录的访问路径。

与不同的用户或用户组对于文件的操作权限具有差异同理的是,不同的用户或用户组对于目录路径的操作权限也存在差异,因此当遍历操作的过程中搜索到目录路径时,需要在目录路径对应的acl中设置既定的access类型权限,另外,对目录设定的default类型权限应用于该目录下尚未生成的文件或目录。通过在acl中设置既定的default类型权限的具体步骤是本领技术人员所知的技术内容,在此不做赘述。

步骤s13:将acl中的内容写入目标文件系统的磁盘以使设置内容生效。

可以理解的是,本步骤是对acl设置的权限内容进行生效,生效后,预设目录下的目录路径以及文件均能够依照acl中设置的内容对用户进行操作权限的约束。使acl中的内容生效的详细操作是本领域技术人员公知的内容,在此不做赘述。另外,将acl中的内容写入磁盘的操作可以在对每一个acl进行设置后分别单独执行,也可以是在对全部acl进行设置后共同执行。

本发明所提供的文件系统的acl权限设置方法,首先对目标文件系统中的预设目录进行遍历操作以获取预设目录下的文件以及目录路径,进而当遍历操作的过程中搜索到文件时,在该文件对应的acl中设置access类型权限,当遍历操作的过程中搜索到目录路径时,在该目录路径对应的acl中同时设置access类型权限以及default类型权限,最终通过将acl中的内容写入目标文件系统的磁盘以使acl中的设置内容生效。可见,本方法实现了在对目标文件系统的一次遍历中同时设置access类型权限以及default类型权限的操作,因此相比于现有技术,本方法减少了对文件系统进行遍历的次数,进而相对减少了进行acl权限设置过程中的时间开销,提高了整体的执行效率。

实施例二

在上述实施例的基础上,本发明还提供以下一系列优选的实施方式。

作为一种优选的实施方式,在文件对应的acl中设置既定的access类型权限具体为:

在文件对应的acl中设置指定用户的access类型权限;

相应的,在目录路径对应的acl中设置既定的access类型权限以及既定的default类型权限具体为:

在目录路径对应的acl中设置指定用户的access类型权限以及default类型权限。

需要说明的是,本实施方式是在acl中针对于某一指定的用户进行文件或目录路径的权限设置,将本实施方式应用于用户数量较多的目标文件系统,以实现有选择性对指定用户进行权限设置,能够相对减少进行acl设置时所需要的整体工作开销,并且提高整体的操作效率。

在上述实施方式的基础上,作为一种优选的实施方式,在文件对应的acl中设置指定用户的access类型权限前,该方法进一步包括:

判断指定用户的相关信息是否预先被登记于文件对应的acl中;

如果是,则执行在文件对应的acl中设置指定用户的access类型权限的步骤;

否则,在文件对应的acl中新增指定用户的相关信息,并执行在文件对应的acl中设置指定用户的access类型权限的步骤;

相应的,在目录路径对应的acl中设置指定用户的access类型权限以及default类型权限前,该方法进一步包括:

判断指定用户的相关信息是否预先被登记于目录路径对应的acl中;

如果是,则执行在目录路径对应的acl中设置指定用户的access类型权限以及default类型权限的步骤;

否则,在目录路径对应的acl中新增指定用户的相关信息,并执行在目录路径对应的acl中设置指定用户的access类型权限以及default类型权限的步骤。

需要说明的是,由于在目标文件系统中的用户数量往往较大,并且在目标文件系统工作时仍会不断有新用户被创建,因此可能存在目标文件系统新生成了一个用户,并需要对该用户访问文件以及目录路径的权限进行设置的情况,但是由于该用户是新用户,因此acl中往往尚未存在该用户的相关信息,为了避免针对该用户进行acl设置的过程中出现错误,可以在执行文件或目录路径的acl设置时,前对acl中是否预先登记有该用户的相关信息进行判断,如果否,则先在acl中新增该用户的相关信息,进而再在acl中针对于该用户进行权限的设置。本实施方式相对避免了进行acl设置时可能产生的异常情况,保证了acl设置整体过程的稳定性以及执行的准确性。

在上述实施方式的基础上,作为一种优选的实施方式,当判定指定用户的相关信息预先被登记于文件对应的acl中时,该方法进一步包括:

判断指定用户对应的当前权限是否与既定的access类型权限存在差异;

如果是,则执行在文件对应的acl中设置指定用户的access类型权限的步骤;

相应的,当判定指定用户的相关信息预先被登记于目录路径对应的acl中时,该方法进一步包括:

判断指定用户对应的当前权限是否与access类型权限以及default类型权限存在差异;

如果是,则执行在目录路径对应的acl中设置指定用户的access类型权限以及default类型权限的步骤。

考虑到针对指定用户进行权限设置时,可能存在指定用户已经预先被设置有相应的权限,并且该权限与既定的access或default类型权限相同的情况,因此为了避免重复设置相同的内容而造成多余的时间开销以及资源浪费,当判定指定用户的相关信息预先被登记于文件或目录路径的acl中时,判断指定用户对应的当前权限是否与既定的access或default类型权限存在差异,只有存在差异时才对acl进行设置。本实施方式避免了因对acl重复设置相同的内容而造成多余的时间开销以及资源浪费的情况。

此外,作为一种优选的实施方式,在对目标文件系统中的预设目录进行遍历操作后,该方法进一步包括:

对预设目录下,目录路径与文件之间的从属关系进行统计,并生成目录树以记录至日志中。

可以理解的是,对预设目录进行遍历相当于对预设目录下的子目录以及文件之间的层级关系所进行的检索,通过遍历能够获悉各目录与文件之间的层级关系。本实施方式通过对预设目录下,目录路径与文件之间的从属关系进行统计并生成目录树以记录至日志中,使用户能够通过目录树直观的获悉预设目录的整体结构,进而便于对预设目录下的子目录以及文件进行维护,相对保证了预设目录整体的高可用性。

实施例三

在上文中对于文件系统的acl权限设置方法的实施例进行了详细的描述,本发明还提供一种与该方法对应的文件系统的acl权限设置装置,由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。

图2为本发明实施例提供的一种文件系统的acl权限设置装置的结构图。本发明实施例提供的文件系统的acl权限设置装置,包括:

遍历模块10,用于对目标文件系统中的预设目录进行遍历操作。

第一处理模块11,用于当进行遍历操作的过程中搜索到文件时,在文件对应的acl中设置既定的access类型权限。

第二处理模块12,用于当进行遍历操作的过程中搜索到目录路径时,在目录路径对应的acl中设置既定的access类型权限以及既定的default类型权限。

生效模块13,用于将acl中的内容写入目标文件系统的磁盘以使设置内容生效。

本发明所提供的文件系统的acl权限设置装置,首先对目标文件系统中的预设目录进行遍历操作以获取预设目录下的文件以及目录路径,进而当遍历操作的过程中搜索到文件时,在该文件对应的acl中设置access类型权限,当遍历操作的过程中搜索到目录路径时,在该目录路径对应的acl中同时设置access类型权限以及default类型权限,最终通过将acl中的内容写入目标文件系统的磁盘以使acl中的设置内容生效。可见,本装置实现了在对目标文件系统的一次遍历中同时设置access类型权限以及default类型权限的操作,因此相比于现有技术,本装置减少了对文件系统进行遍历的次数,进而相对减少了进行acl权限设置过程中的时间开销,提高了整体的执行效率。

在实施例三的基础上,该装置还包括:

统计模块,用于对预设目录下,目录路径与文件之间的从属关系进行统计,并生成目录树以记录至日志中。

实施例四

本发明还提供一种文件系统的acl权限设置设备,包括:

存储器,用于存储计算机程序;

处理器,用于执行计算机程序时实现如上述的文件系统的acl权限设置方法的步骤。

本发明所提供的文件系统的acl权限设置设备,首先对目标文件系统中的预设目录进行遍历操作以获取预设目录下的文件以及目录路径,进而当遍历操作的过程中搜索到文件时,在该文件对应的acl中设置access类型权限,当遍历操作的过程中搜索到目录路径时,在该目录路径对应的acl中同时设置access类型权限以及default类型权限,最终通过将acl中的内容写入目标文件系统的磁盘以使acl中的设置内容生效。可见,本设备实现了在对目标文件系统的一次遍历中同时设置access类型权限以及default类型权限的操作,因此相比于现有技术,本设备减少了对文件系统进行遍历的次数,进而相对减少了进行acl权限设置过程中的时间开销,提高了整体的执行效率。

本发明还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述的文件系统的acl权限设置方法的步骤。

本发明所提供的计算机可读存储介质,首先对目标文件系统中的预设目录进行遍历操作以获取预设目录下的文件以及目录路径,进而当遍历操作的过程中搜索到文件时,在该文件对应的acl中设置access类型权限,当遍历操作的过程中搜索到目录路径时,在该目录路径对应的acl中同时设置access类型权限以及default类型权限,最终通过将acl中的内容写入目标文件系统的磁盘以使acl中的设置内容生效。可见,本计算机可读存储介质实现了在对目标文件系统的一次遍历中同时设置access类型权限以及default类型权限的操作,因此相比于现有技术,本计算机可读存储介质减少了对文件系统进行遍历的次数,进而相对减少了进行acl权限设置过程中的时间开销,提高了整体的执行效率。

以上对本发明所提供的一种文件系统的acl权限设置方法、装置、设备及介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1