Tar каталог, но не храните полные абсолютные пути в архиве

У меня есть следующая команда в части резервного сценария оболочки:

tar -cjf site1.bz2 /var/www/site1/

Когда я перечисляю содержимое архива, я получаю:

tar -tf site1.bz2
var/www/site1/style.css
var/www/site1/index.html
var/www/site1/page2.html
var/www/site1/page3.html
var/www/site1/images/img1.png
var/www/site1/images/img2.png
var/www/site1/subdir/index.html

Но я хотел бы удалить часть/var/www/site1 из каталогов и имен файлов в архиве, чтобы упростить извлечение и избежать бесполезной постоянной структуры каталогов. Никогда не знаю, на случай, если я извлечу резервные копии сайтов в месте, где веб-данные не былихранится в./var/www

Для примера выше, я хотел бы иметь:

tar -tf site1.bz2
style.css
index.html
page2.html
page3.html
images/img1.png
images/img2.png
subdir/index.html

Так что, когда я извлекаю, файлы извлекаются в текущем каталоге, и я неПосле этого необходимо переместить извлеченные файлы, чтобы сохранить структуру подкаталогов.

Уже есть много вопросов о tar и бэкапе вstackoverflow и в других местах в Интернете, но большинство из них просят удалить всю структуру подкаталогов (выравнивание), или просто добавить или удалить начальные / в именах (я нене знаю, что именно меняется при извлечении), но не более.

Прочитав некоторые решения, найденные здесь и там, а также руководство, я попытался:

tar -cjf site1.bz2 -C . /var/www/site1/
tar -cjf site1.bz2 -C / /var/www/site1/
tar -cjf site1.bz2 -C /var/www/site1/ /var/www/site1/
tar -cjf site1.bz2 --strip-components=3 /var/www/site1/

Но никто из них не работал так, как я хочу. Некоторые ничего не делают, другие нетАрхивировать подкаталоги больше.

Это'внутри скрипта резервного копирования, запущенного Cron, поэтому я неОн не знает, какой пользователь его запускает, каков путь и текущий каталог, поэтому для всех требуется всегда писать абсолютный путь, и он предпочел бы не менять текущий каталог, чтобы избежать дальнейшего разрушения в скрипте (потому что он не 't резервное копирование только веб-сайтов, а также баз данных, затем отправка всего этого на FTP и т. д.)

Как этого добиться?

Я просто неправильно понял, как работает опция -C?

Ответы на вопрос(6)

Ваш ответ на вопрос