Почему создается битый zip-архив в расшаренной папке?
Столкнулся с такой странностью. Есть сервер 1С и сервер резервных копий (сервер РК). Сервер 1С виртуальный, расположен на гипервизоре Proxmox. Сервер РК - физический, на нем есть расшаренная папка для копий 1С. На гипервизоре также есть расшаренная папка для "на всякий случай" дубликата копий баз 1С (ну просто диски большие, все равно нечем забить). Каждый день в 00-00 сервер 1С делает резервную копию баз в zip-архив и кладет его в эти расшаренные папки. Zip-архив создается два раза, порядок - гипервизор, сервер РК. Zip-архив создается сразу в расшаренных папках.
Теперь проблема. В папке от гипервизора архивы целые, в папке сервера РК - битые! И там и там один и тот же Debian, одна и та же версия Samba, даже конфиги сопоставимые, дефолтные. Для меня это выглядит очень странно, особенно если учесть, что на сервер РК много чего копируется, те же образы виртуалок - битого ничего больше нет! Только именно базы с 1С, вернее базы в zip'e. Проверял, может еще какие регламентные задачи пересекаются - но нет! Куда копать?
PS: для резервного копирования используется простой самописный скрипт, он останавливает samba и apache (базы через него), делает mount расшаренных папок, "зипует" туда базы, делает umount папок и запускает samba и apache.
выяснил, что утилита zip делает файл с рандомным именем в точки назначения, после переименовывает в название архива. Иных промежуточных файлов не использует
Вообще у меня подозрение на исправность сетевухи, но не верится, что из-за нее могут биться файлы, должен же быть контроль передачи по SMB
UPDATE: Есть еще такой момент - серверы в разных сегментах, сегменты созданы средствами Zyxel Keenetic, обмен трафиком идет через него (между хостами сервер 1С ----резервная_копия-----> сервер РК). На роутере нет запрещающих правил в фаерволе и отключена какая-либо фильтрация, установлена прозрачная маршрутизация. Нареканий на его работу нет, перезагружается только с отключением электроэнергии.
Ответ на мой вопрос найден. В логах гипервизора нашел вот это:
e1000e 0000:00:19.0 eth0: Detected Hardware Unit Hang
То есть сетевуха просто отключалась на пару секунд из-за того, что входила в "ступор". Вероятно старый баг с энергосбережением или разгрузкой TSO.
Забавно, что сетевая карта портила информацию, но контрольные суммы IP/TCP ставила верные. Портились те самые пара тысяч байт, которые проходили через внутренности гипервизора и потом на сетевуху. Сетевая карта сервера РК принимала их как корректные (суммы то верные). Кстати сервер брендовый, чтобы не упрекали в чахлом железе.
Надеюсь, этот текст я сюда писал не зря и он кому-нибудь поможет с похожей проблемой.