On Wed, 19 Oct 2016 20:38:54 +0200 Guus Sliepen <g...@debian.org>
wrote:
> On Sun, Oct 16, 2016 at 09:14:31AM -0500, Dan Greene wrote:
> 
> > I edited /etc/networking/interfaces.d/wlan0 on my system using jo
> > to change the configuration. When saving, many editors, including
> > joe, leave backups that end with a tilde '~'. When I run
> > $ ifup wlan0
> > or when the system tries to bring up the interface at boot, the
> > system loads the backup created by the editor in addition to the
> > current version, and as a result, gets confused. (I believe it
tries
> > to set the route twice.)
> > 
> > This, of course, results in the network not working, and the reason
is
> > not obvious, leading to wasted time trying to fix it.
> 
> I suspect something else is happening here, because ifup only reads
> those files that consists only of a-z, A-Z, 0-9, _ and -. So files
with
> a tilde, whereever they appear in the filename, are ignored.

That's partly true, it depends on whether the configuration uses
"source /some/dir/*" or "source-dir /some/dir/". The former doesn't use
scandir(3) or the directory_filter() function, only the latter does
filter file names like you describe.  Sadly the postinst script puts

  source /etc/network/interfaces.d/*

in /etc/network/interfaces by default.

> In order to find out what the real problem is, could you send me a
copy
> of your /etc/network/interfaces, /etc/network/interfaces.d/wlan0?
Also,
> do ifdown wlan0, and then run this command:
> 
> ifup -v wlan0 2>&1 >ifup.log
> 
> And send me a copy of ifup.log. You can of course also look at it
> yourself, it should tell you exactly what ifup is trying to do and
what
> commands it is executing.

See the attached config.txt and ifup-v... files.

-- 
Jeremie Courreges-Anglas
Administrateur Systeme et Reseau
celeste.fr - oceanet-technology.com


ifup: parsing file /etc/network/interfaces.d/tralala~
if test -d /sys/class/net/eno2 &&         ! ip link show eno2.1400 >/dev/null 
2>&1;     then         if test `cat /sys/class/net/eno2/type` -eq 32; then      
       echo 0x1400 > /sys/class/net/eno2/create_child;         else             
ip link set up dev eno2;             ip link add link eno2 name eno2.1400 type 
vlan id 1400;    fi;     fi

ifup: configuring interface eno2.1400=eno2.1400 (inet)
run-parts --exit-on-error --verbose /etc/network/if-pre-up.d
run-parts: executing /etc/network/if-pre-up.d/bridge
run-parts: executing /etc/network/if-pre-up.d/ethtool
run-parts: executing /etc/network/if-pre-up.d/hostapd
run-parts: executing /etc/network/if-pre-up.d/ifenslave
+ [ inet = meta ]
+ IF_BOND_SLAVES=
+ [ -n  ]
+ [ -n  ]
+ [ -n  ]
+ exit 0
run-parts: executing /etc/network/if-pre-up.d/wpasupplicant
ip addr add 192.0.2.64/255.255.255.0 broadcast 192.0.2.255        dev eno2.1400 
label eno2.1400
ip link set dev eno2.1400   up

run-parts --exit-on-error --verbose /etc/network/if-up.d
run-parts: executing /etc/network/if-up.d/avahi-autoipd
run-parts: executing /etc/network/if-up.d/clamav-freshclam-ifupdown
run-parts: executing /etc/network/if-up.d/ethtool
run-parts: executing /etc/network/if-up.d/ifenslave
+ [ inet = meta ]
+ [  ]
run-parts: executing /etc/network/if-up.d/ntpsec-ntpdate
run-parts: executing /etc/network/if-up.d/openvpn
run-parts: executing /etc/network/if-up.d/wpasupplicant
ca@OT-PORT-023:~/src/ifupdown-0.8.37$ cat /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*
#source-dir /etc/network/interfaces.d/

# The loopback network interface
auto lo
iface lo inet loopback
jca@OT-PORT-023:~/src/ifupdown-0.8.37$ ls /etc/network/interfaces.d/
tralala~
jca@OT-PORT-023:~/src/ifupdown-0.8.37$ cat /etc/network/interfaces.d/tralala~ 
auto eno2.1400
iface eno2.1400 inet static
        address 192.0.2.64/24

Reply via email to