我正在使用 puppet 设置监狱外壳,以维护监狱内所需库的副本。
使用以下傀儡代码我可以成功复制文件:
file { "/home/${username}/lib/x86_64-linux-gnu/libdl.so.2":
ensure => present,
source => "/lib/x86_64-linux-gnu/libdl.so.2",
mode => '0700',
links => 'manage',
owner => $username,
group => $username,
require => File["/home/${username}/lib/x86_64-linux-gnu/"]
}
但看起来源文件权限正在更改为 $username:$username 以及目标文件权限。
文件 /lib/x86_64-linux-gnu/libdl.so.2 最终具有以下权限:
-rwx------ 1 $username $username ld-2.19.so
被监禁的用户显然能够使用此设置登录,但对于其他所有在真实 /lib 文件夹中使用 /bin/bash 的人来说,这会破坏登录。
答案1
你必须引用:
所有者 => '$用户名',