Puppet
Puppet & Facter - 如何確定是執行 Cent 6 還是 Cent 5
您將如何使用 facter 和 puppet 來確定作業系統是執行 Cent 6.x 還是 Cent 5.x ?
facter operatingsystemrelease 6.4
我只關心主要版本(6)
我曾考慮過使用 awk,但必須有一種更好的方法,對“木偶清單”更友好。
#This works, but is ugly trying to use this in a puppet manifest facter operatingsystemrelease |awk -F. '{print $1}' 6
更新:
看起來新版本的facter有一些關於主要版本的附加資訊,這些資訊不在我的版本中。我的初始配置需要假設因素已過時。
facter --version 1.6.4 puppet --version 2.7.20
我嘗試使用以下命令搜尋可能顯示主要版本的任何其他事實
facter |grep 6
有作業系統majrelease
% facter operatingsystemmajrelease 6
如果您安裝了 redhat-lsb-core 軟體包,facter 將獲得 lsb 提供的事實係列(包括lsbmajdistrelease):
% facter |grep ^lsb lsbdistcodename => Final lsbdistdescription => CentOS release 6.4 (Final) lsbdistid => CentOS lsbdistrelease => 6.4 lsbmajdistrelease => 6 lsbrelease => :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch
注意:您至少需要Facter 1.7才能擁有
operatingsystemmajrelease
. 事實 1.6中的核心事實非常有限。