0

我正在尝试使用厨师安装 s3fs。我无法让 mounts 资源为 s3fs 工作,并且 s3fs 的供应商食谱想要将 mount 命名为不同于我们想要命名的名称(我们的 s3 存储桶名称中有“.”)。

所以我手动创建了 fstab 记录并运行“mount”命令来安装它。但是挂载没有运行。没有错误,并且厨师日志文件说它执行了该块。

bash 'mount_s3fs' do
  code <<-EOF 
  mount -a
  EOF
  user 'root'
  not_if "df -kh | grep s3fs -q"
end

这是打印到日志文件的内容

[2016-12-29T21:29:02+00:00] INFO: Processing bash[mount_s3fs] action run (cookbook::recipe line 66)
[2016-12-29T21:29:03+00:00] INFO: bash[mount_s3fs] ran successfully

如果我第二次运行这个食谱,它就安装好了。如果我在引导后添加配方,它运行良好。我非常困惑。因为这种行为只在引导程序中看到。

我在 AWS 的 Debian Jessie 8.4 上运行 Chef 12.12.15。

4

2 回答 2

1

虽然这似乎与 Chef 无关,但您可能应该修复您的配方代码以使用mount资源。

于 2016-12-30T06:11:38.460 回答
0

好吧,经过数小时的故障排除,我认为问题出在 Debian 本身。如果我使用 Debian 8.0 AMI 运行相同的脚本,它可以正常工作,如果我升级到 8.4 或更高版本的图像,它就不起作用。我没有用 8.1、8.2 或 8.3 进行测试,因为,好吧,我厌倦了这个问题。

于 2017-01-03T04:59:25.710 回答