Сховище CD і репозиторій програмного забезпечення є двома окремими компонентами ( у них навіть є окремі сторінки Launchpad: cdmirrors і archivemirrors ). Тому дзеркальне відображення їх є двома різними завданнями. Крім того, хоча різні аромати мають різні папки у сховищі компакт-дисків, вони мають спільне сховище програмного забезпечення. Таким чином, ви можете вибірково відображати зображення за смаком, але не програмне забезпечення. Для сховища програмного забезпечення ви можете вибірково відображати дзеркала на основі:
- реліз (
trusty, preciseі т.д.)
- архітектура (
amd64, i386і т.д.)
- тип пакету (двійковий [
deb] проти джерела [ deb-src])
- Вентиляційні канали (
trusty, trusty-updates, trusty-backportsі т.д.)
- ділянки (
main, multiverseі т.д.)
Для дзеркального відображення програмного забезпечення використовуйте apt-mirror.
apt-mirrorналаштовано за допомогою /etc/apt/mirror.list. Він має дуже схожий формат sources.list. У файлі конфігурації, встановленому пакетом, є кілька коментованих варіантів, у яких перераховуються їхні за замовчуванням. За бажанням ви можете їх коментувати та змінювати.
Для дзеркального відображення сховища вам потрібно додати рядок, mirror.listяк ви хотіли sources.list:
deb http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe
За замовчуванням відображається лише архітектура хоста, тому якщо ви працюєте на 64-бітному Ubuntu, відображатиметься лише amd64дзеркальне відображення. Вам потрібно додати ще один рядок форми:
deb-i386 http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe
А для вихідних пакетів:
deb-src http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe
Якщо ви шукаєте досить повно дзеркало, цих ліній буде мінімальним (я також рекомендую -updatesканал):
deb http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe
deb http://us.archive.ubuntu.com/ubuntu trusty-security main multiverse restricted universe
deb-i386 http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe
deb-i386 http://us.archive.ubuntu.com/ubuntu trusty-security main multiverse restricted universe
Нарешті, вам потрібно додати cleanрядок, щоб пакети, які більше не доступні у сховищі, фільтрували для видалення:
clean http://us.archive.ubuntu.com/ubuntu
Скажіть, ваші змінні є таким чином (за замовчуванням):
set base_path /var/spool/apt-mirror
set mirror_path $base_path/mirror
set skel_path $base_path/skel
set var_path $base_path/var
set cleanscript $var_path/clean.sh
Тоді:
- У сховищі буде відображено
$mirror_path/parent-hostname/directory(так /var/spool/apt-mirror/mirror/us.archive.ubuntu.com/ubuntu)
- Буде
clean.sh((це буде набір rmкоманд для видалення застарілих пакетів та каталогів) /var/spool/apt-mirror/var/clean.sh.
- Журнали підуть на
/var/spool/apt-mirror/var.
У apt-mirrorпакеті встановлено завдання cron ( /etc/cron.d/apt-mirror), яке слід відредагувати, щоб увімкнути (коментуючи рядок, що містить /usr/bin/apt-mirror). Ви також повинні додати cron для запуску clean.sh(я запускаю його щотижня).
Звичайно, вам слід замінити http://us.archive.ubuntu.com./ubuntuяке б ви не хотіли дзеркало.