Проблема с использованием tar для создания сжатого архива

Я столкнулся с указанной ниже проблемой.

У меня есть две папки: AD-VM и Jump-VM

В каждой из этих папок содержится следующее:

-rw-------. 1 root root  20G Jun 28 18:27 AD-VM-flat.vmdk
-rw-------. 1 root root 8.5K Jun 27 16:07 AD-VM.nvram
-rw-------. 1 root root  543 Jun 27 16:07 AD-VM.vmdk
-rw-r--r--. 1 root root    0 Jun 27 16:07 AD-VM.vmsd
-rwxr-xr-x. 1 root root 2.6K Jun 27 16:07 AD-VM.vmtx

-rw-------. 1 root root  20G Jun 27 16:16 Jump-VM-flat.vmdk
-rw-------. 1 root root 8.5K Jun 27 16:16 Jump-VM.nvram
-rw-------. 1 root root  545 Jun 27 16:16 Jump-VM.vmdk
-rw-r--r--. 1 root root    0 Jun 27 16:16 Jump-VM.vmsd
-rwxr-xr-x. 1 root root 2.7K Jun 27 16:16 Jump-VM.vmtx

Я пытаюсь сжать каждую в архив tar gunzip. Я использовал:

tar -xzf AD.tar.gz AD-VM/*

tar -xzf Jump.tar.gz Jump-VM/*

После сжатия я распаковываю на целевом объекте и получаю только flat.vmdk Остальные файлы недоступны.

Итак, я попробовал,

tar -xf AD.tar AD-VM

Он заархивировал папку, и я смог увидеть все файлы. Затем

gzip AD.tar.gz AD.tar

Опять же, заканчивается только плоский файл.

Обычно мой vmtx и другие файлы недоступны после декомпрессии.

0
13.05.2019, 01:07
1 ответ

При tar-xпредназначено для извлечения файлов из архива, а -c— для создания архива.

Вы сказали, что пытались создать архивы следующим образом:

tar -xzf AD.tar.gz AD-VM/*
tar -xzf Jump.tar.gz Jump-VM/*

Вероятно, это должно было быть

tar -czf AD.tar.gz AD-VM
tar -czf Jump.tar.gz Jump-VM

Обратите внимание на -cвместо -xи на то, что /*не требуется, если вы хотите заархивировать все файлы в указанном каталоге.

Кроме того, команда gzip AD.tar.gz AD.tarне имеет особого смысла. Почему вы пытаетесь сжать AD.tar.gz? Чтобы сжать AD.tarв AD.tar.gz, просто используйте

gzip AD.tar

Обратите внимание, что при использовании tarс -zсоздается сжатый архив, поэтому использование gzipдля его сжатия не требуется.

1
28.01.2020, 02:45

Теги

Похожие вопросы