我正在使用以下目录主厨资源来更改/etc/temp.d
目录中所有文件的所有权。
[ /etc/temp.d ].each do |path|
directory path do
recursive true
owner user1
group user1
mode '0750'
action :create
end
end
但是,我发现它只将temp.d
目录的所有权更改为user1
temp.d
内的文件和目录的所有权不会发生变化。
答案 0 :(得分:0)
是的,recursive
无法正常工作。它仅将权限应用于叶子目录。
这个 记录在docs中,但我确实理解你的困惑......我自己去过那里......
递归
Ruby类型:TrueClass,FalseClass
递归创建或删除父目录。对于所有者,团体, 和mode属性,此属性的值仅适用于 叶目录。默认值:false。
您需要将每个(子)目录添加到您正在迭代的数组中,以确保正确应用权限。