Как перезаписать существующий multipart-7z архив? (при использовании опции u — «System error: Файл существует»)

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС для молодых и начинающих системных администраторов.

Модератор: SLEDopit

vkapas
Сообщения: 190
ОС: Ubuntu 14.04, 16.04

Как перезаписать существующий multipart-7z архив?

Сообщение vkapas »

Собственно, описание проблемы в названии.

Нужно запаковать файл archive.pst, поделив его на части в 3Гб.

Код: Выделить всё

7z u -v3g archive.pst.7z archive.pst

отдаёт

Код: Выделить всё

System error: Файл существует


Но если архив создаётся впервые, всё работает без ошибок.


P.S. В принципе, готов переключиться на другой формат сжатия, просто 7z показал самое сильное сжатие (по сравнению с zip и gzip), а это именно то, что нужно в моём случае. В общем, рад буду выслушать альтернативные варианты решения задачи (максимальное сжатие с возможностью деления на тома).
Спасибо сказали:

Аватара пользователя
Bizdelnick
Модератор
Сообщения: 17911
Статус: grammatikführer
ОС: Debian GNU/Linux

Re: Как перезаписать существующий multipart-7z архив?

Сообщение Bizdelnick »

vkapas писал(а):
23.08.2016 20:18
System error: Файл существует

Так удалите.

vkapas писал(а):
23.08.2016 20:18
рад буду выслушать альтернативные варианты решения задачи (максимальное сжатие с возможностью деления на тома).

xz --stdout archive.pst | split -b 3G - archive.pst.xz.
Алгоритм сжатия там тот же самый — LZMA2.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:

vkapas
Сообщения: 190
ОС: Ubuntu 14.04, 16.04

Re: Как перезаписать существующий multipart-7z архив?

Сообщение vkapas »

Bizdelnick писал(а):
23.08.2016 23:43
Так удалите.

Дело в том, что команда в кроне и отрабатывает каждую неделю. Странно будет дополнительно каждый раз удалять архив перед созданием.
К тому же без -v (т.е. однотомный) тот же самый 7z-архив перезаписывается с опцией u без проблем.

Bizdelnick писал(а):
23.08.2016 23:43
xz --stdout archive.pst | split -b 3G - archive.pst.xz.
Алгоритм сжатия там тот же самый — LZMA2.

Благодарю, попробую.
Спасибо сказали:

Аватара пользователя
Bizdelnick
Модератор
Сообщения: 17911
Статус: grammatikführer
ОС: Debian GNU/Linux

Re: Как перезаписать существующий multipart-7z архив?

Сообщение Bizdelnick »

vkapas писал(а):
24.08.2016 00:21
Странно будет дополнительно каждый раз удалять архив перед созданием.

Не вижу в этом ничего странного. Странно — пытаться «обновить» архив, заменяя единственный имеющийся в нём файл.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:

vkapas
Сообщения: 190
ОС: Ubuntu 14.04, 16.04

Re: Как перезаписать существующий multipart-7z архив?

Сообщение vkapas »

Bizdelnick, ещё раз спасибо, вариант с xz и split работает отлично.

А правильно склеивать порезанный архив обратно с помощью cat file.xz.* > file.xz?
Спасибо сказали:

Аватара пользователя
Bizdelnick
Модератор
Сообщения: 17911
Статус: grammatikführer
ОС: Debian GNU/Linux

Re: Как перезаписать существующий multipart-7z архив?

Сообщение Bizdelnick »

vkapas писал(а):
25.08.2016 01:34
А правильно склеивать порезанный архив обратно с помощью cat file.xz.* > file.xz?

Да. Можно сразу распаковать без создания временного файла: cat file.xz.* | unxz > file
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали: