Arquivo / etc / network / interfaces separado

14

Eu queria saber se é possível separar a configuração do arquivo / etc / network / interfaces em arquivos separados, como uma estrofe em um arquivo e outra estrofe em outro arquivo? (semelhante ao CentOS). Ou a partir do arquivo / etc / network / interfaces é possível chamar outros arquivos de interface? Minha idéia é ter estrofes ethernet em um arquivo, vlan em outro, vpn em outro, etc (ou algo semelhante). Fazendo dessa maneira, seria mais fácil editar e analisar (sim, eu sei que existem analisadores por aí), mas acho que separá-los em arquivos diferentes seria mais organizado.

Eu tentei procurar respostas no google por vários dias, e interfaces homem, mas não encontrei nada. Eu estou pensando que não é possível (a menos que modificar o código fonte do sistema operacional, eu acho). Alguém sabe alguma coisa sobre isso?

Estou usando o Ubuntu 12.04 LTS Server x64

Obrigado!

joze
fonte

Respostas:

14

Isso é certamente possível. Veja a página de manual interfaces (5) para obter detalhes completos, mas vou incluir um fragmento da página de manual aqui:

   Lines beginning with "source" are used to include stanzas from other  files,  so
   configuration can be split into many files. The word "source" is followed by the
   path of file to be sourced. Shell wildcards can be used.   (See  wordexp(3)  for
   details.)

Esse recurso aparece em Preciso.

Exemplo:

/ etc / network / interfaces:

   auto lo
   iface lo inet loopback

   source /etc/network/interfaces.d/*.cfg

/etc/network/interfaces.d/eth0.cfg:

    auto eth0
    iface eth0 inet static
        address x.x.x.x
        [...]

Eu seria cauteloso se algumas ferramentas ainda estão cientes desse recurso. Alguns scripts podem apenas verificar / etc / network / interfaces.

agy
fonte
Obrigado! Eu acho que é isso que estou procurando! E você está absolutamente certo de que está na documentação deles, acho que estava lendo as interfaces man de outra versão mais antiga. Para meus propósitos, desejo colocar as VLANs em um arquivo separado para facilitar a edição. Mais uma vez obrigado, vou testá-lo.
23413 Joze
$ man 5 interfaces (...) Por padrão, em um sistema Debian recém-instalado, o arquivo de interfaces inclui uma linha para arquivos de origem no diretório /etc/network/interfaces.d. Então, em algum momento, você pode simplesmente soltar os trechos da interface em /etc/network/interfaces.d Mas observe que, embora o 'homem' diga a frase acima no Ubuntu 16.04, uma nova instalação do Ubuntu 16.04 NÃO possui esse recurso " por padrão ", você ainda precisa adicionar uma linha aos snippets de origem.
Zakhar