Repozytorium CD i repozytorium oprogramowania to dwa odrębne komponenty (mają nawet osobne strony Launchpada: cdmirrors i archivemirrors ). Dlatego ich odbicie lustrzane to dwa odrębne zadania. Ponadto, podczas gdy różne smaki mają różne foldery w repozytorium CD, współużytkują repozytorium oprogramowania. Możesz więc selektywnie odzwierciedlać obrazy według smaku, ale nie oprogramowania. W przypadku repozytorium oprogramowania można selektywnie wykonać kopię lustrzaną w oparciu o:
- zwalniające (
trusty
, precise
etc.)
- architektura (
amd64
, i386
etc.)
- typ pakietu (binarny [
deb
] vs źródło [ deb-src
])
- kanały (
trusty
, trusty-updates
, trusty-backports
etc.)
- Sekcje (
main
, multiverse
etc.)
Aby wykonać kopię lustrzaną repozytorium oprogramowania, użyj apt-mirror
.
apt-mirror
jest skonfigurowany za pomocą /etc/apt/mirror.list
. Ma format bardzo podobny do sources.list
. Plik konfiguracyjny zainstalowany przez pakiet ma kilka skomentowanych opcji, które zawierają ich wartości domyślne. Jeśli chcesz, możesz anulować komentarz i zmienić je.
Lustro repozytorium, trzeba dodać linię do mirror.list
jak byś dla sources.list
:
deb http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe
Domyślnie kopia lustrzana ma tylko architekturę hosta, więc jeśli korzystasz z 64-bitowego systemu Ubuntu, tylko amd64
kopia lustrzana będzie dublowana. Musisz dodać kolejny wiersz formularza:
deb-i386 http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe
A dla pakietów źródłowych:
deb-src http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe
Jeśli szukasz dość kompletnego lustra, te linie byłyby minimum (poleciłbym również -updates
kanał):
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
Na koniec należy dodać clean
wiersz , aby pakiety, które nie są już dostępne w repozytorium, były filtrowane w celu usunięcia:
clean http://us.archive.ubuntu.com/ubuntu
Powiedzmy, że twoje zmienne są (domyślne):
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
Następnie:
- Repozytorium zostanie dublowane
$mirror_path/parent-hostname/directory
(tak /var/spool/apt-mirror/mirror/us.archive.ubuntu.com/ubuntu
)
clean.sh
(Który będzie zestaw rm
poleceń, aby usunąć przestarzałe pakiety i katalogów) będzie /var/spool/apt-mirror/var/clean.sh
.
- Dzienniki przejdą do
/var/spool/apt-mirror/var
.
apt-mirror
Pakiet instaluje crona ( /etc/cron.d/apt-mirror
), które należy włączyć do edycji (przez odkomentowanie linię zawierającą /usr/bin/apt-mirror
). Powinieneś także dodać zadanie crona do uruchamiania clean.sh
(uruchamiam je co tydzień).
Oczywiście powinieneś zastąpić http://us.archive.ubuntu.com./ubuntu
dowolne lustro.