Nama host adalah string yang dapat dibaca manusia yang membantu orang merujuk ke komputer dengan nama yang sudah dikenal, bukan dengan nomor atau deskriptor berat seperti, "yang ketiga dari bawah rak kedua hingga terakhir." Seringkali, nama host disetel selama proses instalasi, tetapi ada kalanya perlu diubah. Di Linux, ada banyak cara untuk menyetel nama host, dan artikel ini bertujuan untuk membahas semuanya.
Namun, sebelum menjelajahi alat yang terkait dengan nama host, Anda harus memahami konteks berbeda di mana istilah tersebut digunakan. Kemungkinan ada dua penanda nama host sistem:administrator komputer (pemilik laptop, atau pengguna root server) dan jaringan (bergantung pada protokol dan pengaturan). Faktor ini dapat menyebabkan kebingungan, karena Anda mungkin melihat nama host komputer Anda dan melihat satu nilai, hanya untuk menemukan bahwa komputer yang sama disebut sebagai sesuatu yang berbeda melalui jaringan.
Ada alasan historis untuk situasi ini. Dulu, sebelum DNS, host di jaringan harus didefinisikan secara lokal di file /etc/hosts
. Jika ada 31 host di jaringan dan yang baru ditambahkan, maka 32 host harus memperbarui /etc/hosts
mereka file untuk mencerminkan alamat IP yang benar dan nama host yang sesuai untuk masing-masing tetangganya. Proses ini tidak berskala baik untuk sistem jaringan yang lebih besar seperti World Wide Web (Internet), sehingga DNS ditemukan, dan konsep nama host sebagian besar diabstraksikan dari komputer lokal untuk dikelola oleh jaringan.
Saat ini, nama host yang penting adalah yang digunakan jaringan. Nilai nama host di /etc/hosts
sering diatur ke localhost
secara default.
Dengan mengingat konteks ini, berikut adalah semua cara berbeda untuk memanipulasi nama host di Linux.
[ Unduhan gratis:Lembar contekan perintah Linux tingkat lanjut. ]
Ubah ketiga nama dengan hostnamectl
hostnamectl
perintah dari systemd
dapat memanipulasi tiga jenis nama host:
- Sementara :Diterima dari konfigurasi jaringan.
- Statis :Disediakan oleh kernel.
- Cantik :Disediakan oleh pengguna.
Nama host sementara dapat berubah sesuai kebutuhan untuk menghindari tabrakan nama. Misalnya, jika Anda memberi nama komputer Anda penguin
tetapi sudah ada host lain dengan nama itu di jaringan, nama host jaringan Anda menjadi penguin-1
.
Nama host yang statis dan cantik sedikit mirip dengan variabel lokal:Mereka digunakan untuk aktivitas yang terjadi pada mesin lokal, sebagian besar sebagai kenyamanan bagi pengguna, bersama dengan aplikasi yang perlu mengetahui apakah mereka berjalan secara lokal atau jarak jauh (misalnya, selama sesi X yang diteruskan).
Saat dipanggil tanpa argumen apa pun, hostnamectl
mengembalikan nama statis dan cantik, ditambah beberapa informasi sistem:
$ hostnamectl
Static hostname: penguin
Pretty hostname: Penguin VM
Icon name: computer-vm
Chassis: vm
Machine ID: 418d9ce8ead44bbfb6970c0d356b89bf
Boot ID: fb3a310237ef41f88b1c62c26f19065a
Virtualization: kvm
Operating System: Fedora 30 (Workstation Edition)
CPE OS Name: cpe:/o:fedoraproject:fedora:30
Kernel: Linux 5.0.9-301.fc30.x86_64
Architecture: x86-64
$ sudo hostnamectl set-hostname --pretty "Web dev test environment"
$ sudo hostnamectl set-hostname --static webdev-test-env
$ hostnamectl
Static hostname: webdev-test-env
Pretty hostname: Web dev test environment
[...]
Ubah nama statis dan cantik di GUI dengan Pengaturan GNOME
Jika Anda ingin mengatur nama statis dan cantik di aplikasi desktop, gunakan Pengaturan GNOME. Untuk meluncurkan Setelan GNOME, buka Aktivitas menu di sudut kiri atas desktop GNOME Anda. Ketik Settings
ke dalam bidang pencarian, atau klik Tampilkan Aplikasi ikon di dok kiri dan temukan Setelan di ikon aplikasi seperti yang ditunjukkan di bawah ini:
$ hostnamectl
Static hostname: rockhopper-computer
Pretty hostname: rockhopper computer
[...]
Ubah nama statis dengan cockpit
Sistem Fedora, CentOS, dan RHEL menampilkan aplikasi konsol web yang disebut Cockpit untuk memantau dan mengonfigurasi mesin lokal dan jarak jauh. Dengan menggunakan Cockpit, Anda dapat mengubah nama host statis untuk mesin Anda sendiri, atau mesin apa pun yang Anda kelola (asalkan Cockpit diaktifkan).
Pertama, instal dan aktifkan Cockpit:
$ sudo dnf install cockpit
[...]
$ sudo systemctl enable --now cockpit
Di konsol web, klik Sistem tab di kolom kiri. Klik entri untuk Nama inang dan edit Nama Host Cantik dan (statis) Nama Host Asli :
$ sudo echo "galapagos" > /etc/hostname
$ hostnamectl
Static hostname: snares
Pretty hostname: rockhopper web console computer
[...]
Ubah nama statis di hostname
berkas
Anda juga dapat menyetel nama host statis secara manual dengan mengedit /etc/hostname
. File ini berisi tepat satu baris secara default. Jika Anda belum mengubah nama host, baris tersebut mungkin bertuliskan localhost.localdomain
. Jika Anda telah menggunakan hostnamectl
untuk mengubah nama host, maka file ini mencerminkan perubahan itu.
Mengedit file ini secara manual tidak selalu disarankan, karena tidak memperbarui semua nilai hostname lain dengan cara hostnamectl
melakukan. Misalnya:
$ sudo echo "galapagos" > /etc/hostname
$ hostnamectl
Static hostname: galapagos
Pretty hostname: rockhopper computer
Transient hostname: rockhopper-computer
[...]
Ubah nama statis dengan nmcli
Cara lain untuk mengubah nama host statis adalah melalui antarmuka baris perintah untuk Manajer Jaringan, nmcli
:
$ sudo nmcli general hostname emperor
$ hostnamectl
Static hostname: emperor
Pretty hostname: rockhopper computer
Transient hostname: rockhopper-computer
[...]
Ubah nama sementara dengan sysctl
sysctl
perintah memungkinkan Anda untuk mengonfigurasi parameter kernel saat Linux sedang berjalan (yaitu, alih-alih saat boot). Nama host sementara komputer Anda adalah parameter kernel, jadi Anda dapat memodifikasinya dengan perintah ini:
$ sudo sysctl kernel.hostname=humboldt
$ hostnamectl
Static hostname: emperor
Pretty hostname: rockhopper computer
Transient hostname: humboldt
[...]
Ubah nama sementara dengan hostname
hostname
perintah dari util-linux
package adalah alat sederhana untuk menanyakan dan menyetel nama host sementara.
Untuk menanyakan nama host Anda saat ini:
$ hostname
humboldt
$ sudo hostname fjordland
$ hostnamectl
Static hostname: emperor
Pretty hostname: rockhopper computer
Transient hostname: fjordland
Hati-hati dengan /etc/hosts
/etc/hosts
file sebagian besar bersejarah, meskipun digunakan oleh beberapa aplikasi dan protokol, dan dapat menjadi metode yang berguna untuk membuat pintasan ke host yang sering Anda gunakan. Anda dapat menggunakannya untuk menetapkan nama host, tetapi biasanya, Anda hanya membuat alias untuk localhost
di alamat IP 127.0.0.1
(alamat loopback jaringan komputer Anda).
Misalnya, jika Anda mengubah /etc/hosts
dari entri default seperti ini:
$ cat /etc/hosts
127.0.0.1 magellanic magellanic.localdomain magellanic magellanic.localdomain4
::1 magellanic magellanic.localdomain magellanic magellanic.localdomain6
$ ping -c 1 localhost
PING localhost(magellanic (::1)) 56 data bytes
64 bytes from magellanic (::1): icmp_seq=1 ttl=64 time=0.182 ms
[...]
$ ping -c 1 magellanic
PING magellanic(magellanic (::1)) 56 data bytes
64 bytes from magellanic (::1): icmp_seq=1 ttl=64 time=0.181 ms
[...]
$ hostnamectl
Static hostname: emperor
Pretty hostname: rockhopper computer
Transient hostname: fjordland
Ikuti konvensi kesesuaian
Seperti yang Anda ketahui dari iterasi dalam artikel ini, nama host komputer bisa membingungkan jika Anda menggunakan terlalu banyak metode untuk mengaturnya, atau jika Anda sering mengubahnya. Meskipun tidak ada yang memaksakan keseragaman di seluruh jenis nama host, ini adalah konvensi untuk menjaga semuanya tetap sama di setiap komputer.
Pilih nama yang mudah diingat dan gunakan untuk nama cantik Anda. Biarkan nama statis dan sementara diturunkan dari itu. Sama pentingnya, dalam jaringan besar, pilih bermakna nama. Misalnya, semua komputer manajemen tingkat atas mungkin dinamai monster D&D, sementara semua komputer di departemen TI mungkin dinamai kapal luar angkasa yang terkenal, dan seterusnya. Menggunakan skema penamaan membantu menghindari tabrakan nama dan memberikan konteks ke daftar host jaringan yang memusingkan.