0

收集事实时,第一台主机的配置失败,并出现您在下面看到的错误。

PLAY [surveylab] ************************************************************

GATHERING FACTS *************************************************************
failed: [192.168.56.101] => {"cmd": "/usr/bin/facter --puppet --json", "failed": true, "rc": 2}
msg: [Errno 2] No such file or directory
ok: [192.168.56.102]

可以通过以下方式解决此问题:

ln -sf /usr/bin/ruby1.9.1 /usr/bin/ruby

我想在我的剧本中作为 pre_task 做这样的事情:

pre_tasks:
- name: symlink expected ruby bin from versioned bin
  command: ln -sf /usr/bin/ruby1.9.1 /usr/bin/ruby

它不起作用,错误仍然显示。显而易见的解释是,当事实收集起来时,问题仍然存在……但是这些事情是怎么做的呢?

4

2 回答 2

0

您可以尝试编写一个单独的剧本来设置链接 - 在那里您必须禁用事实的收集:

- name: 'some playbook'
  gather_facts: no

可能会奏效。

于 2015-06-03T15:21:44.590 回答
0

确保在目标机器上安装了 factor 包。例如,在 RHEL/CentOS 上:

sudo yum install facter
于 2017-08-23T04:30:44.380 回答