Ana bilgisayar adı, 18.04 LTS'de yeniden başlattıktan sonra eski adına geri döner


32

Bu, sanal bir makine olarak 18.04 LTS'yi çalıştırmakla ilgili olabilir (Host Win 2016 DC'dir), ancak nasıl olduğunu çözemiyorum. Ana bilgisayar adını değiştirmek için bildiğim her yöntemi denedim, ancak makineyi yeniden başlatırken oluşturduğumda her zaman girdiğim ana bilgisayar adına geri dönüyor. Aşağıdakileri denedim:

  1. hostnamectl set-hostname xxx.
  2. Ana bilgisayar adını doğrudan düzenleme.
  3. Hostnamectl'e - statik ekleniyor.
  4. Anasistem dosyasını düzenleme ve istenen anasistem adını ekleme.
  5. Yeniden başlatmadan önce sürücüyü eski ana bilgisayar adına yapılan başvurularda arama.
  6. İnternette bulduğum birkaç garip öneri daha bahsetmeye değmez.

Şu anda bu sunucu için DNS yok.

Örnek:

XXXX@iwrxmail:~# hostnamectl
Static hostname: iwrxmail
Pretty hostname: Interwrx Ubuntu Mail Server
Transient hostname: ctl
     Icon name: computer-vm
       Chassis: vm
    Machine ID: 01ef0d836d2c4945b51a4fab8e506381
       Boot ID: e6608fe238d843f883cde52af7631a79
Virtualization: microsoft
Operating System: Ubuntu 18.04 LTS
        Kernel: Linux 4.15.0-20-generic
  Architecture: x86-64
XXXX@iwrxmail:~# hostnamectl set-hostname test
XXXX@iwrxmail:~# hostnamectl
Static hostname: test
     Icon name: computer-vm
       Chassis: vm
    Machine ID: 01ef0d836d2c4945b51a4fab8e506381
       Boot ID: e6608fe238d843f883cde52af7631a79
Virtualization: microsoft
Operating System: Ubuntu 18.04 LTS
        Kernel: Linux 4.15.0-20-generic
  Architecture: x86-64
root@iwrxmail:~# cat /etc/hostname
test
root@iwrxmail:~# cat /etc/hosts
127.0.0.1       localhost.localdomain   localhost
::1             localhost6.localdomain6 localhost6
# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts 

However on reboot I get this again ....

XXXX@iwrxmail:~# hostnamectl
Static hostname: iwrxmail
     Icon name: computer-vm
       Chassis: vm
    Machine ID: 01ef0d836d2c4945b51a4fab8e506381
       Boot ID: 25a00676b22048eb8d43492c9de4f147
Virtualization: microsoft
Operating System: Ubuntu 18.04 LTS
        Kernel: Linux 4.15.0-20-generic
Architecture: x86-64

Bu sorunu 18.04 beta ile yaşadım, ancak sürüm kopyasını bekleyeceğimi düşündüm. VM'leri klonladığım gerçeği ile ilgili bir sorun olabileceğini de düşündüm, ancak bu yeni çıkarılan dağıtım ile sıfırdan yapılmış yepyeni bir versiyondu.

Neyi kaçırıyorum?

Şimdiden teşekkürler.


Yanıtlar:


49

Öncelikle /etc/cloud/cloud.cfg dosyasını düzenleyin ve "preserve_hostname" parametresini "false" konumundan "true" olarak ayarlayın ve sonra / etc / hostname dosyasını düzenleyin.


4
ÇALIŞIYOR bir cazibe gibi. Bunu, yukarıdaki yorum satırından asla alamazdım: "# Bu set + güncelleme ana bilgisayar adı modülünün çalışmamasına neden olur (doğruysa). Çok teşekkürler, web üzerinde çok yanlış yöntemler.
Andy Wylde

18

Ana bilgisayar adı, cloud-initşu şekilde devre dışı bırakılabilecek şekilde sıfırlanır (bundan sonra ana bilgisayar adını normal şekilde, örneğin kullanarak ayarlayabilirsiniz hostnamectl):

sudo touch /etc/cloud/cloud-init.disabled

Ya da cloud-init komutunu kullanabilir ve user-datadosyayı oluşturabilir / değiştirebilirsiniz (genellikle: 'de bulunur /var/lib/cloud/seed/nocloud-net/user-data), böylece hostname:giriş istenen ana bilgisayar adına preserve_hostname:ayarlanmış ( ayarlanmamış). Öncelikle mevcut konfigürasyonu temizlemeniz gerekir:

sudo cloud-init clean

Ve sonra cloud-init'in config komutunu yeni / değiştirilmiş kullanıcı veri dosyasından yeniden başlatın:

sudo cloud-init init

Ardından yeniden başlatın. Daha fazla ayrıntı için cloud-init belgelerine bakın.


3
Çalışırken dikkatli olun cloud-init cleanveya cloud-init init/ etc / netplan / yaml dosyalarınızı yeniden yazabilirsiniz.
Michael D.

3
Ayrıca, potansiyel olarak zararlı olabilecek SSH ana bilgisayar anahtarınızı da günceller (müşterilerin yeniden bağlantı kurmadan önce yeni ana bilgisayar anahtarını kabul etmesi gerekir)
Per Lundberg

5

Benim gibi "tembel adamlar" için, kopyala yapıştır çözümü :)

sudo sed -i '/preserve_hostname: false/c\preserve_hostname: true' /etc/cloud/cloud.cfg && sudo hostnamectl set-hostname ReplaceThisWithTheHostnamePreferred

İlk komut, yeni ana bilgisayar adının işletim sistemi tarafından hatırlanmasına izin verir.

İkinci bölüm (&&'den sonra) yalnızca ilk bölüm başarıyla bittiğinde çalışır ve ana bilgisayar adını istenen değere ayarlar.

Saygılarımızla! L


4

1- Düzenleyin vi /etc/cloud/cloud.cfgve değiştirin

preserve_hostname: false

için

preserve_hostname: true

Kaydet ve çık.

2- vi /etc/hostnameBu dosyadaki yeni adınızı düzenleyin ve değiştirin ya da bu adımı feryat komutuyla yapabilirsiniz.

hostnamectl set-hostname NEWNAME

Tadını çıkar :)


0

Aynı sorunu yaşadım ve bulut paketlerini kaldırdıktan sonra ana bilgisayar adınızı değiştirebileceğinizi gördüm.

apt remove cloud-init cloud-initramfs-copymods cloud-initramfs-dyn-netconf

1
Bunun işe yarayacağından eminim ama yukarıdaki cevabı tercih ediyorum. Yine de cevap verdiğiniz için teşekkür ederiz
Andy Wylde

Ubuntu-server paketini kullanıyorsanız bu çözümden kaçınmanızı öneririm. Niye ya? Çünkü yukarıda belirtilen paketler önkoşullarıdır. Ubuntu-server paketinin açıklaması 'Açıklama-tr: Ubuntu Sunucu sistemi Bu paket Ubuntu Sunucu sistemindeki tüm paketlere bağlıdır. Ayrıca, uygun yükseltmelerin sağlanmasına yardımcı olmak için kullanılır, bu nedenle kaldırılmaması önerilir. '
linux64kb

0

Eski bir sürümü bir yerde bırakmaktan memnun değilseniz, dosyayı açıp /var/lib/cloud/seed/nocloud-net/user-datasatırda ana bilgisayar adınızı değiştirin:

hostname: cm-lc-nc

O zaman koş:

cloud-init clean
cloud-init init

Daha sonra /etc/hostnameyeni değere ayarlanacak ve yeniden başlatmalar arasında tutarlı kalacaktır. Bu, önceki ana bilgisayar adının tüm izlerini kaldıracak ve bir preserve_hostnamenedenden dolayı sıfırlanmış veya yok sayılmış olması durumunda, yeni ana bilgisayar adınızı yine de kaybetmeyeceksiniz.

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.