GNU / Linux'ta alan adı nasıl ayarlanır?


27

Farklı şekillerde değiştirilebilen ana bilgisayar adına benzer şekilde:

  • geçici olarak hostnamekomutu kullanarak
  • kalıcı olarak kullanma /etc/hostname(veya /etc/sysconfig/networkveya /etc/HOSTNAMEbu dosyaları init betikleri tarafından kullanılır)

Etki alanı adımı değiştirmek istiyorum. domainnameKomutu kullanabilirim , ancak yeniden başlatmalar arasında kalıcı kılmanın bir yolu var mı? İçinde yapılandırılabileceğini düşünüyorum /etc/resolv.confancak bu dosya genellikle oluşturulur searchve domainyönergeler arasındaki farkı tam olarak bilmiyorum . Ve tam olarak saat kaçta oradaki bilgiler domainnameetki alanı adını belirlemek için programa iletilir ?

Bunun hakkında bir fikrin var mı?

Dağıtımlarda çoğunlukla uyumlu olmak isterim. Bu yüzden eğer biri farklı dağıtım tatlarında işaretçiler varsa, onları memnuniyetle kabul ederim.


Her dağıtım bunu farklı yapar. Hangileriyle ilgileniyorsunuz? Ve onların belgelerini okudun mu?
Michael Hampton

Çoğunlukla RedHat ve Debian lezzetleri. Ve dokümantasyonda alakalı bilgi bulamadım. Ama belki de yeterince sıkı görünmedim, belgelerde tam olarak nerede olduğunu (veya dokümanda olsa bile) tam olarak bilmediğimi itiraf ediyorum.
Mildred

1
Bu adil. Red Hat'in belgelerinde, eke gömülmüştür . Debian o oluyor var iken bir ek gömülü değil , ancak bir kafa karıştırıcı ...
Michael Hampton

1
@Michael Debian posta listesindeki bu bağlantı çoğunlukla kullanışlıdır, özellikle de sorunuza cevap vermek için FQDN'nizi isimlerin yeniden gönderilmesini istediğiniz yere göre yapılandırın. Kutunun içindeki dosyalarda istiyorsan, / etc / hosts dosyasına gider. Eğer kendi isim sunucunuzu benim yaptığım gibi çalıştırırsanız (basitlik için dnsmasq komutunu çalıştırırım) o zaman sadece bilgileri kaydetmeniz gerekir
Mildred

Kırmızı şapka 7'de ve türetilmiş sistemlerde, ana bilgisayar adını ayarlamak için hostnamectl kullanmalısınız. cyberciti.biz/faq/rhel-redhat-centos-7-change-hostname-command/…
Xavy

Yanıtlar:


42

FQDN'yi ayarla

Debian 7 kullanıyorum ve bu benim için çalıştı; Fernando Ribeiro'ya teşekkürler .

sudoedit / etc / hostname

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

ana bilgisayar adını etkinleştir

sudo ana bilgisayar adı -F / etc / hostname

sunucuya etki alanı adı ve adresi ekleyin

sudoedit / etc / hosts

192.168.1.2   server.domain server

DOĞRULAYIN

> hostname --short
server

> hostname --domain
domain

> hostname --fqdn
server.domain

> hostname --ip-address
192.168.1.2

Sunucu adını değiştirdikten sonra /etc/hostnamedüzenleme yapamayabilirsiniz /etc/hosts. Bu durumda xauth add, bu cevapta belirtildiği şekilde kullanmanız gerekir stackoverflow.com/questions/20611783/…
Junior M

1
kullanmamalısın sudo vim. ayarlayın $EDITORve kullanın sudoedit.
törzsmókus

5

Kullandığınızda redhat-basesistemi, linux kullandığı /etc/sysconfig/networkdosya ve değişken belirlesin HOSTNAMEiçin FQDNkullandığınızda, FQDN, linuxkendisi alan adını belirler.

Örneğin:

HOSTNAME=web.mydomain.com

Ancak, debian-basesistemleri kullanırken , /etc/hostnamedosyayı aşağıdakilerle doldurmalısınız FQDN:

web.mydomain.com

NOT: ayarlamak istediğinizden domain nameemin olmak istiyorsanız FQDN(Tamamen Nitelikli Alan Adı)

Ayarladığınızda, hostname -dsize gösterir domain name.


1
Teşekkürler, ancak bu dosyaların yalnızca etki alanı bölümü olmayan bir ana bilgisayar adı içermesi gerektiği izlenimini edindim. Önerdiğini yaparsam, ana bilgisayar adı fqdn'yi doğrudan döndürür ( hostnameve arasında fark yoktur hostname -f).
Mildred

oh bu arada, hostname web.mydomain.comdosyalarınızı yapılandırdıktan sonra ana bilgisayar adını elle ayarlamalısınız . çünkü dosya belleğinizi yapılandırdığınızda değişiklik uygulayamazsınız. (eğer faydalıysa yararlı bayrak
seçmeyi

4

man hostname, başından sonuna kadar atıfta bulunmak

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.

Her şeyi iyice tanımladığını söyleyebilirim.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.