Навеяно этой темой. Примерно тем же самым интересуюсь, но в меньших масшатабах. В первую очередь хочу спросить у автора и тех, кто имеет опыт использования 7z на онтопике и оффтопике. Накостылен скрипт на питоне (для универсальности), который дергает 7z. В нем функции:
def make_diff_arch(full_arch_path, diff_arch_path, src_path, pwd):
subprocess.run(['7z', 'u', full_arch_path, src_path,
'-ms=off', '-mhe=on', '-mx=0', '-t7z', '-p{}'.format(pwd),
'-u-', '-up0q3r2x2y2z0w2!{}'.format(diff_arch_path)])
Для платформ различаются только пути до каталога-источника. Как видно, сжатие я вообще не использую. Мне не понятно, почему выполнение на одном и том же архиве, на одном и том же каталоге-источнике, на оффтопике создает дифферентный архив 7M, а на онтопике 59М. Сравнивая их в распакованном виде я наблюдаю под онтопиком большое количество файлов, которые НЕ изменились по сравнению с каталогом-источником, то бишь как там были, так и лежат. Под оффтопиком все создается правильно. Выполнение команд вручную без скрипта приводит к тем же результатам. Вывод команд одинаковый. Подробного режима вроде как нет, так что узнать, что там происходит не так, затруднительно.
А вопрос простой, как обеспечить одинаковый результат работы команд? Чтобы не было лишнего при формировании дифферентного архива на линуксе.
P.S. Я не разработчик. Питон использую только для решения прикладных задач и не озабочиваюсь исключительной правильностью и PEPосовместимостью.