Как настроить локальное зеркало, которое только загружает пакет по требованию

Это сложный вопрос... В течение многих лет я искал правильное решение этой проблемы: я работаю в Африке, где интернет-соединения часто медленны и ограничены несколькими местами. При предложении GNU/Linux людям здесь, доступ к репозиториям для обновления компьютера или установки нового программного обеспечения всегда является проблемой.

На этот раз у меня есть приемлемое соединение V-Sat дома, но в офисе соединение ограничено корпоративным компьютером (через VPN и т. Д.). Подключение Linux-бокса к локальной сети не дает доступа к интернету.

Я хочу предложить сотрудникам установить дистрибутив GNU/Linux на их старые частные компьютеры (только в версиях Ubuntu), и я хотел бы настроить что-то, что даст им возможность обновлять свой компьютер в офисе через косвенную зеркало "доброе решение.

Конкретно, мне нужно было бы найти способ автоматического обновления pkgcache.bin, затем они могли бы сгенерировать скрипт загрузки, который я запустил бы по месту жительства, и на следующий день они могли бы получить запрошенные пакеты для установки / обновления.

Для этого я мог бы настроить Raspberry Pi 2 box, который будет действовать как локальный репозиторий, но я не хочу, чтобы он загружал все доступные пакеты (9 Гб, которые я не могу себе позволить), но только те, которые уже установлены (для обновления).) или запрошенные (из сценария).

Предложения / вопросы / мысли очень приветствуются!

NB: Это не дубликат Как я могу избежать загрузки пакетов каждый раз, когда я устанавливаю свою Ubuntu?, Действительно, в моем случае мне нужно решение, в котором клиенты будут подключаться к локальному серверу репозитория в месте, где ни один из них не подключен к Интернету, ни сервер (только локальная локальная сеть). Сервер (то есть компьютер Raspbery Pi 2) будет затем физически перемещен на сайт, где у него есть доступ в Интернет, и загрузит пакеты, запрошенные клиентом. Вернувшись в локальную сеть, он позволит клиенту обновить или установить запрошенные пакеты...

NR 2: Тем не менее, я считаю, что это дубликат этого вопроса: Как я могу установить программное обеспечение или пакеты без Интернета (в автономном режиме)? и Camicri Cube может быть лучшим решением (apt-offline также может подойти)...

Так что, да, это дубликат... (я не знаю, как пометить его как таковой).

1 ответ

Я думаю, что, возможно, вы могли бы использовать что-то вроде apt-cacher-ng, это прокси кэширования apt, а не зеркало, так как это означает, что он будет предлагать полный репозиторий не только тех пакетов, которые он имеет локально, но запрашиваемые пакеты будут получены только один раз и затем кэшируется, то же самое относится к спискам пакетов и т. д., которые кэшируются, пока они все еще актуальны.

Он также включает в себя параметры конфигурации для предварительного кэширования определенных отдельных пакетов или даже ветвей дерева пакетов с использованием подстановочных знаков, даже до того, как они будут запрошены клиентами, это может потенциально предложить лучшее из обоих миров, позволяя использовать локальные ресурсы, где это возможно, но все же обеспечивая откат в удаленный репозиторий при необходимости.

Это руководство, так как, возможно, стоит посмотреть, подойдет ли оно вам или нет. https://www.unix-ag.uni-kl.de/~bloch/acng/html/

Редактировать: после того, как я написал это, мне пришло в голову, что даже если бы вы на самом деле создавали собственный репозиторий и поддерживали его самостоятельно, клиенты все равно смотрели бы на загрузку пакетов, не найденных в этом репозитории, из основных репозиториев Ubuntu, если бы у них была копия недавнего список пакетов для них, если они не были полностью отключены, поэтому может быть просто проще использовать apt-cacher-ng, если вы будете осторожны, чтобы убедиться, что вы включили все, что понадобится вашим клиентам, это должно работать хорошо.

Другие вопросы по тегам