Kaçtığımda sudo
terminal birkaç saniye sıkışmış ve sonra bir hata mesajı veriyor. Terminalim şuna benziyor:
ubuntu@(none):~$ sudo truesudo: unable to resolve host (none)
Bunu çözmek için ne yapabilirim?
Kaçtığımda sudo
terminal birkaç saniye sıkışmış ve sonra bir hata mesajı veriyor. Terminalim şuna benziyor:
ubuntu@(none):~$ sudo truesudo: unable to resolve host (none)
Bunu çözmek için ne yapabilirim?
Kontrol edilmesi gereken iki şey (makinenizin çağrıldığını varsayarak my-machine
, bunu uygun şekilde değiştirebilirsiniz):
İşte bu /etc/hostname
dosya yalnızca makinenin adını içerir.
O /etc/hosts
için bir girişi var localhost
. Şöyle bir şey olmalı:
127.0.0.1 localhost.localdomain localhost 127.0.1.1 makinem
Bu dosyalardan herhangi biri doğru değilse (sudo yapamayacağınız için), makineyi kurtarma moduna yeniden başlatmanız ve değişiklikleri yapmanız ve ardından normal ortamınıza yeniden başlatmanız gerekebilir.
Düzenlemek /etc/hosts
ve yeni ana bilgisayar adınızı 127.0.0.1 satırına ekleyin (veya isterseniz yeni bir satır oluşturun).
Benimki şöyle görünüyor:
127.0.0.1 localhost localhost.localdomain penguin# The following lines are desirable for IPv6 capable hosts::1 ip6-localhost ip6-loopbackfe00::0 ip6-localnetff00::0 ip6-mcastprefixff02::1 ip6-allnodesff02::2 ip6-allrouters
Yerini almak penguin
yukarıdaki örnekte belirtildiği gibi yeni ana bilgisayar adınızla /etc/hostname
dosya.
Adresi Ekle /etc/hosts
öyle gibi:
echo $(hostname -I | cut -d\ -f1) $(hostname) | sudo tee -a /etc/hosts
Not, bu bir cevaptır bu soru bu da bununla birleştirildi.
Hostname (dave00-G31M-ES2L
) temsil edilmez /etc/hosts
. Bir ekle L
bu satıra:
127.0.1.1 dave00-G31M-ES2
Böylece olur:
127.0.1.1 dave00-G31M-ES2L
Bunu gerçekleştirmek için bir konsol açın (tuşuna basın Ctrl+Alt+T tip:
sudo gedit /etc/hosts
Mektubu ekle L
belirtildiği gibi, kaydedin ve çıkın.
Ubuntu'yu bir VPS'DE kullanırken bu sorunu yaşadım. /Etc/hosts dosyasını düzenleyerek çözdüm.
bu komutu çalıştır:
sudo nano /etc/hosts
ve sonra ekle:
127.0.0.1 localhost.localdomain localhost127.0.1.1 ubuntu
Umarım bu sorununuzu çözecektir :)
PS: bilgisayarınızı yeniden başlatmanız Unutmayın!
/ Etc / hostname dosyamdaki ve / etc / hosts dosyasındaki ana bilgisayar adı eşleşse de aynı sorunu yaşıyordum.
Ana bilgisayar adım "staging_1" idi. Ana bilgisayar adınızda alt çizgi olamayacağınız ortaya çıktı, bu yüzden bu hatayı alıyordum. Alt çizgiyi kısa çizgi olarak değiştirmek sorunumu çözdü.
AWS'de vpc'nize gidin ve "DNS Ana Bilgisayar Adları" nı açın.
Soruda verilen belirti, bu daha spesifik problemle güçlü bir şekilde ilişkili olabilir:
$ hostname --fqdnhostname: Temporary failure in name resolution
Bunun çözülmesinin farklı yolları vardır, bunlardan biri ana bilgisayar adınızı localhost olarak eklemektir /etc/hosts
(diğer bazı cevaplarda gösterildiği gibi). Bu genel olarak yapılacak doğru şey olabilir, ancak mümkün olan tek çözüm bu değildir.
"Tam etki alanı adı", harici bir DNS sunucusu veya benzeri (ağınızda varsa) tarafından sağlanabilir. Bu durumda, sudo
eksik girişe rağmen şikayet etmeyecek /etc/hosts
.
Not: sudo
sudoers dosyasındaki isteğe bağlı yetenekler nedeniyle, zorunlu olmamakla birlikte ana bilgisayar adını dereference etmeye çalışır. Görmek ana bilgisayar adını aramaya çalışan sudo komutu.
Gecikme çok uzun olmadığı sürece, bu hata iletisi genellikle zararsızdır.
Herkes değiştirmeyi önerir /etc/hosts
. Ancak bazı durumlarda bu mümkün olmayabilir (örneğin bir docker kapsayıcısının içinde). Bu yüzden daha iyi bir yol bulmalıydım ve bunu buldum.:
echo "alias sudo='sudo -h 127.0.0.1'" >> ~/.bash_aliasessource ~/.bashrc
Takma adlar bash komut dosyalarında çalışmaz, ancak değişkenleri kullanabiliriz: sudo='sudo -h 127.0.0.1'
Aynı hata mesajıyla karşılaştım. AWS Geliştirici Forumlarındaki bu tartışma konusunun daha iyi bir çözüm olduğunu düşünüyorum:
"VPC yönetim konsoluna gidin, vpc'yi seçin, Eylemler'i tıklayın, DNS Ana Bilgisayar Adlarını Düzenle'yi seçin ve Evet'i seçin."
Bu soruyu * çok yerelleştirilmiş * olarak kapatmamanızı tavsiye ederim. Yanlışlıkla hosts
dosyasına bir ad koyduklarını ancak bunun yerine farklı bir ad koyduklarını düşünebilen birçok kullanıcı var, özellikle de birçok ağda bilgisayarlar benzer şekilde adlandırıldığından. Bu soru (ve cevap), birisi bu sorunla arama yaptığında ortaya çıkar ve cevap, tam yazım hatası farklı olsa bile, bu tür tutarsızlıkları kontrol etmelerini ister.
bilgisayarlarile
kesinliklehostname
aynı yapın. örneğin, ana bilgisayar adı ** ubuntu-pc ** ve ana bilgisayarlar ** ubuntu-pc ** aynı olmalıdır.
Lütfen /etc/hostname
ve `/etc/hosts’ içeriğini gönderin.
Bir cevap gönderemiyorum çünkü bu soru korunuyor ve burada yeterince itibarım yok. Benim durumumda, ağ yöneticisini yeniden başlatarak sorunu çözdüm: ‘sudo / etc /init.d / ağ yöneticisi yeniden başlat. Ancak, neden ilk etapta
sudoağla ilgili şeyleri beklemek için zaman harcadığını merak ediyorum. Ağ mevcut olmadığında
sudo’ sorunsuz çalışmamalı mı?
Bugün bununla karşılaştım. Sorun, hostname’de sahip olduğum şeyin /etc / hosts içinde olmamasıydı. Kime: $ hostname => ‘mybox’ $ grep ‘mybox’ /etc/hosts => 192.168.1.2 mybox.example.com . Alan adımdan sonra /etc/hosts => 192.168.1.2’de ‘mybox’ eklemem gerekiyordu mybox.example.com kutum
Why does the question have <USER>
sonunda? Bu, sorunun gövdesinde (yok)
İyileştirme önerisi olarak gösterilen gerçek çıktıyla çelişir: kaldır `
@arielf Burada soruları geliştirebilirsiniz. Başka bir kullanıcı tarafından değiştirildi. Ben de bilmiyorum.