Назад | Перейти на главную страницу

Chef не удаляет файлы по пути% systemroot% \ system32, используя файловый ресурс

Я использую повара file ресурс для удаления файлов внутри %systemroot%\system32 путь на машине Windows. Блок ресурсов, как показано ниже,

file 'Delete_File' do
  path 'C:\\Windows\\System32\\my.dll'
  action :delete
end

Я убедился, что служба Windows, использующая это dll остановлен перед вызовом file ресурсный блок.

Но по-прежнему файл не удаляется в конце chef-client запустить. Итак, я предполагаю, что для этого нужно выполнить некоторые настройки прав доступа.

Любой указатель будет полезен.

Я подозреваю, что вы используете 32-битную сборку chef-client на W2K8R2, ОС с архитектурой x64. Asusming в этом случае каталог ваш chef-client процесс "видит" как %systemroot%\system32 на самом деле %systemroot%\syswow64. Я предполагаю, что вашей DLL там нет, чтобы ее можно было удалить.

это обсуждалось в заявке на Opscode и описанный там обходной путь со ссылкой на %systemroot%\sysnative обозначение, вероятно, лучшее, что вы можете сделать.