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
Распаковка архива enc.gz
Остается еще один неучтенный вариант, когда вы поставили пароль на архив.
В таком случае это .enc.gz файлы и это архив сделанный битриксом, распаковать его можно исключительно http://www.1c-bitrix.ru/download/scripts/restore.php
Так-же, иногда наблюдались «глюки» с распаковкой когда версия restore.php отличалась от версии сайта. В таком случае скачайте файл подходящий для распаковки с самого проекта, находится он тут:
bitrix/modules/main/admin/restore.php
Оставить комментарий
Комментарии (4)