我想使用DOCSF模块(从github)。 如果我尝试使用它,我得到这个结果:
Error: /File[/var/lib/puppet/facts.d]: Failed to generate additional resources using 'eval_generate': Error 400 on SERVER: Permission denied - /etc/puppet/environments/production/modules/docsf/metadata.json Error: /File[/var/lib/puppet/facts.d]: Could not evaluate: Could not retrieve file metadata for puppet://puppetmaster.example.com/pluginfacts: Error 400 on SERVER: Permission denied - /etc/puppet/environments/production/modules/docsf/metadata.json Info: Retrieving plugin Error: /File[/var/lib/puppet/lib]: Failed to generate additional resources using 'eval_generate': Error 400 on SERVER: Permission denied - /etc/puppet/environments/production/modules/docsf/metadata.json Error: /File[/var/lib/puppet/lib]: Could not evaluate: Could not retrieve file metadata for puppet://puppetmaster.example.com/plugins: Error 400 on SERVER: Permission denied - /etc/puppet/environments/production/modules/docsf/metadata.json Info: Loading facts Error: Could not retrieve catalog from remote server: Error 400 on SERVER: Permission denied - /etc/puppet/environments/production/modules/docsf/metadata.json on node pp-testexample.com Warning: Not using cache on failed catalog Error: Could not retrieve catalog; skipping run
这些是模块上的文件权限:
-r--r--r--. 1 puppet root 734 24. Jun 2014 checksums.json drwxrwxr-x. 3 puppet root 19 15. Sep 2015 lib -r--r--r--. 1 puppet root 651 15. Sep 2015 LICENSE drwxr-sr-x. 2 puppet root 71 15. Sep 2015 manifests -r--r--r--. 1 puppet root 792 15. Sep 2015 metadata.json -r--r--r--. 1 puppet root 2770 15. Sep 2015 README.md drwxr-xr-x. 2 puppet root 27 15. Sep 2015 spec drwxr-xr-x. 2 puppet root 4096 15. Sep 2015 templates drwxr-xr-x. 2 puppet root 20 15. Sep 2015 tests
这是树:
├── checksums.json ├── lib │ └── facter │ └── configserver_firewall.rb ├── LICENSE ├── manifests │ ├── init.pp │ ├── params.pp │ ├── postinit.pp │ └── preinit.pp ├── metadata.json ├── README.md ├── spec │ └── spec_helper.rb ├── templates │ ├── conf.maldet.erb │ ├── csf.allow.erb │ ├── csf.conf.erb │ ├── csf.fignore.erb │ ├── csf.ignore.erb │ └── csf.pignore.erb └── tests └── init.pp
有任何想法吗?
另一个问题可能是SELinux政策。 尝试在文件上运行restorcon。
restorcon -r / etc / puppet / files /
傀儡模块内的文件至less需要为0644 。 在github上有几个例子:
https://tickets.puppetlabs.com/browse/FORGE-163
https://github.com/voxpupuli/puppet-collectd/issues/179
https://github.com/rodjek/librarian-puppet/issues/251
只要改变烫发来匹配其他文件,你应该没问题