꼭두각시 서버에 있지만 클라이언트에는없는 SELinux .te 파일에서 명령을 실행하는 방법을 찾으려고합니다. puppetforge의 puppet-selinux 모듈을 사용하여 .te 파일을 .pp 모듈 파일로 컴파일하므로 클라이언트 서버에는 필요하지 않습니다. 내가 얻을 클라이언트 서버에서 실행하려고 할 때Puppet 서버에 있고 클라이언트가 아닌 파일에 BASH 명령 실행하기
class security::selinux_module {
exec { 'selinux_module_check':
command => "grep module selinux_module_source.te | awk '{print $3}' | sed 's/;//' > /tmp/selinux_module_check.txt",
source => 'puppet:///modules/security/selinux_module_source.te',
}
}
비록 :이에
Error: Could not retrieve catalog from remote server: Error 400 on SERVER: Invalid parameter source on Exec[selinux_module_check] at /etc/puppet/environments/master/security/manifests/selinux_module.pp:3 on node client.domain.com
Warning: Not using cache on failed catalog
Error: Could not retrieve catalog; skipping run
어떤 도움을 주시면 감사하겠습니다 내 기본 개념은 무엇인가 등이다.
카탈로그 컴파일 중에 마스터에서 아무 것도하지 않으려 고하면 기능이 제대로 작동하지 않을 수 있습니다. '소스'를'exec'과 함께 사용하고 절대가 아닌 실행 파일을'exec'에서 사용하려는 시도에 대해 언급 할 지 확신이 없습니다. –