Bagaimana cara mengatur nama domain di GNU / Linux?

27

Demikian pula dengan nama host yang dapat diubah dengan berbagai cara:

  • untuk sementara menggunakan hostnameperintah
  • menggunakan secara permanen /etc/hostname(atau /etc/sysconfig/networkatau /etc/HOSTNAME, file-file ini digunakan oleh skrip init)

Saya ingin mengubah nama domain saya. Saya dapat menggunakan domainnameperintah, tetapi apakah ada cara untuk membuatnya permanen di seluruh reboot? Saya pikir itu dapat dikonfigurasi /etc/resolv.conftetapi file ini umumnya dibuat dan saya tidak tahu persis perbedaan antara searchdan domainarahan. Dan pada jam berapa tepatnya informasi yang dilewatkan ke domainnameprogram untuk mengatur nama domain?

Apakah Anda punya ide tentang itu?

Saya ingin sebagian besar kompatibel di seluruh distribusi. Jadi, jika ada orang yang memiliki petunjuk tentang rasa distribusi yang berbeda, saya dengan senang hati akan menerimanya.

Mildred
sumber
Setiap distribusi melakukan ini secara berbeda. Anda tertarik dengan yang mana? Dan apakah Anda membaca dokumentasinya?
Michael Hampton
Kebanyakan rasa RedHat dan Debian. Dan saya tidak dapat menemukan informasi yang relevan dalam dokumentasi. Tapi mungkin saya belum melihat cukup keras, saya akui saya tidak tahu persis di mana dalam dokumentasi itu bisa (atau bahkan jika itu ada di dokumen).
Mildred
1
Itu adil. Dalam dokumentasi Red Hat, itu terkubur dalam lampiran . Sementara di Debian tidak terkubur dalam lampiran , tetapi membingungkan ...
Michael Hampton
1
@Michael Tautan ini pada milis debian sangat berguna, terutama Jadi untuk akhirnya menjawab pertanyaan Anda, Anda mengkonfigurasi FQDN Anda di mana pun Anda ingin nama-nama diselidiki. Jika Anda menginginkannya di file pada kotak itu sendiri, maka ia masuk di / etc / hosts. Jika Anda menjalankan server nama Anda sendiri seperti saya (saya menjalankan dnsmasq untuk kesederhanaan) maka Anda hanya perlu mencatat informasi di
Mildred
Pada red hat 7 dan sistem turunannya, Anda harus menggunakan hostnamectl untuk mengatur nama host. cyberciti.biz/faq/rhel-redhat-centos-7-change-hostname-command/…
Xavy

Jawaban:

42

Setel FQDN

Saya menggunakan Debian 7 dan inilah yang bekerja untuk saya; terima kasih kepada Fernando Ribeiro .

sudoedit / etc / hostname

server # here's where you put the server's host name

aktifkan nama host

sudo hostname -F / etc / hostname

tambahkan nama domain dan alamat ke server

sudoedit / etc / hosts

192.168.1.2   server.domain server

MEMERIKSA

> hostname --short
server

> hostname --domain
domain

> hostname --fqdn
server.domain

> hostname --ip-address
192.168.1.2
jason
sumber
setelah mengubah nama server, /etc/hostnameAnda mungkin tidak dapat mengedit /etc/hosts. Dalam hal ini Anda harus menggunakan xauth addsebagaimana dinyatakan dalam jawaban ini stackoverflow.com/questions/20611783/…
Junior M
1
Anda seharusnya tidak menggunakan sudo vim. mengatur $EDITORdan menggunakan sudoedit.
törzsmókus
5

Bila Anda menggunakan redhat-basesistem, penggunaan linux /etc/sysconfig/networkberkas dan Anda harus menetapkan variabel HOSTNAMEuntuk FQDN, ketika Anda menggunakan FQDN, linuxitu sendiri menentukan nama domain.

Sebagai contoh:

HOSTNAME=web.mydomain.com

Tetapi ketika Anda menggunakan debian-basesistem, Anda harus mengisi /etc/hostnamefile dengan FQDN:

web.mydomain.com

CATATAN: jika Anda ingin mengatur domain namepastikan disetel FQDN(Nama Domain yang memenuhi syarat penuh)

Ketika Anda mengatur, hostname -dmenunjukkan kepada Anda domain name.

Teluk Persia
sumber
1
Terima kasih, tetapi saya mendapat kesan bahwa file-file ini hanya boleh berisi nama host tanpa bagian domain. Jika saya melakukan apa yang Anda sarankan, nama host akan mengembalikan fqdn secara langsung (tidak ada perbedaan antara hostnamedan hostname -f).
Mildred
oh omong-omong, saya lupa mengatakan Anda harus mengatur nama host dengan tangan hostname web.mydomain.comsetelah mengkonfigurasi file Anda. karena ketika Anda mengkonfigurasi memori file Anda tidak dapat menerapkan perubahan (jika itu berguna, jangan lupa flag yang berguna)
PersianGulf
4

man hostname, dikutip dari ujungnya hingga awal

FILES
       /etc/hostname  Historically  this file was supposed to only contain the hostname and not the full canonical
       FQDN. Nowadays most software is able to cope with a full FQDN here. This file is read at boot time  by  the
       system initialization scripts to set the hostname.

       /etc/hosts Usually, this is where one sets the domain name by aliasing the host name to the FQDN.

...

   THE FQDN
       The  FQDN (Fully Qualified Domain Name) of the system is the name that the resolver(3) returns for the host
       name, such as, ursula.example.com.  It is usually the hostname followed by the DNS domain  name  (the  part
       after the first dot).  You can check the FQDN using hostname --fqdn or the domain name using dnsdomainname.

       You cannot change the FQDN with hostname or dnsdomainname.

       The recommended method of setting the FQDN is to make the hostname be an alias for the fully qualified name
       using /etc/hosts, DNS, or NIS. For example, if the  hostname  was  "ursula",  one  might  have  a  line  in
       /etc/hosts which reads

              127.0.1.1    ursula.example.com ursula

       Technically: The FQDN is the name getaddrinfo(3) returns for the host name returned by gethostname(2).  The
       DNS domain name is the part after the first dot.

       Therefore it depends on the configuration of the resolver (usually in /etc/host.conf) how  you  can  change
       it.  Usually  the  hosts  file  is  parsed  before  DNS  or NIS, so it is most common to change the FQDN in
       /etc/hosts.

       If a machine has multiple network interfaces/addresses or is used in a  mobile  environment,  then  it  may
       either  have  multiple  FQDNs/domain  names or none at all. Therefore avoid using hostname --fqdn, hostname
       --domain and dnsdomainname.  hostname --ip-address is subject to the  same  limitations  so  it  should  be
       avoided as well.

Saya akan mengatakan itu menggambarkan semuanya secara menyeluruh.

poige
sumber