Ana bilgisayar adı ve etki alanı adı nasıl doğru bir şekilde ayarlanır?


33

Bir sunucu kiralıyorum, bir şirkette Ubuntu 16.04 kullanıyorum, hadi şirket adını verelim.

Şu anda sunucum şöyle yapılandırılmıştır:

  • hostname: server737263
  • alan adı: company.org

İşte benim FQDN:

user@server737263:~ $ hostname --fqdn
server737263.company.org

Bu şaşırtıcı değil.

Ayrıca bir alan adı da kiralıyorum, adlandıralım domain.org. Yapmak istediğim, sunucumu yeniden adlandırmak olur server1.domain.org.

Bu, ana bilgisayar adımı server1ve alan adımı olarak yapılandırmak anlamına gelir domain.org.

Nasıl doğru yapabilirim?

Nitekim, manpage için hostnamenet değil. En azından benim için:

HOSTNAME'deki (1)

[...]

SET ADI

  • Bir argümanla veya --file seçeneğiyle çağrıldığında, komutlar ana bilgisayar adını veya NIS / YP alan adını ayarlar. hostname, sethostname (2) işlevini kullanırken, üç alan adının tümü, ypdomainname ve nisdomainname setdomainname (2) işlevini kullanır. Bunun yalnızca bir sonraki yeniden başlatmaya kadar geçerli olduğunu unutmayın. Kalıcı değişiklik için / etc / hostname dosyasını düzenleyin.

[...]

FQDN

  • FQDN'yi ana bilgisayar adı veya dnsdomainname ile değiştiremezsiniz.

[...]

Öyle görünüyor ki düzenleme /etc/hostnameyeterli değil mi? Çünkü ana bilgisayar adını gerçekten değiştirdiyse, FQDN'yi değiştirirdi. Ayrıca ana bilgisayar adını komutla değiştirmek için okuduğum bir numara var sysctl kernel.hostname=server1, ancak hiçbir şey bunun doğru yol mu yoksa çirkin bir numara mı olduğunu söylemiyor.

Yani:

  1. Ana bilgisayar adını ayarlamanın doğru yolu nedir?

  2. Etki alanı adını ayarlamanın doğru yolu nedir?

Yanıtlar:


31

Ana bilgisayar adınızı ayarlama:

  • /etc/hostnameYeni ana bilgisayar adınızla düzenlemek istersiniz .

  • Ardından koşun sudo hostname $(cat /etc/hostname).

Etki alanınızı ayarlama:

  • Sonra, /etc/resolvconf/resolv.conf.d/headsatır, sonra satır ekler domain your.domain.name(FQDN'niz değil, sadece etki alanı adınız).

  • Ardından, sudo resolvconf -ugüncellemek için çalıştırın /etc/resolv.conf(alternatif olarak, yalnızca önceki değişikliği yeniden oluşturun /etc/resolv.conf).

Her ikisi de:

Son olarak /etc/hostsdosyanızı güncelleyin . IP'nizden (geridönüşüm veya değil), FQDN'niz ve ana bilgisayar adınızla başlayan en az bir satır olmalıdır. ipv6 adreslerini boşa harcayarak, ana makinenizin dosyası şöyle görünebilir:

127.0.0.1 localhost
1.2.3.4 service.domain.com service

7
Her iki conf dosyaları DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTENsunucumda söylüyor (aynı sürüm).
Walf

7
"DÜZENLEME ETMİYOR" uyarısının görünmesi gerçeğine kanmayın /etc/resolvconf/resolv.conf.d/head. Kafa dosyasındaki her şey sonuçtaki /etc/resolv.confçıktı dosyasına hazırdır , bu nedenle uyarının orada olması ve sonuçta ortaya çıkması gerekir. İlk başta beni bir döngü için attı.
njbair

7
Bu 18.04 LTS'ye uygulanıyor gibi görünmüyor - böyle bir dosya yok /etc/resolvconf/resolv.conf.d/headve böyle bir yardımcı program yok resolvconf.
inopinatus

2
Yanıtıhostnamectl
Ring Ø

1
Ayrıca AWS kullanıyorsanız, yeniden başlatmalardan sonra ana bilgisayar adını da korumanız gerekeceğini unutmayın - sudo nano /etc/cloud/cloud.cfggüncelleme preserve_hostname: true(varsayılan false).
bshea

5

sudo nano / etc / hostname

hostname.domain.com

sudo nano / etc / hosts

127.0.0.1   hostname.domain.com hostname localhost

REBOOT!

/ Etc / hosts dosyasında FQDN'den sonra TEK HOSTNAME OLMALIDIR. Ubuntu 18.04.1 ve diğer tüm sürümlerde çalışır. EC2 ve başka yerlerde.

Çözme dosyası veya başka bir şey ile uğraşmadı.

Bu, ana bilgisayar adını shell'de gösterir ve daha sonra ihtiyacınız olduğunda FQDN'ye sahiptir.


1

~ $ man ana bilgisayar adı

[…]
       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.

[…]

Bu nazikçe başka bir işte poige ile belirtildi ve tam olarak Lutz'in önerdiği şeydi.

Fqdn'ınızı içine sokmamalısınız /etc/hostname.


1

Ubuntu 18.04.3 LTS (biyonik) aleyhine yazılmış talimatlar

Ana bilgisayar adını değiştirin:

sudo hostnamectl set-hostname server1

Çalıştırarak sonucu kontrol edin hostnamectl:

root@www:/# hostnamectl
   Static hostname: server1       <-- Check this value
         Icon name: computer-vm
           Chassis: vm
        Machine ID: 202c4264b06d49e48cfe72599781a798
           Boot ID: 43654fe8bdbf4387a0013ab30a155872
    Virtualization: xen
  Operating System: Ubuntu 18.04.3 LTS
            Kernel: Linux 4.15.0-65-generic
      Architecture: x86-64

Parametreyi düzenleyerek ve değiştirerek etki alanını yeni ağ yöneticisi Netplan aracılığıyla /etc/netplan/01-netcfg.yamldeğiştirin search:

sudoedit /etc/netplan/01-netcfg.yaml

Örnek yapılandırma:

# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
  version: 2
  renderer: networkd
  ethernets:
    eth0:
      dhcp4: yes
      nameservers:
          search: [ domain.org ]

İkinci seferde giriş yaparak sudo netplan tryve oturumlardan birinde çalışarak diğerinde ayarları kontrol ederek değişiklikleri test edin:

# netplan try
Do you want to keep these settings?


Press ENTER before the timeout to accept the new configuration


Changes will revert in  97 seconds
Configuration accepted.
# systemd-resolve --status
...
Link 2 (eth0)
      Current Scopes: DNS
       LLMNR setting: yes
MulticastDNS setting: no
      DNSSEC setting: no
    DNSSEC supported: no
         DNS Servers: 8.8.8.8
                      8.8.4.4
          DNS Domain: domain.org      <-- Check this value
# cat /etc/resolv.conf
...
nameserver 127.0.0.53
options edns0
search domain.org    <-- Check this value
# hostname -f
server1.domain.org

Her sudo netplan tryşey yolunda, işleri kalıcı hale getirmek için istemde ENTER tuşuna basın .


0

Ben benim alanı girişini değiştirmeye çalışmış myhome.localiçin myhome.lan ben düzenlemek zorunda /etc/hostsdosya ve /etc/network/interfacesdosyayı. Dosyam /etc/hostsşimdi şuna benziyor:

127.0.0.1   localhost
192.168.3.2 server.myhome.lan   server

ve benim /etc/network/interfacesdosya şimdi benziyor:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto enp2s0
iface enp2s0 inet static
    address 192.168.3.2
    netmask 255.255.255.0
    network 192.168.3.0
    broadcast 192.168.3.255
    gateway 192.168.3.1
    # dns-* options are implemented by the resolvconf package, if installed
    dns-nameservers 192.168.3.1
    dns-search myhome.lan

Benim için iyi çalışıyor.

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.