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, preciseetc.)
- architektura (
amd64, i386etc.)
- typ pakietu (binarny [
deb] vs źródło [ deb-src])
- kanały (
trusty, trusty-updates, trusty-backportsetc.)
- Sekcje (
main, multiverseetc.)
Aby wykonać kopię lustrzaną repozytorium oprogramowania, użyj apt-mirror.
apt-mirrorjest 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.listjak 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 amd64kopia 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ż -updateskanał):
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ć cleanwiersz , 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 rmpoleceń, 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-mirrorPakiet 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./ubuntudowolne lustro.