Я использую повара 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
обозначение, вероятно, лучшее, что вы можете сделать.