Jawaban ini mirip dengan yang di atas tetapi menggunakan konfigurasi contoh pertanyaan untuk menjawab pertanyaan. Plus ini menjelaskan mengapa kedua perintah itu diperlukan.
Edit /etc/network/interfaces:
iface eth0 inet static
address 192.168.3.3
netmask 255.255.255.0
gateway 192.168.3.1
dns-search example.com
dns-nameserver 192.168.3.45
dns-nameserver 192.168.8.10
Perubahan ini tidak akan terjadi kecuali Anda me-reboot atau memuat ulang file konfigurasi:
Untuk memperbarui file antarmuka secara langsung, Anda perlu menjalankan perintah berikut:
echo "nameserver 192.168.3.45
nameserver 192.168.8.10
search example.com" | sudo resolvconf -a eth0.inet
Ini memungkinkan pembaruan ke antarmuka tanpa reboot atau memuat ulang.
Namun, perubahan perintah di atas akan hilang setelah reboot jika perubahan dalam /etc/network/interfacestidak dilakukan.
Ngomong-ngomong, jawaban terakhir dari BDenis dalam daftar ini benar-benar berfungsi menggantikan perintah terakhir dengan mem-parsing /etc/network/interfacesfile dan menyalurkan baris-baris tersebut ke dalam perintah. sudo resolvconf -a eth0 Sebenarnya ini adalah setengah dari jawaban dan contoh yang sangat bagus dari penguraian sed inline. Jika Anda ingin melihat bagaimana ini dilakukan, jalankan saja bagian pertama dari perintah dan saksikan parsing /etc/network/interfacesfile dan keluarkan semua informasi yang diperlukan Anda perlu menjalankan sudo resolvconf -a eth0perintah:
sed 's/#.*$//' /etc/network/interfaces | grep dns- | sed 's/dns-//g'
Perhatikan ini akan menghasilkan keluaran yang sama seperti perintah:
echo "nameserver 192.168.3.45
nameserver 192.168.8.10
search example.com"
Asalkan /etc/network/interfacesfile tersebut dikonfigurasi dengan informasi ini:
iface eth0 inet static
address 192.168.3.3
netmask 255.255.255.0
gateway 192.168.3.1
dns-search example.com
dns-nameserver 192.168.3.45
dns-nameserver 192.168.8.10