Ошибка при распаковке файла в системе AIX с помощью CHEF

Я хочу разархивировать / разархивировать файл в системе AIX с помощью CHEF. Шаги, которые я сделал: 1. Я загрузил zip-файл Test.zip в систему AIX с помощью Winscp. 2. Отредактировал default.rb, используя команду ниже: выполнить "extract_Test_tar" do command "tar -xvf Test.zip" cwd "/ var / chef / cookbooks" end 3. При загрузке моей кулинарной книги появляется следующая ошибка:

Рецепт: Infy_Patrol :: default * выполнить действие [extract_Test_tar] запустить

================================================================================
Error executing action `run` on resource 'execute[extract_Test_tar]'
================================================================================

Mixlib::ShellOut::ShellCommandFailed
------------------------------------
Expected process to exit with [0], but received '1'
---- Begin output of tar -xvf Test.zip ----
STDOUT:
STDERR: tar: tape blocksize error
---- End output of tar -xvf Test.zip ----
Ran tar -xvf Test.zip returned 1

Resource Declaration:
---------------------
# In /.chef/local-mode-cache/cache/cookbooks/Infy_Patrol/recipes/default.rb

 10: execute "extract_Test_tar" do
 11:   command "tar -xvf Test.zip"
 12:   cwd "/var/chef/cookbooks"
 13: end

Compiled Resource:
------------------
# Declared in /.chef/local-mode-cache/cache/cookbooks/Infy_Patrol/recipes/default.rb:10:in `from_file'

execute("extract_Test_tar") do
  action [:run]
  retries 0
  retry_delay 2
  default_guard_interpreter :execute
  command "tar -xvf Test.zip"
  backup 5
  cwd "/var/chef/cookbooks"
  returns 0
  declared_type :execute
  cookbook_name "Infy_Patrol"
  recipe_name "default"
end

Выполнение обработчиков: [2016-01-29T06: 27: 47-06: 00] ОШИБКА: выполнение обработчиков исключений Выполнение обработчиков завершено [2016-01-29T06: 27: 47-06: 00] ОШИБКА: завершение обработчиков исключений Ошибка Chef Client. 0 ресурсов обновлено за 05 секунд [2016-01-29T06: 27: 47-06: 00] FATAL: Stacktrace выгружен в /.chef/local-mode-cache/cache/chef-stacktrace.out [2016-01-29T06: 27: 47-06: 00] FATAL: предоставьте содержимое файла stacktrace.out, если вы отправляете отчет об ошибке [2016-01-29T06: 27: 47-06: 00] ОШИБКА: выполнить [extract_Test_tar] (Infy_Patrol: : строка по умолчанию 10) произошла ошибка: Mixlib :: ShellOut :: ShellCommandFailed: Ожидается, что процесс завершится с [0], но получил '1'


person priya meshram    schedule 29.01.2016    source источник
comment
tar не обрабатывает zip-файлы, а, что неудивительно, обрабатывает tar файлы. Чтобы обработать zip-файл, вам понадобится zip / unzip.   -  person Mat    schedule 29.01.2016
comment
unzip находится в свободном доступе sourceforge.net/projects/infozip/files   -  person Lorinczy Zsigmond    schedule 29.01.2016
comment
Вопрос такой: я хочу написать кулинарную книгу для извлечения файлов из папки tar с помощью Chef (recipes).   -  person priya meshram    schedule 29.01.2016
comment
(Пожалуйста, перефразируйте свой вопрос, чтобы он выглядел как реальный вопрос, а не как утверждение.)   -  person Lorinczy Zsigmond    schedule 29.01.2016
comment
хорошо, я дам вам сценарий: -   -  person priya meshram    schedule 29.01.2016


Ответы (1)


ПОВТОРЯЮ НА МОЙ ВОПРОС.

Ниже приведены шаги, которые я выполнил: 1. вошел в систему с AIX 2. вошел в Winscp. 3. создал кулинарную книгу с помощью: knife cookbook create Test 4. С помощью winscp я перешел по пути, по которому сохранена моя кулинарная книга: / var / chef / cookbooks / Test 5. Открыл папку рецептов: и отредактировал default.rb, как указано:

#
# Cookbook Name:: Infy_Patrol
# Recipe:: default
#
# Copyright 2016, YOUR_COMPANY_NAME
#
# All rights reserved - Do Not Redistribute
#

tar_extract '/var/chef/cookbooks/Test.zip' do
  action :extract_local
  target_dir '/var/chef/cookbooks'
  creates '/var/chef/cookbooks/new'
end

#Also tried the following piece of code
#execute "extract files" do
#command "tar xvf Test.tar.gz -C /var/chef/cookbooks"
#end

6.uploaded cookbook using : 
chef-client -z -r Test::default

BUT IT IS GIVING ME AN ERROR :
Error executing action `run` on resource 'execute[extract_Test_tar]
person priya meshram    schedule 29.01.2016
comment
Возможно, вы неправильно поняли, что означает слово «вопрос». Примеры: В: Как распаковать ZIP-архив? A: С помощью служебной программы unzip. Q: Могу ли я использовать tar для этого? A: Нет. Q: Итак, tar и zip / unzip - это разные программы? В: Да. - person Zsigmond Lőrinczy; 29.01.2016
comment
Попробуйте извлечь вручную, и путь должен иметь такие же права пользователя. пример: tar xvf Test.tar.gz -C / home / user / test - person Shankar; 14.03.2017