Pendahuluan
Bagi pengguna linux, koneksi kentang sangat mengganggu. Karena untuk meng-install apa pun di linux, atau meng-update apa pun, secara umum kita pasti membutuhkan koneksi internet. Apa lagi distro penganut konsep rolling release seperti Arch Linux, yang mana siklus update cenderung lebih cepat dan lebih masif dari pada distro yang lain. Hal tersebut membuat kebutuhan terhadap koneksi internet yang cepat menjadi lebih besar.
Salah satu hal yang bisa kita lakukan untuk mempercepat koneksi adalah: menggunakan mirror server dari Indonesia. Mirror server adalah duplikat dari server utama, yang diletakkan di berbagai negara di dunia. Tujuannya adalah agar pengguna dari tiap negara bisa berkomunikasi dengan repo OS pada server terdekat di negaranya sendiri. Logikanya: semakin dekat jarak antara server dan client, maka semakin cepat pula komunikasi antar keduanya.
Di Indonesia sendiri, mirror server linux yang terkenal adalah: labkom.id, poliwangi.ac.id, ubaya.ac.id, dan telkomuniversity.ac.id.
Masalah dan Tujuan
Masalahnya, kita sudah memakai mirror server yang terdekat, yaitu dari Indonesia. Akan tetapi koneksinya tetap payah, sering putus-putus. Itu wajar, karena kecepatan komunikasi internet antara client dan server tidak hanya dipengaruhi oleh faktor jarak fisik saja, akan tetapi ada faktor yang lainnya juga seperti padatnya lalu lintas, faktor internal server itu sendiri, dan sebagainya.
Pada tutorial kali ini, kita akan mencari tahu mana mirror server yang paling cepat. Apakah ia yang terletak di Indonesia, atau kah justru yang berada di negara lain?
List Mirror Resmi Arch Linux
Semua mirror resmi Arch Linux, bisa kita akses lewat paket perintah pacman-mirrorlist
. Melalui paket perintah tersebut, kita bisa mendapatkan list mirror server Arch Linux yang terbaru.
Jika anda ingin mendapatkan versi list server mirror yang lebih up to date lagi, anda bisa menggunakan halaman resmi Pacman Mirrorlist Generator. Dalam tutorial ini, kita akan menggunakan laman tersebut untuk mengambil list mirror server.
Gambar 1: Halaman pacman mirror list generator. Anda bisa men-generate mirror list berdasarkan negara, protocol, dan sebagainya.
Memilih mirror yang akan diaktifkan
Kita bisa mengaktifkan semua mirror dari setiap negara yang ada. Prioritas mirror yang akan digunakan adalah yang berada di paling atas. Ketika kita sedang melakukan proses install atau pun update aplikasi, lalu tiba-tiba mirror yang paling atas tidak bisa dihubungi atau pun gangguan, maka mirror yang di bawahnya akan digunakan sebagai penggantinya. Dan begitu seterusnya.
Tapi, kita tidak butuh untuk mengaktifkan semua mirror kan?
Oleh karena itu, kita bisa mengaktifkan sebagiannya saja dan menonaktifkan yang lain.
Caranya adalah dengan menghapus tanda #
pada mirror yang ingin kita aktifkan, dan membiarkan tanda #
pada mirror yang kita tidak gunakan.
- Login sebagai
root
- Backup dulu file
/etc/pacman.d/mirrorlist
cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.backup
- Edit file
/etc/pacman.d/mirrorlist.backup
dengan text editor kesayangan anda - Generate mirror list dari halaman resmi Pacman Mirrorlist Generator.
- Copy dan paste mirror list hasil generate ke dalam file
/etc/pacman.d/mirrorlist.backup
- Aktifkan mirror yang kita butuhkan dengan menghapus tanda
#
- Nonaktifkan mirror yang tidak kita butuhkan dengan memberi tanda
#
- Atau, kita juga bisa menghapus mirror yang tidak kita butuhkan sehingga tidak terlalu banyak baris pada file tersebut
Ini adalah mirror list yang saya pilih di file /etc/pacman.d/mirrorlist.backup
. Saya hanya memilih mirror server Worldwide, Australia, Indonesia, Japan, dan Singapore.
# Worldwide
Server = http://mirrors.evowise.com/archlinux/$repo/os/$arch
Server = http://mirror.rackspace.com/archlinux/$repo/os/$arch
Server = https://mirror.rackspace.com/archlinux/$repo/os/$arch
# Australia
Server = https://mirror.aarnet.edu.au/pub/archlinux/$repo/os/$arch
Server = http://archlinux.mirror.digitalpacific.com.au/$repo/os/$arch
Server = https://archlinux.mirror.digitalpacific.com.au/$repo/os/$arch
Server = http://ftp.iinet.net.au/pub/archlinux/$repo/os/$arch
Server = http://mirror.internode.on.net/pub/archlinux/$repo/os/$arch
Server = http://archlinux.melbourneitmirror.net/$repo/os/$arch
Server = http://syd.mirror.rackspace.com/archlinux/$repo/os/$arch
Server = https://syd.mirror.rackspace.com/archlinux/$repo/os/$arch
Server = http://ftp.swin.edu.au/archlinux/$repo/os/$arch
# Indonesia
Server = http://mirror.labkom.id/archlinux/$repo/os/$arch
Server = http://mirror.poliwangi.ac.id/archlinux/$repo/os/$arch
Server = http://suro.ubaya.ac.id/archlinux/$repo/os/$arch
Server = http://mirror.telkomuniversity.ac.id/archlinux/$repo/os/$arch
Server = https://mirror.telkomuniversity.ac.id/archlinux/$repo/os/$arch
# Japan
Server = http://mirrors.cat.net/archlinux/$repo/os/$arch
Server = https://mirrors.cat.net/archlinux/$repo/os/$arch
Server = http://ftp.tsukuba.wide.ad.jp/Linux/archlinux/$repo/os/$arch
Server = http://ftp.jaist.ac.jp/pub/Linux/ArchLinux/$repo/os/$arch
Server = https://ftp.jaist.ac.jp/pub/Linux/ArchLinux/$repo/os/$arch
Server = https://jpn.mirror.pkgbuild.com/$repo/os/$arch
# Singapore
Server = http://mirror.0x.sg/archlinux/$repo/os/$arch
Server = https://mirror.0x.sg/archlinux/$repo/os/$arch
Server = http://mirror.aktkn.sg/archlinux/$repo/os/$arch
Server = https://mirror.aktkn.sg/archlinux/$repo/os/$arch
Server = https://download.nus.edu.sg/mirror/archlinux/$repo/os/$arch
Server = https://sgp.mirror.pkgbuild.com/$repo/os/$arch
Server = http://mirror.nus.edu.sg/archlinux/$repo/os/$arch
Dari mirror list tersebut, saya akan mengurutkannya berdasarkan server yang paling cepat.
Mengurutkan Mirror Berdasarkan Kecepatan
Kita telah mengaktifkan beberapa mirror list dari beberapa negara. Tentu saja anda bisa mengaktifkan semua mirror server dari semua negara, akan tetapi semakin banyak mirror list yang anda aktifkan, tentu akan semakin lama proses pengurutannya.
Kita akan menggunakan perintah rankmirrors
untuk mengurutkan mirror list yang telah kita pilih. Perintah rankmirrors
tersebut tersedia pada paket aplikasi pacman-contrib
. Jika anda belum menginstallnya, anda bisa menginstallnya langsung menggunakan pacman
.
sudo pacman -S pacman-contrib
Jika proses install telah selesai, silakan masuk sebagai root
lalu lakukan proses berikut:
rankmirrors /etc/pacman.d/mirrorlist.backup > /etc/pacman.d/mirrorlist
Ambil hanya 5 mirror tercepat
Kemungkinannya kecil sekali jika semua server akan gangguan. Sehingga kita sebenarnya tidak terlalu butuh dengan mirror server yang memang hubungan koneksinya tidak terlalu cepat.
Oleh karena itu, membatasi hanya beberapa server tercepat saja yang akan kita gunakan adalah ide yang bagus.
Kita bisa melakukan hal tersebut dengan menambahkan flag -n [jumlah batas]
. Pada contoh di sini, saya hanya mengambil 5
server mirror saja:
rankmirrors -n 5 /etc/pacman.d/mirrorlist.backup > /etc/pacman.d/mirrorlist
Dan berikut ini adalah hasil yang saya dapat:
Server = https://mirror.0x.sg/archlinux/$repo/os/$arch
Server = https://mirror.telkomuniversity.ac.id/archlinux/$repo/os/$arch
Server = https://ftp.jaist.ac.jp/pub/Linux/ArchLinux/$repo/os/$arch
Server = https://mirrors.cat.net/archlinux/$repo/os/$arch
Server = http://mirrors.cat.net/archlinux/$repo/os/$arch
Hmmm, ternyata yang tercepat bukan server dari Indonesia, ya?
Oiya, jika anda mengeksekusi perintah rankmirrors
sekali lagi, hasilnya bisa jadi berbeda. Karena memang kecepatan komunikasi internet antara client dan server, bergantung pada berbagai faktor yang cukup kompleks, tidak hanya faktor fisik antar keduanya saja.
Cara Alternatif Dengan Aplikasi Reflector
Kita telah mengurutkan dan memilih mirror server tercepat menggunakan tool resmi dari Arch Linux. Ada pun jika anda menginginkan cara alternatif yang lain, anda bisa menggunakan tool yang cukup populer di kalangan Arch Linux yaitu Reflector.
Kesimpulan
Kita sedang ingin install atau update sesuatu di Arch Linux. Akan tetapi kita sedang terjebak di koneksi internet yang lelet. Sudah memilih server terdekat tapi ternyata tetap saja tidak terlalu berpengaruh. Terkadang server terdekat pun memang tidak menjamin bahwa ia yang paling cepat karena pengaruh beberapa hal. Oleh karena itu kita butuh untuk mendeteksi mana server yang paling cepat. Apakah yang dari Indonesia? Atau kah yang dari luar negeri?
Arch Linux telah menyediakan aplikasi resmi untuk mendeteksi mana server yang paling cepat, lalu dari hasil pendeteksian tersebut kita bisa memilihnya sebagai mirror server default.
Referensi: https://wiki.archlinux.org/index.php/mirrors