Simpan Cerita Duniamu

Blog campuran buat pengalaman wara wiri menyusuri internet dari mulai IT, Olahraga, Gosip Hingga Pengalaman Sehari - Hari yang akan menjadi Sejarah Di Masa Yang Akan Datang

Membuat Mirror Repository Ubuntu Xenial Xerus 16.04

simpandunia.blogspot.com
Ubuntu 16.04 Xenial Xerus yang hadir April 2016 ini membawa berbagai perubahan baru termasuk di Repositorynya seperti adanya folder Dep11 untuk metadata. Masalahnya debmirror yang biasa saya jalankan sejak jaman lucid ini tidak memirror dengan lengkap. Folder - folder metadata seperti Hash dan Dep11 ini tidak dimirror oleh debmirror sehingga terjadi error ketika kita mengarahkan repo ke lokal.

Nah setelah berbagai percobaan akhirnya saya berhasil membuat repository lokal ubuntu ini untuk 16.04 LTS. berikut langkah - langkahnya. Jadi kali ini saya gabungkan debmirror dengan Rsync.

Kenapa ngga rsync aja semua? Karena mirror repo dengan rsync itu harus sedot semua versi. Jadi contohnya di repo ugm ini ubuntu ada mulai dari Dapper hingga Xenial, wah mabok kalo di sedot semua bisa sampe 600gb, kapan beresnyaaa.. makanya digunakan debmirror untuk tarik xenial saja.

Kenapa ga cukup debmirror saja seperti versi sebelum Xenial ? Ya itu tadi di 16.04 LTS ini ada folder metadata yang ngga di mirror oleh debmirror (semoga versi debmirror selanjutnya diperbaiki) jadi saat ini ya saya gabung aja script antara debmirror dan rsync.

Alat dan Bahan :
  • Server dengan kapasitas hardisk yang cukup besar total untuk repo ini hampir mencapai 100 gb.
  • Koneksi internet yang mumpuni minimal stabil lah untuk download file total 100 gb tersebut :)
Setting Server Parameter Mirroring
Saya menyiapkan lokasi repo di /media/data/mirror/ubuntu/ (silahkan sesuaikan dengan kondisi server masing - masing)

1. Install debmirror
sudo apt-get install debmirror
2. Membuat mirror Keyring sebagai validasi sehingga client ketika akses repo tidak menemui error
gpg --no-default-keyring --keyring /media/data/mirror/mirrorkeyring/trustedkeys.gpg --import /usr/share/keyrings/ubuntu-archive-keyring.gpg
3. Buatlah script seperti ini :


export GNUPGHOME=/media/data/mirror/mirrorkeyring/
debmirror -m --i18n --passive \
--host=repo.ugm.ac.id \



--root=ubuntu \
--method=http \
--progress \
--dist=xenial,xenial-security,xenial-updates,xenial-backports,xenial-proposed \
--section=main,restricted,universe,multiverse \
--arch=i386,amd64 \
--nosource \
--nocleanup \
--getcontents \
--nosource --ignore-release-gpg --ignore-missing-release \
/media/data/mirror/ubuntu
rsync -a --progress --include-from /media/data/mirror/release.txt --exclude '*' rsync://repo.ugm.ac.id/ubuntu/dists/ /media/data/mirror/ubuntu/dists/
simpan script tersebut dengan sebagai file .sh, misal mirror-ubuntu.sh

4. Persiapan awal selesai, dan script bisa langsung dijalankan. Sekarang tinggal setting cron job agar script tersebut dijalankan secara rutin sesuai yang kita inginkan.
crontab -e
kemudian tentukan jadwal jalannya script tersebut di cron, saya menjalankan setiap jam 9 malam setiap hari dimana trafik internet kantor mulai sepi :)
0 20 * * * sh /media/data/mirror/mirror-ubuntu.sh > /media/data/log/ubuntu.log
save.
Proses download mirror repo ini bisa berlangsung beberapa hari bahkan minggu tergantung kecepatan internet dalam mendownload tentunya. Untuk itu maka di cron tersebut kita perintahkan juga agar proses yang berjalan membuat log aktivitasnya sehingga kita bisa memantau apa proses masih berlangsung atau beres.

5. Agar bisa diakses oleh client maka kita harus aktifkan webserver di server repo ini, cukup gunakan apache.
sudo apt-get install apache2
6. Kemudian buat link akses web ke folder yang telah berisi repository ini.
sudo ln -s /media/data/mirror/ubuntu/ /var/www/ubuntu/
Nantinya alamat akses repo ini adalah http://ip-server/ubuntu

Beresss..

Setting Client
Untuk setiap client yang akan diubah arahnya menggunakan repo lokal maka harus di edit isi file sources.list dan isi dengan link berikut :

deb http://ip-server-repo/ubuntu xenial main restricted universe multiverse
deb http://ip-server-repo/ubuntu xenial-security main restricted universe multiverse
deb http://ip-server-repo/ubuntu xenial-updates main restricted universe multiverse
deb http://ip-server-repo/ubuntu xenial-backports main restricted universe multiverse
deb http://ip-server-repo/ubuntu xenial-proposed main restricted universe multiverse
kemudian jalankan prosedut update repo
sudo apt-get update
Beresss repo udah diarahkan ke lokal, jadi proses install di ubuntu pasti bakal lebih wushhhh :D

Masih ada yang bingung? Diskusi di kolom komentar aja yuuuu...
Share this article :
+
Previous
Next Post »
0 Komentar untuk "Membuat Mirror Repository Ubuntu Xenial Xerus 16.04"