Форум русскоязычного сообщества Ubuntu


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: [HOWTO] Локальное зеркало репозитория - это просто!  (Прочитано 5279 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн SillySeer

  • Автор темы
  • Новичок
  • *
  • Сообщений: 3
  • f r e e d o m
    • Просмотр профиля
Здравствуйте, уважаемые форумчане!

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

Создаем скрипт (это обычный текстовый файл, создать который можно, к примеру, в gedit или nano), который будет использоваться для загрузки и последующих обновлений нашего репозитория.

(Нажмите, чтобы показать/скрыть)

  • /home/user/mirror/ubuntu - Путь, где у вас на компьютере будет располагаться локальное зеркало репозитория. Не забудьте заменить здесь слово "user" на название своей пользовательской учетной записи
  • maverick - Указывает, что нужен репозиторий именно Ubuntu 10.10. Это первое слово кодового имени дистрибутива, меняя его вы можете создать репозиторий для любой версии Ubuntu. Для справки, hardy для 8.04 LTS, intrepid для 8.10, jaunty для 9.04, karmic для 9.10, lucid для 10.04 LTS, maverick для 10.10, natty для 11.04.
  • amd64 - Определяет архитектуру. Если у вас 64-битная Ubuntu оставьте без изменений, а для 32-битной замените amd64 на i386.

Созданному скрипту даем имя mirror.sh, щелкаем по значку появившегося файла правой кнопкой мыши, выбираем свойства, где даем ему право выполняться как программе. Устанавливаем пакет debmirror. Из консоли запускаем наш скрипт на выполнение, что займет от нескольких часов до нескольких дней - выкачать предстоит около 40Гб.

После успешного завершения загрузки (если будут ошибки - перезапустите скрипт, он докачает, но не пугайтесь 0% - это нормально, на сумму смотрите), можно отредактировать источники приложений (sudo nano /etc/apt/sources.list), чтобы получилось примерно так:

(Нажмите, чтобы показать/скрыть)

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

Периодически запуская скрипт, вы будете обновлять свое зеркало (старые пакеты удаляются автоматически).

Обновите список источников (sudo apt-get update) и пользуйтесь на здоровье.

Оффлайн JohnDoe

  • Активист
  • *
  • Сообщений: 562
    • Просмотр профиля
В офтопике есть Wsus. Который позволяет посмотреть какие обновления и для каких компьютеров необходимы. Можно одобрить на получение и установку только необходимых обновлений. Таким образом если есть сеть однотипных по составу машин, экономится место/время/трафик на зеркало обновлений. А потом машины на автомате тянут локально скачаные обновления. Для ubuntu есть подобные решения?.

Оффлайн ablamer

  • Участник
  • *
  • Сообщений: 126
    • Просмотр профиля
Буквально на прошлой неделе экспериментировал (скажу сразу, удачно) с apt-cacher-ng. Кабинет из 10-ти одинаковых машин (учебный класс) и раздающий шлюз. На шлюзе прописал серверную часть, на "рабочих лошадках" - клиентскую.
Скорость - 256  :-[ На обновление на одном из компьютеров системы с 10.04 до 10.10 ушло часов 10 (часов 8 скачивалось более 1500 пакетов, и часа полтора (может два - не засекал) на переустановку). На следующем компьютере эта же процедура (на следующий день) заняла всего часа полтора-два (приходилось отлучаться, поэтому точно сказать не могу), но полторы тысячи пакетов закачалось из шлюза за ... 5 минут.
Для моих потребностей этого вполне достаточно.

Оффлайн SillySeer

  • Автор темы
  • Новичок
  • *
  • Сообщений: 3
  • f r e e d o m
    • Просмотр профиля
Для Debian я не мудрствовал лукаво...

sudo debmirror -a amd64 -d squeeze --nosource --i18n -h mirror.yandex.ru --method=rsync --progress --ignore-release-gpg /home/user/debian
Только зеркала Яндекса - это тихий ужас...

 

Страница сгенерирована за 0.018 секунд. Запросов: 22.