查找+如何验证所有文件和文件夹是否属于组和所有者 hdfs:hadoop

查找+如何验证所有文件和文件夹是否属于组和所有者 hdfs:hadoop

我们要检查下的所有文件和文件夹/hadoop/hdfs具有权限 - hdfs:hadoop

是否可以使用 find 命令进行此测试?

如果找到没有此权限的捕获文件/文件夹,则 find 将打印这些文件/文件夹

答案1

您可以列出/hadoop/hdfs该目录下的所有条目不是属于用户hdfshadoop

find /hadoop/hdfs ! '(' -user hdfs -group hadoop ')' -ls

最后-ls将以类似于 的输出的格式列出找到的路径名ls -l

答案2

是的,这可以find与参数-user和 一起使用-group。例如,find /path/to/your/directory/* -user uname -group gname列出指定目录中具有指定用户和组所有权的所有文件(文件夹也只是文件)。您可能还想使用该参数-type将结果限制为仅某些文件类型,man find如果需要,请参阅 参考资料 已知类型的列表。

但是,如果您只是想确保所有文件和文件夹都具有正确的所有权,一个更简单的解决方案可能是覆盖所有现有权限(无论它们是什么),而不chown首先检查旧权限,但这取决于您的使用情况如果这是可以忍受的情况。例如,您可以cd进入您选择的目录,并使用 遍历该目录和所有子目录chwon -R uname:gname。如果您拥有权限,则每个文件(即:所有文件和文件夹)随后都将拥有指定的用户和组所有权。

相关内容