【问题标题】:Symbolic link not working in chef recipe (vagrant/debian8)符号链接在厨师食谱中不起作用(vagrant/debian 8)
【发布时间】:2017-07-09 21:33:42
【问题描述】:

我正在尝试编写一个 Chef 配方以在 nginx 中启用一个站点,但它创建的符号链接似乎不起作用。我正在配置的机器是一个 Debian8 虚拟机,我正在使用 vagrant 管理它。

这是我的(非常简单的)食谱:

include_recipe 'apt'

package 'nginx' do
  action :install
  version '1.6.2-5+deb8u4'
end

service 'nginx' do
  action [ :enable, :start ]
end

cookbook_file '/etc/nginx/sites-available/corner-house.conf' do
    source 'corner-house.conf'
    mode '0644'
end

cookbook_file '/etc/nginx/nginx.conf' do
    source 'nginx.conf'
    mode '0644'
end

link '/etc/nginx/sites-enabled/corner-house.conf' do
    to 'etc/nginx/sites-available/corner-house.conf'
end

link '/etc/nginx/sites-enabled/default' do
  action :delete
end

file '/var/www/html/index.nginx-debian.html' do
    action :delete
end

service 'nginx' do
    action :restart
end

如果我 ls /etc/nginx/sites-enabled 在运行 vagrant provision 之后,我会看到符号链接是孤立的。如果我然后删除它并使用 ln -s 创建一个新的符号链接,一切都会完美运行。

我在这里做错了什么还是 vagrant + chef + debian8 组合的问题?

【问题讨论】:

    标签: chef-infra


    【解决方案1】:

    这部分有错别字:路径缺少前导/

    to 'etc/nginx/sites-available/corner-house.conf'
    

    应该是这样的

    link '/etc/nginx/sites-enabled/corner-house.conf' do
        to '/etc/nginx/sites-available/corner-house.conf'
    end
    

    【讨论】:

    • 这就是我盯着问题太久的结果。谢谢你救了我!
    猜你喜欢
    • 2021-10-31
    • 1970-01-01
    • 1970-01-01
    • 2019-01-29
    • 1970-01-01
    • 2021-11-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-30
    相关资源
    最近更新 更多