尝试创建两个目录的符号链接时,Chef链接错误

AfD*_*Dev 3 symlink chef-infra

我似乎无法让厨师在两个目录之间创建一个符号链接.我想在两个不同的目录之间创建一个符号链接.(/var/log/nginx/data/logs/nginx).

directory node[:nginx][:log_dir] do
  owner 'root'
  mode 00777
  action :create
 end

directory node[:nginx][:integration][:log_dir] do
  owner 'root'
  mode 00777
  action :create
end

link node[:nginx][:integration][:log_dir] do
  to node[:nginx][:log_dir]
end
Run Code Online (Sandbox Code Playgroud)

我收到以下错误

Errno::EISDIR
Is a directory - var/log/nginx

link("var/log/nginx") do
  provider Chef::Provider::Link
  action :create
  retries 0
  retry_delay 2
  guard_interpreter :default
  to "/data/logs/nginx/"
  link_type :symbolic
  target_file "var/log/nginx"
  cookbook_name :nginx_integration
  recipe_name "default"
end
Run Code Online (Sandbox Code Playgroud)

Ste*_*ing 5

您不能创建node[:nginx][:integration][:log_dir]目录,因为它不能是符号链接.

只需删除声明directory[#{node[:nginx][:integration][:log_dir]}].