Salah satu masalah yang sering dialami pengguna server, terutama di lingkungan VPS atau cloud, adalah perubahan nama host (hostname) server kembali ke nilai default (seringkali localhost.localdomain
atau nama lain yang ditetapkan provider) setelah server di-reboot Meskipun Anda sudah mengatur hostname yang diinginkan, perubahan ini bisa sangat membingungkan. Artikel ini akan menjelaskan mengapa hal ini terjadi dan bagaimana cara mengatasinya.
Penyebab paling umum dari masalah ini adalah adanya sistem atau skrip otomatis yang berjalan saat server booting (startup) dan menimpa pengaturan hostname Anda. Sistem ini dirancang untuk melakukan konfigurasi awal server, tetapi kadang-kadang bisa mengganggu pengaturan yang sudah Anda buat secara manual.
Penyebab Umum
- Cloud-init atau: Di banyak lingkungan cloud dan VPS, alat seperti cloud-init digunakan untuk mengkonfigurasi server saat pertama kali dijalankan. Alat ini dapat menimpa file konfigurasi hostname setiap kali server di-boot, bahkan setelah konfigurasi awal selesai.
- Skrip Jaringan: Skrip jaringan sistem operasi Anda mungkin dikonfigurasi untuk mengatur hostname berdasarkan pengaturan DHCP atau sumber lain saat antarmuka jaringan aktif.
- File Konfigurasi yang Salah: Pengaturan hostname mungkin tidak disimpan dengan benar di file konfigurasi sistem yang tepat, sehingga tidak dibaca saat booting.
- Masalah resolv.conf: Meskipun jarang menjadi penyebab langsung perubahan hostname itu sendiri, konfigurasi file
/etc/resolv.conf
yang salah dapat memengaruhi bagaimana sistem mengenali atau menampilkan hostname.
Solusi yang Direkomendasikan
Untuk mencegah hostname Anda berubah kembali setelah melakukan reboot, langkah terpenting adalah memastikan pengaturan Anda tidak ditimpa oleh proses otomatis. Berikut adalah langkah-langkah yang dapat Anda ambil:
Menonaktifkan Hostname Cloud-init
Solusi paling umum untuk server cloud/VPS. Anda perlu memberi tahu cloud-init untuk tidak mengelola hostname. Ini biasanya dilakukan dengan mengedit file konfigurasi cloud-init, seperti /etc/cloud/cloud.cfg
, dan menambahkan atau mengubah baris yang relevan untuk menonaktifkan modul hostname. Cari bagian yang mencantumkan modul yang dijalankan dan pastikan modul terkait hostname dinonaktifkan atau dihapus dari daftar eksekusi saat boot.
Setup Hostname
Pastikan hostname Anda diatur dengan benar di file konfigurasi sistem operasi yang relevan. File ini bervariasi tergantung distribusi Linux, tetapi yang paling umum adalah /etc/hostname
. Pastikan file ini hanya berisi hostname yang Anda inginkan.
Menggunakan perintah hostnamectl
Pada sistem yang menggunakan systemd
(seperti CentOS 7/8, AlmaLinux 8/9, Rocky Linux 8/9, Ubuntu 15.04 ke atas), Anda dapat mengatur hostname secara persisten menggunakan perintah:
1 | hostnamectl set-hostname myhost.domain.example |
Ganti myhost.domain.example
dengan hostname yang Anda inginkan.
Periksa Networking Script
Tinjau konfigurasi interface jaringan Anda (misalnya file di /etc/sysconfig/network-scripts/
pada distribusi berbasis Red Hat atau di /etc/netplan/
pada distribusi berbasis Ubuntu/Debian yang lebih baru) untuk memastikan tidak ada pengaturan yang secara otomatis mengubah hostname.
Konsultasi dengan Provider
Apabila semua cara diatas tetap tidak berhasil mereka mungkin memiliki sistem provisioning unik yang menimpa pengaturan atau memiliki cara khusus untuk menonaktifkan manajemen hostname otomatis di platform mereka.
Kesimpulan
Dengan mengatasi penyebab akar masalah, terutama dengan menonaktifkan alat provisioning otomatis seperti cloud-init agar tidak mengelola hostname, Anda dapat memastikan bahwa hostname server Anda tetap stabil setelah setiap server di reboot.