web-dev-qa-db-fra.com

Les fichiers de /etc/network/interfaces.d sont ignorés, mais pas / etc / network / interfaces

Pour Ubuntu 16.04 LTS (GNU/Linux 3.10.96-113 armv7l)

Lorsque j'ai les éléments suivants, ma configuration statique est ignorée:

/ etc/network/interfaces

source-directory /etc/network/interfaces.d

/etc/network/interfaces.d/eth0

auto eth0
iface eth0 inet static
        address 192.168.40.112
        netmask 255.255.255.0
        gateway 192.168.40.1
        dns-nameservers 8.8.8.8

Cependant, avec ce qui suit:

/ etc/network/interfaces

auto eth0
iface eth0 inet static
        address 192.168.40.112
        netmask 255.255.255.0
        gateway 192.168.40.1
        dns-nameservers 8.8.8.8

source-directory /etc/network/interfaces.d

la configuration statique est définie au démarrage (indépendamment de ce que j'ai dans interfaces.d /).

Si cela est pertinent, j'utilise une règle udev pour renommer l'interface eth0 (auparavant, elle était "enx001e063110c0" ...).

18
Luis de Arquer

Je pense que je l'ai trouvé. Dans manuel , le problème semble être lié au mot clé source-directory. Il semble que, depuis 16.04, il n’est plus supporté.

Donc remplaçant

source-directory /etc/network/interfaces.d

avec

source /etc/network/interfaces.d/*

semble résoudre le problème.

26
Luis de Arquer

J'ai eu à peu près le même problème. Il s'avère que source-directory est pris en charge sur mon système, mais n'inclut que les fichiers dont les noms de fichiers sont composés de lettres, de chiffres, de tirets et de traits de soulignement.

C'est pourquoi mon eth0.conf n'a pas été lu, car il contenait un point.

4
Sjoerd

Votre noyau 3.10 est trop ancien pour systemd --- IFF utilisant systemd-v230 ou une version plus récente .

Selon les exigences du noyau systemd dans github à l'adresse suivante ( github.com - systemd README ), vous avez besoin de la version> = 3.12 si vous utilisez systemd-v230 ou une version plus récente:

REQUIREMENTS:
        Linux kernel >= 3.12
        Linux kernel >= 4.2 for unified cgroup hierarchy support

Les lignes 37, 38 et 39 sont imprimées ci-dessus.

Vous utilisez l'architecture ARM que je connais très peu en vérité. La recherche Google me dit que votre armvl7 est utilisé par Raspberry Pi et qu’il s’agit d’un noyau 32 bits.

Mise à jour de votre noyau aux temps modernes

Si vous voulez la dernière ( 21 octobre 2016 ) la protection de sécurité "Sale COW" ( Qu'est-ce que le bogue "Sale COW", et comment puis-je sécuriser mon système? ) plus un hôte d'autres correctifs de sécurité, corrections de bugs et améliorations du système ( après votre version de 2013 ) vous devriez être sur le noyau 4.4.0-47.

Malheureusement, je ne sais pas comment faire cela pour un RaspberryPi. J'ai lié cette question aux personnes qui utilisent RaspberryPi et leur ai demandé de critiquer cette réponse.

2
WinEunuuchs2Unix