В связи со складывающейся ситуацией в российском сегменте сети Интернет, было принято решение сохранить (отзеркалировать) некоторые ресурсы сети, составляющие большую ценность, в силу накопленного человеческого труда, вложенного в их создание.
Встроенное средство apt-mirror позволяет создать "зеркало" точную копию репозитория Ubuntu на домашнем компьютере, для автономного использования в качестве источника пакетов.
Основной конфигурационный файл apt-mirror: /etc/apt/mirror.list
Формат сходен с sources.list.
Для 64-битной ubuntu, надо также скачивать и пакеты архитектуры i386, потому что без них, не обходиться.
Под автономный репозиторий пакетов у меня выделен раздел: /mnt/repository
Примерное содержимое:
# сервер: redbox
# дата: 16 апреля 2014 года
#
############# config ##################
#
set base_path /mnt/repository
#
set mirror_path $base_path/mirror
set skel_path $base_path/skel
set var_path $base_path/var
# set cleanscript $var_path/clean.sh
# set defaultarch <running host architecture>
# set postmirror_script $var_path/postmirror.sh
# set run_postmirror 0
set nthreads 20
set _tilde 0
#
############# end config ##############
deb http://ru.archive.ubuntu.com/ubuntu trusty main restricted universe multiverse
deb http://ru.archive.ubuntu.com/ubuntu trusty-security main restricted universe multiverse
deb http://ru.archive.ubuntu.com/ubuntu trusty-updates main restricted universe multiverse
#deb http://ru.archive.ubuntu.com/ubuntu trusty-proposed main restricted universe multiverse
#deb http://ru.archive.ubuntu.com/ubuntu trusty-backports main restricted universe multiverse
deb-src http://ru.archive.ubuntu.com/ubuntu trusty main restricted universe multiverse
deb-src http://ru.archive.ubuntu.com/ubuntu trusty-security main restricted universe multiverse
deb-src http://ru.archive.ubuntu.com/ubuntu trusty-updates main restricted universe multiverse
#deb-src http://ru.archive.ubuntu.com/ubuntu trusty-proposed main restricted universe multiverse
#deb-src http://ru.archive.ubuntu.com/ubuntu trusty-backports main restricted universe multiverse
# Пакеты архитектуры i386 нужны
deb-i386 http://ru.archive.ubuntu.com/ubuntu trusty main restricted universe multiverse
deb-i386 http://ru.archive.ubuntu.com/ubuntu trusty-security main restricted universe multiverse
deb-i386 http://ru.archive.ubuntu.com/ubuntu trusty-updates main restricted universe multiverse
# Стоит ли эти репозитории качать?
#deb http://archive.canonical.com/ubuntu trusty partner
#deb-src http://archive.canonical.com/ubuntu trusty partner
#deb http://extras.ubuntu.com/ubuntu trusty main
#deb-src http://extras.ubuntu.com/ubuntu trusty main
clean http://ru.archive.ubuntu.com/ubuntu
Для ежедневного обновления (проверки) используется системное расписание cron.
Конфигурация системного расписания, в части apt-mirror находится в файле: /etc/cron.d/apt-mirror
Там такая запись:
0 13 * * * apt-mirror /usr/bin/apt-mirror > /mnt/repository/cron.log
Выполняется всё от имени пользователя apt-mirror.
И папкам репозитория надо присвоить владельца apt-mirror
$ sudo chown -R apt-mirror:apt-mirror /mnt/repository/{mirror,skel,var}
После этого, из Файлового менеджера, под обычным пользователем, эти папки не будут доступны для просмотра.
Можно с пользователем apt-mirror и не связываться, тогда просто запуск надо выполнять от пользователя root.
Сейчас, я склоняюсь к мысли выделить отдельно репозиторий исходных кодов и исполняемых пакетов. Для этого два-три-четыре файла mirror.list надо создать.
Это вызвано тем, что такие (~60GB) объёмы сложно записывать на BDRE.
В расписании появиться, нужное количество строк и данные будут разнесены и станут более удобными для использования, т.к. иногда исходные коды не очень нужны. Хотя...
При недоступности Интернета, это позволяет сохранять работоспособность операционной системы Ubuntu, достаточно долгое время.
Для использования локального репозитория, надо переформатировать файл источников: /etc/apt/sources.list
Ссылка на локальный репозиторий в файле /etc/apt/sources.list выглядит где-то так (взято с автономной ubuntu, где том хранения репозитория носит название reconditorium):
deb file:///mnt/reconditorium/mirror/ru.archive.ubuntu.com/ubuntu trusty main
deb file:///mnt/reconditorium/mirror/ru.archive.ubuntu.com/ubuntu trusty restricted
deb file:///mnt/reconditorium/mirror/ru.archive.ubuntu.com/ubuntu trusty universe
deb file:///mnt/reconditorium/mirror/ru.archive.ubuntu.com/ubuntu trusty multiverse
И так для каждого репозитория, trusty, trusty-security, trusty-updates и т.п.
Строк будет много, для наглядности.
Надо заметить 3 символа /, а также, "mirror/ru.archive.ubuntu.com/" - это потому, что зеркалировалось российское зеркало.
Объем полного репозитория trusty около ~120GB.
После переключения на локальный репозиторий, можно сделать:
$ sudo rm /var/lib/apt/lists/* -vf
$ sudo apt-get update
1. Похоже зеркалировать надо и Debian.
2. Похоже нужны емкие диски.
3. Разбиение репозитория на куски, позволяет гибко, по мере необходимости подключать и отключать внешние диски с пакетами программ и исходных кодов, да и зеркалирование выполнять ночью, а не днём и пореже.
1. Ubuntu. http://help.ubuntu.ru/wiki/apt-mirror
Вечное хранение репозитория Ubuntu
Ubuntu без доступа к хранилищу пакетов (репозиторию) - это не Ubuntu.Встроенное средство apt-mirror позволяет создать "зеркало" точную копию репозитория Ubuntu на домашнем компьютере, для автономного использования в качестве источника пакетов.
Основной конфигурационный файл apt-mirror: /etc/apt/mirror.list
Формат сходен с sources.list.
Для 64-битной ubuntu, надо также скачивать и пакеты архитектуры i386, потому что без них, не обходиться.
Под автономный репозиторий пакетов у меня выделен раздел: /mnt/repository
Примерное содержимое:
# сервер: redbox
# дата: 16 апреля 2014 года
#
############# config ##################
#
set base_path /mnt/repository
#
set mirror_path $base_path/mirror
set skel_path $base_path/skel
set var_path $base_path/var
# set cleanscript $var_path/clean.sh
# set defaultarch <running host architecture>
# set postmirror_script $var_path/postmirror.sh
# set run_postmirror 0
set nthreads 20
set _tilde 0
#
############# end config ##############
deb http://ru.archive.ubuntu.com/ubuntu trusty main restricted universe multiverse
deb http://ru.archive.ubuntu.com/ubuntu trusty-security main restricted universe multiverse
deb http://ru.archive.ubuntu.com/ubuntu trusty-updates main restricted universe multiverse
#deb http://ru.archive.ubuntu.com/ubuntu trusty-proposed main restricted universe multiverse
#deb http://ru.archive.ubuntu.com/ubuntu trusty-backports main restricted universe multiverse
deb-src http://ru.archive.ubuntu.com/ubuntu trusty main restricted universe multiverse
deb-src http://ru.archive.ubuntu.com/ubuntu trusty-security main restricted universe multiverse
deb-src http://ru.archive.ubuntu.com/ubuntu trusty-updates main restricted universe multiverse
#deb-src http://ru.archive.ubuntu.com/ubuntu trusty-proposed main restricted universe multiverse
#deb-src http://ru.archive.ubuntu.com/ubuntu trusty-backports main restricted universe multiverse
# Пакеты архитектуры i386 нужны
deb-i386 http://ru.archive.ubuntu.com/ubuntu trusty main restricted universe multiverse
deb-i386 http://ru.archive.ubuntu.com/ubuntu trusty-security main restricted universe multiverse
deb-i386 http://ru.archive.ubuntu.com/ubuntu trusty-updates main restricted universe multiverse
# Стоит ли эти репозитории качать?
#deb http://archive.canonical.com/ubuntu trusty partner
#deb-src http://archive.canonical.com/ubuntu trusty partner
#deb http://extras.ubuntu.com/ubuntu trusty main
#deb-src http://extras.ubuntu.com/ubuntu trusty main
clean http://ru.archive.ubuntu.com/ubuntu
Для ежедневного обновления (проверки) используется системное расписание cron.
Конфигурация системного расписания, в части apt-mirror находится в файле: /etc/cron.d/apt-mirror
Там такая запись:
0 13 * * * apt-mirror /usr/bin/apt-mirror > /mnt/repository/cron.log
Выполняется всё от имени пользователя apt-mirror.
И папкам репозитория надо присвоить владельца apt-mirror
$ sudo chown -R apt-mirror:apt-mirror /mnt/repository/{mirror,skel,var}
После этого, из Файлового менеджера, под обычным пользователем, эти папки не будут доступны для просмотра.
Можно с пользователем apt-mirror и не связываться, тогда просто запуск надо выполнять от пользователя root.
Сейчас, я склоняюсь к мысли выделить отдельно репозиторий исходных кодов и исполняемых пакетов. Для этого два-три-четыре файла mirror.list надо создать.
Это вызвано тем, что такие (~60GB) объёмы сложно записывать на BDRE.
В расписании появиться, нужное количество строк и данные будут разнесены и станут более удобными для использования, т.к. иногда исходные коды не очень нужны. Хотя...
※※※
Использование локального репозитория
При недоступности Интернета, это позволяет сохранять работоспособность операционной системы Ubuntu, достаточно долгое время.
Для использования локального репозитория, надо переформатировать файл источников: /etc/apt/sources.list
Ссылка на локальный репозиторий в файле /etc/apt/sources.list выглядит где-то так (взято с автономной ubuntu, где том хранения репозитория носит название reconditorium):
deb file:///mnt/reconditorium/mirror/ru.archive.ubuntu.com/ubuntu trusty main
deb file:///mnt/reconditorium/mirror/ru.archive.ubuntu.com/ubuntu trusty restricted
deb file:///mnt/reconditorium/mirror/ru.archive.ubuntu.com/ubuntu trusty universe
deb file:///mnt/reconditorium/mirror/ru.archive.ubuntu.com/ubuntu trusty multiverse
И так для каждого репозитория, trusty, trusty-security, trusty-updates и т.п.
Строк будет много, для наглядности.
Надо заметить 3 символа /, а также, "mirror/ru.archive.ubuntu.com/" - это потому, что зеркалировалось российское зеркало.
Объем полного репозитория trusty около ~120GB.
После переключения на локальный репозиторий, можно сделать:
$ sudo rm /var/lib/apt/lists/* -vf
$ sudo apt-get update
※※※
Выводы
1. Похоже зеркалировать надо и Debian.
2. Похоже нужны емкие диски.
3. Разбиение репозитория на куски, позволяет гибко, по мере необходимости подключать и отключать внешние диски с пакетами программ и исходных кодов, да и зеркалирование выполнять ночью, а не днём и пореже.
※※※
Ресурсы
1. Ubuntu. http://help.ubuntu.ru/wiki/apt-mirror
※※※
Комментариев нет:
Отправить комментарий