我正尝试在chef中做到这一点:
package("libreadline5-dev") do
package_name "libreadline5-dev"
retry_delay 2
retries 0
recipe_name "default"
cookbook_name :"nginx-passenger"
action :install
end它会给出以下错误:
================================================================================
Error executing action `install` on resource 'package[libreadline5-dev]'
================================================================================
Chef::Exceptions::Package
-------------------------
libreadline5-dev has no candidate in the apt-cache
Resource Declaration:
---------------------
# In /var/chef/cookbooks/nginx-passenger/recipes/default.rb
15: package "libreadline5-dev"
16: package "build-essential"
Compiled Resource:
------------------
# Declared in /var/chef/cookbooks/nginx-passenger/recipes/default.rb:15:in `from_file'版本:
ruby 1.8.7
厨师: 10.16.2
ubuntu: 12.04 (EC2实例)
有人能帮我解决这个问题吗?我尝试过this,但它没有解决这个问题。
发布于 2013-01-19 09:55:23
libreadline5-dev不再包含在Ubuntu12.04中。
您可能希望尝试使用libreadline-dev。
发布于 2013-01-09 15:24:02
我在使用ntp食谱安装的ntp包时也遇到了同样的问题。
执行后
apt-get check
apt-get update
chef-client在debian机器上的shell中,它对我来说是有效的,但我找不到是什么造成了麻烦。也许有人有个主意?
希望这能有所帮助。
发布于 2013-11-22 03:04:25
我真的来晚了,但在搜索这个错误时,除了这个问题,我真的没有找到任何结果。我遇到了同样的问题,这是由一个陈旧的apt-get进程导致的,该进程阻止了apt-purge获得锁。您可以通过尝试apt-get update确认这一点:
$ sudo apt-get update
E: Could not get lock /var/lib/apt/lists/lock - open (11: Resource temporarily unavailable)
E: Unable to lock the list directory
$ ps auxww | grep apt
root 23488 0.0 0.0 19408 2336 ? S Jun03 28:42 /usr/bin/apt-get -q -y --force-yes -o Dpkg::Options::=--force-confold update在手动终止apt-get进程并运行apt-get update之后,chef成功运行。
https://stackoverflow.com/questions/13428017
复制相似问题