gvfs в образе не хватает.
Ну хорошо, что хоть тут разобрались. А то я сегодня все поломал и теперь надо как то это все разгребать.
Debian тоже поломал. Вообще хотел минимизировать обращения к репозиториям в интернете что в Alt, что в Debian. Это у меня получилось. Но по ходу дела обнаружил, что зеркало security не работает из за постоянного истечения ключа, который живет очень недолго. Это меня не устраивало, т.к. меня интересовал железных снапшот системы. Отключил проверку этого условия, репозиторий заработал, но все перестало собираться. Ощущение такое, что обновления безопасности качаются не из того репозитория. Как это произошло и как это поправить - не знаю. Очевидно, что если подключены репозитории X и Y, где могут быть одни и те же пакеты, то если выбирается индекс Y как более новый, то и качаться должно с Y. А оно как будто бы качается с X. Сам файл есть, но оно качает по хэшу. И хэш не совпадает.
Но я не уверен, что проблема в этом. Возможно проблема в nginx. Дело в том, что я еще настроил FastCGI и git-http-backend. Делал по
вот этой инструкции с некоторыми модификациями. Проблема в том, что вот с этим регэкспом "~ /git(/.*)" убились ссылки типа "<зеркало>/debian/pool/main/g/git/...". Я вообще не силен в регэкспах. Я попробовал поменять ~ на ^~, но это не сработало. Тогда я поменял на "~ ^/git(/.*)" и вроде заработало. Но я не уверен. Некоторые ссылки возможно все еще посылаются в git-http-backend и потому бьются. Кто разбирается в nginx? Нужен ли мне вообще регэксп? Может достаточно просто "location /git"?
Просто ошибка выглядит так: сначала качатются около 1500 основных файлов, которые заканчиваются на youtube-dl. Потом как будто бы качается еще что то. Но может и не качается, а просто выдается список ошибок при скачке этих 1500. Ошибки все время в двух рандомных файлах - иногда "Unspecified error", иногда "Connection reset by peer" и "Broken pipe". Сами файлы есть. Я смотрел в error.log nginx и вот сначала показалось, что какие то проблемы с вот этими хэшами. Но потом после второй попытки показалось, что вообще ничего не логируется. Так что сервер возможно тупо подвис. Перезапуск не помог. Да и вроде работал он.
P.S. Не. Проблема не в хэшах. Ошибки в error.log связаны только с файлами by-hash и Contents-xxx.gz. Этих файлов в репозитории действительно нет. И наверное они и не нужны. Так что наверное все таки я поломал nginx.
P.P.S. Включил детализированный лог nginx и выяснилось, что проблема предположительно вызвана очень большим файлом LibreOffice Java, который выдает статус 206 Partial content, который в свою очередь почему-то неправильно обрабатывается клиентом. А остальные файлы уже улетают не пойми куда с не пойми какими ошибками. Что с этим можно сделать?
P.P.P.S. max_ranges = 0 не помогло. Все равно в этом месте происходит какой-то дисконнект. Мне кажется, что проблема возникает именно тогда, когда происходит переключение с основного репозитория на репозиторий безопасности. Сборщик как бы ожидает, что это два разных сервера и может быть пытается к ним обращаться одновременно. А у меня это один сервер. И возможно из за этого и проблемы. Чего то не хватает в конфигурации nginx.