localhost
エイリアスに問題があります。動作しません。基本的に、どのプログラムもlocalhost
を127.0.0.1
に解決できません。エイリアスは/etc/hosts
にあります:
[root@gabriel-notebook gpoesia]# cat /etc/hosts
#
# /etc/hosts: static lookup table for Host names
#
#<ip-address> <hostname.domain.org> <hostname>
127.0.0.1 localhost.localdomain localhost gabriel-notebook
::1 localhost ip6-localhost ip6-loopback
# End of file
また、myhostname
は/etc/nsswitch.conf
で有効になっています。
[root@gabriel-notebook gpoesia]# cat /etc/nsswitch.conf
# Begin /etc/nsswitch.conf
passwd: compat mymachines systemd
group: compat mymachines systemd
shadow: compat
publickey: files
hosts: files mymachines resolve [!UNAVAIL=return] dns myhostname
networks: files
protocols: files
services: files
ethers: files
rpc: files
netgroup: files
# End /etc/nsswitch.conf
そして、localhostはgetent hosts
に表示されます。また、/etc/hostname
が設定されます。
[root@gabriel-notebook gpoesia]# getent hosts
127.0.0.1 localhost.localdomain localhost gabriel-notebook
127.0.0.1 localhost ip6-localhost ip6-loopback
[root@gabriel-notebook gpoesia]# getent hosts gabriel-notebook
127.0.0.1 localhost.localdomain localhost gabriel-notebook
[root@gabriel-notebook gpoesia]# cat /etc/hostname
gabriel-notebook
[root@gabriel-notebook gpoesia]# hostname
gabriel-notebook
ただし、ping localhost
は機能しません。
[root@gabriel-notebook gpoesia]# ping localhost
ping: localhost: Name or service not known
主な難しさは、これがいつ起こり始めたのか正確にはわからないことです。過去に動作したことを覚えていますが、何が原因で壊れたのかわかりません。グーグルは助けにはならなかった。私には当てはまらない理由(ファイルの破損、/etc/hostname
の構文の誤りなど)が原因で同じ問題を抱えている人を見つけました。
何か案は?
ありがとう!
原因が見つかりました。/etc/hosts
ファイルのアクセス許可が正しくありませんでした。
644
に変更され、機能します。
まず、ping 127.0.0.1
とping ::1
はどちらも正常に機能すると思います(または、少なくとも1つは機能します)。
次に、ping gabriel-notebook
とping ip6-localhost
を試して、ぶら下がっている果物を除外します。
あなたの構成で作ることができるいくつかの落とし穴がありますが、これを説明するものは何もありません。たとえば、多くの人がローカルホストのエイリアスとしてローカルマシンの名前を付けることに反対していますが、これはラップトップのように見えるので、おそらくそれが必要です。そして、nsswich.confファイルのhosts行は、myhostnameモジュールが正しく機能しないように見えますが、それはあなたが戦っている問題ではありません。
怪しげに見える唯一のことは、getentが127.0.0.1が予想されるip4エイリアスとip6エイリアスの両方にマップされていることを示していることです。これにより、hostsまたはnsswitch.confファイル(hd
で確認できます)のファンキーな空白、またはmymachinesモジュールがファンキーな処理を行っていることが疑われます。 getent hosts localhost
で確認します。
他のすべてがうまくいくように見えるので、アルミホイルビーニーに手を伸ばして、これがルートキットであるかどうか、そして今まで気づかなかった場合はよくできたキットであるかどうかを尋ねる時が来ました、なぜ彼らは名前解決で失敗するのですか?