web-dev-qa-db-ja.com

/ etc / hostsの拡張

Ubuntu16.04の/ etc/hostsファイルを拡張することは可能ですか?

私は多くのubuntu-serversを持っています。いくつかの特別なエントリを除いて、すべてのサーバーは同じ/ etc/hostsファイルを使用する必要があります。私が推奨するソリューションは、いくつかの追加ファイルを含むディレクトリ(/etc/hosts.d)です。その後、元のホストファイルをすべてのサーバーにコピーし、ディレクトリに特殊なファイルを保存できます。

解決策はありますか?ありがとう。

7
Christian M

いいえ、標準のメカニズムを使用することはできません。

derobert 彼の answer on Unix.SE は、次の回避策を提案しました。

'代わりに使用できるアプローチがいくつかあります。

  • (おそらくローカルのみの)DNSサーバーをセットアップします。これらのいくつかはlotの柔軟性を提供し、ホストファイルを複数のファイルまたはマシンにまで確実に広げることができます。多数のマシンに同じホストのリストを含めようとしている場合は、おそらくDNSが正しい答えです。

  • 他のネームサービス(NIS、LDAPなど)をセットアップします。サポートされている内容については、glibc NSSドキュメントを確認してください。個人的には、ほとんどすべての場合にDNSを使用すべきだと思います。

  • 自分で/etc/hosts.dディレクトリなどを作成し、それらをすべて連結するスクリプトを作成します(最も簡単なもの:cat /etc/hosts.d/*.conf > /etc/hosts。ただし、たとえば、並べ替えなどを少し改善したい場合があります)、そのスクリプトを実行しますブート時、cronから、またはファイルを更新するたびに手動で。

4
techraf