Intereting Posts
Является ли предоставление всех разрешений группе www-data хорошей идеей? Настройка сетевого подключения DSL в KDE XFCE – Отправить окно на другой монитор по нажатию клавиши Как переназначить («на программном уровне») клавиши Fn и Ctrl на ноутбуке Acer? gcc не найден при установке mysqldb для django 1.4 Удалить несколько строк из файла в командной строке, высокая производительность В Debian Stretch драйверы Nouveau заставляют мой компьютер замораживать, приходилось устанавливать в мою систему несвободные пакеты NVIDIA, любые альтернативы? Почему mutt зависает при запуске gpg в tmux? Как вы помните параметры команды? Копирование файлов с VCD без преобразования в MPEG Я не понимаю некоторых аргументов для команды xrandr отправка справочной страницы MacOS в редактор Каков наилучший способ объединить две установки LVM на отдельные диски? В чем разница между * И '. *' Для команды 'find -name'? Улучшен ли Linux Kernel 3.5 с 3.3?

/ etc / hosts ссылаются на другой файл конфигурации

Как я могу заставить файл /etc/hosts ссылаться на другой файл конфигурации для его списка хостов?

Пример /etc/hosts :

  ## My Hosts 127.0.0.1 localhost 255.255.255.255 broadcasthost #Other Configurations <Link to /myPath/to/MyConfig/ConfigFile.txt> #Other Addresses 3.3.3.3 MyAwesomeDomain.com 4.4.4.4 SomeplaceIWantToGoTo.com 

ConfigFile.txt

 ##My additional Hosts 1.1.1.1 SomeLocation.com 2.2.2.2 AnotherLocation.com 

Как добавить ссылку / ссылку на файл /etc/hosts , который будет загружен ConfigFile.txt?

    Вы не можете. Формат для /etc/hosts довольно прост и не поддерживает включение дополнительных файлов.

    Есть несколько подходов, которые вы могли бы использовать вместо этого:

    • Настройте (возможно, только локальный) DNS-сервер. Некоторые из них дают большую гибкость, и вы можете определенно распространять файлы хоста на несколько файлов или даже на машины. Другие (например, dnsmasq) предлагают меньшую (но еще достаточную) гибкость, но их легко настроить. Если вы пытаетесь включить один и тот же список хостов на связку компьютеров, то, вероятно, это правильный ответ.

    • Настройте другую службу имен (NIS, LDAP и т. Д.). Проверьте документы glibc NSS для поддерживаемых. Лично я считаю, что вы должны использовать DNS в большинстве случаев.

    • Сделайте себе каталог /etc/hosts.d или аналогичный, и напишите некоторые скрипты, чтобы объединить их все вместе (наиболее тривиально: cat /etc/hosts.d/*.conf > /etc/hosts , хотя вы, вероятно, захотите немного лучше, например, сортировать), и запускать этот скрипт при загрузке или из cron или вручную при каждом обновлении файлов.

    Лично, как дома, так и на работе, чтобы имена машин были разрешимы с любого устройства, я запускаю BIND 9. Тем не менее, это требует нескольких часов.

    Аналогично этому Могу ли я создать файл хостов для конкретных пользователей для дополнения / etc / hosts? , AFAIK невозможно получить внешний файл, связанный с файлом /etc/hosts .

    У меня было аналогичное требование для меня работать без проблем из разных мест с динамическими IP-адресами, тем более, что я использую виртуальные машины. Мое простое решение заключается в следующем:

    1. Создайте сценарий для обновления записей хоста для каждого объекта. Например, если у меня есть хост, называемый «myhost.net», с поддоменами «app.myhost.net», я бы вызвал этот скрипт и предоставил IP-адрес, который будет написан для каждого домена и сохранен в файле хоста «мой хозяин». Один и тот же скрипт имеет флаг для удаления или обновления одного файла хоста.

    2. Создайте еще один скрипт, чтобы объединить эти файлы в / etc / hosts. Этот скрипт найдет все созданные вами файлы хостов и объединит их в один файл hosts на / etc / hosts.

    Это сработало для меня отлично. Я работаю удаленно и иногда мне нужно перемещаться между местоположениями по той или иной причине и будет отягощено требованием изменить этот файл столько раз. Вместо этого я просто запускаю ОДИН скрипт. Да, один скрипт. Первый скрипт автоматически запускает другой, чтобы автоматически слить.