Repositori CD dan repositori perangkat lunak adalah dua komponen yang berbeda (mereka bahkan memiliki halaman Launchpad yang terpisah: cdmirrors dan archivemirrors ). Oleh karena itu, pencerminannya adalah dua tugas berbeda. Lebih lanjut, sementara berbagai rasa memiliki folder yang berbeda pada repositori CD, mereka merasakan berbagi repositori perangkat lunak. Jadi Anda dapat secara selektif mencerminkan gambar per rasa, tetapi tidak pada perangkat lunaknya. Untuk repositori perangkat lunak, Anda dapat melakukan mirroring secara selektif berdasarkan:
- melepaskan (
trusty
, precise
, dll)
- arsitektur (
amd64
, i386
, dll)
- jenis paket (biner [
deb
] vs sumber [ deb-src
])
- saluran (
trusty
, trusty-updates
, trusty-backports
, dll)
- bagian (
main
, multiverse
, dll)
Untuk mencerminkan repositori perangkat lunak, gunakan apt-mirror
.
apt-mirror
dikonfigurasi menggunakan /etc/apt/mirror.list
. Ini memiliki format yang sangat mirip sources.list
. File konfigurasi yang diinstal oleh paket memiliki beberapa opsi berkomentar yang berisi daftar default-nya. Jika mau, Anda dapat menghapus komentar dan mengubahnya.
Untuk mencerminkan repositori, Anda perlu menambahkan baris mirror.list
seperti yang Anda inginkan untuk sources.list
:
deb http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe
Standarnya adalah hanya mencerminkan arsitektur host, jadi jika Anda menggunakan Ubuntu 64-bit, hanya amd64
akan dicerminkan. Anda perlu menambahkan baris lain dari formulir:
deb-i386 http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe
Dan untuk paket-paket sumber:
deb-src http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe
Jika Anda mencari cermin yang cukup lengkap, garis-garis ini akan menjadi minimum (saya juga akan merekomendasikan -updates
saluran):
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
Terakhir, Anda perlu menambahkan clean
baris agar paket yang tidak lagi tersedia di repositori difilter untuk dihapus:
clean http://us.archive.ubuntu.com/ubuntu
Katakanlah variabel Anda dengan demikian (default):
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
Kemudian:
- Repositori akan dicerminkan ke
$mirror_path/parent-hostname/directory
(jadi /var/spool/apt-mirror/mirror/us.archive.ubuntu.com/ubuntu
)
- The
clean.sh
(yang akan menjadi set rm
perintah untuk menghapus paket usang dan direktori) akan /var/spool/apt-mirror/var/clean.sh
.
- Log akan pergi ke
/var/spool/apt-mirror/var
.
The apt-mirror
paket menginstal sebuah tugas cron ( /etc/cron.d/apt-mirror
), yang harus Anda edit untuk mengaktifkan (oleh uncommenting baris yang berisi /usr/bin/apt-mirror
). Anda juga harus menambahkan pekerjaan cron untuk menjalankan clean.sh
(saya menjalankannya setiap minggu).
Tentu saja, Anda harus mengganti http://us.archive.ubuntu.com./ubuntu
dengan cermin mana yang Anda inginkan.