bitrixtar - ручная распаковка 1С-Битрикс

Зачастую нам нужно достать несколько файлов с архива созданных СМS 1C-Битрикс. Но он побит на несколько файлов (по умолчанию 100 мегабайт) и валидно tar открывает только первый том, последующие просто не понимает формат файла. Я покажу простой способ как восстановить такой архив. Вариантов создания архивов несколько, так и решений по их склейке.

По умолчанию 1C-Битрикс создает tar архив и просто режет его на несколько файлов не создавая заголовки в каждом из них, он просто физически разрезан на несколько. Все что нам по идее остается зная это, просто склеить все файлы в 1, и для этого хорошо подойдет cat.

Но это только если вы поставили галочку «Отключить компрессию архива (снижение нагрузки на процессор):» С компрессией создается уже не tar а tar.gz

Читаем содержимое всех файлов и сразу распаковываем

cat *$(ls -v  *tar.*) | tar xf -

Читаем содержимое всех файлов и сразу распаковываем сжатые файлы

cat *$(ls -v  *tar.gz*) | tar xzf -

cat — читает содержимое
*$ — все переменные
ls -v - обязательный атрибут( сортирует их не по названию файлов а по цифрам в файлах и строит последовательность не по названию в котором есть цифры архивов (1,100,2) а (1,2,100)
tar xzf — - передаем все данные тару и распаковываем их в потоке.

Пример сортировки по имени

Просто получить архив 1 файлом

Ну и на последок если вам не нужно его распаковывать а просто получить архив.

cat $(ls -v  *tar.*) > backup.tar

Для сжатых:

cat *$(ls -v  *tar.gz*) > backup.tar.gz 
Важно! Не забудьте что в папке могут лежать архивы сразу нескольких версий бэкапа, и для запуска вам нужно скопировать только 1 копию архива или указать вместо *tar.* более детальную информацию по файлам! Определить какие файлы к чему относятся достаточно легко. У каждого архива есть рандомная часть текста, и она у каждой версии одинаковая.

Распаковка архива enc.gz

Остается еще один неучтенный вариант, когда вы поставили пароль на архив.
В таком случае это .enc.gz файлы и это архив сделанный битриксом, распаковать его можно исключительно http://www.1c-bitrix.ru/download/scripts/restore.php

Так-же, иногда наблюдались «глюки» с распаковкой когда версия restore.php отличалась от версии сайта. В таком случае скачайте файл подходящий для распаковки с самого проекта, находится он тут:

bitrix/modules/main/admin/restore.php

Оставить комментарий

Комментарии (4)

  1. Артем 17.06.2019 Ответить
    Распаковал, Получилось! Спасибо!
  2. Кирилл 25.06.2019 Ответить
    Большое спасибо! Очень помогло!
  3. серега 13.09.2019 Ответить
    спасибо выручил

    для тех у кого tgz:
    cat *$(ls -v *tgz.*) | tar xzf -
  4. Alex 23.09.2019 Ответить
    Дай бог тебе здоровья, добрый человек)