我在 Suse 11 Linux 机器上使用 puppet 2.7.19 和 facter 1.6.0。facter$::osfamily
变量未设置,尽管它确实设置了$::operatingsystem
事实:
$ puppet apply -e 'notify { "$::osfamily/$::operatingsystem": }'
notice: /SLES
$::osfamily
puppet中的事实是如何设定的?我想升级到更高版本的 puppet 可以解决这个问题,但是在这个 Suse 发行版上升级很困难。
一种解决方法是全局设置因子变量(例如在 /etc/profile 中):
$ export FACTER_OSFAMILY=suse
$ /usr/bin/puppet apply -e 'notify { "$::osfamily/$::operatingsystem": }'
notice: suse/SLES
有没有更好/更清洁的方法来获得这一套?