我正在尝试使用chef安装s3fs。我无法获得s3fs的mounts资源和s3fs的供应商cookbook想要为我们想要命名的挂载命名(我们的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
如果我第二次运行配方,它就可以正常安装。如果我在bootstrap之后添加配方它运行正常。我非常困惑。因为这种行为只能在bootstrap中看到。
我在AWS的Debian Jessie 8.4上主厨12.12.15。
答案 0 :(得分:1)
虽然这似乎与Chef无关,但您应该修改配方代码以改为使用mount
资源。
答案 1 :(得分:0)
好吧,经过几个小时的故障排除后,我认为问题出在Debian本身。如果我使用Debian 8.0 AMI运行相同的脚本它可以正常工作,如果我达到8.4或更高的图像它不起作用。我没有用8.1,8.2或8.3进行测试,因为我已经厌倦了这个问题。