Создание локального репозитория Debian

07 Апреля 2007 19:44 ::: Просмотров 15233 ::: Комментариев 2

Чтобы всегда иметь свежие версии софта и не качать каждый раз пакеты после переустановки (я же еще практикуюсь :) было решено создать на винте локальный репозиторий пакетов для Debian. Изучив вопрос, узнал два варианта - регулярно добывать диски со свежими срезами и монтировать их в свой репозиторий, или создать копию официального репозитория и регулярно обновлять его через инет. Поскольку, как ранее выяснилось, в нашей местной локальной сетке уже есть проксирующее зеркало дебиана, выбор варианта очевиден.

Для осуществления мечты нужен sudo apt-get install apt-mirror. Поразмыслив, для репозитория (и других могущих появится одиночных пакетов) выделил отдельный раздел (назвал просто - arhif) размером 20 Гб, в нем создал папку repo. Правим конфиг apt-mirror`a - /etc/apt/mirror.list, где указываем для моего случая:

set mirror_path /arhif/repo/
set defaultarch i386
set _tilde 0
deb http://debian.bashtel.ru/apt-cacher/ftp.debian.org/ etch main contrib
clean http://debian.bashtel.ru/apt-cacher/ftp.debian.org/

Сие действие нужно проводить внимательно, ибо я долго не мог понять, почему в репо копится много старых пакетов, а apt-mirror упорно сообщает что удалять нечего.

После первого запуска apt-mirror создал структуру папок, аналогичных натуральному :) репозиторию, и радостно сообщил, что качать осталось 12Гб с копейками. Это меня не обрадовало, поэтому, применив дедуктивный метод, сделал следующее - скопировал содержимое папок pool с трех имеющихся у меня дисков Debian Etch в соотвествующее место своего архива. Запускаем еще раз apt-mirror и видим, что качать нужно всего-то 800 метров с копейками. Настраиваем Synaptic или sources.list на наш локальный репозиторий, и радуемся быстрому обновлению и установке новых пакетов.

Этот способ безупречно работает уже месяц. Еженедельный размер обновлений составил около 600Мб. Единственный минус - после очередного apt-get upgrade перестал запускаться мой любимый браузер Опера, ругаясь на libjvm.so, libawt.so и Segmentation Fault (любимая ошибка линукс? часто мне встречается). Приходится печально юзать Iceweasel. Но это мелочи жизни по сравнению с проделанной работой и радужными перспективами. Для примера - на работе в порыве душевной слабости и с лучшими намерениями разрешил двум серверам (Windows 2003) обновляться из инета. Результат - регулярное падение в синий экран смерти, хотя до этого с год все работало без особых проблем.

Собственно, может быть для дома все это и не нужно, но я втайне надеюсь, что мой репозиторий может пригодится еще кому-нибудь. Не у всех есть интернет. И интересно, сколько весит репозиторий Ubuntu? :)

Комментарии

Е.А.28 Апреля 2008 16:18#373

А если apt-mirror должен через прокси с предоставлением имени и пароля выходить в интернет, то куда прокси прописывать?

12316 Декабря 2011 17:52#603

apt-mirror после запуска выкачивает посредством wget'a, и следовательно необходимо настроить wget на работу через проски-сервер. вот.

Возврат к списку