OS: Debian GNU/Linux 6.0.2 (squeeze)
Kernel version: 2.6.32-5-686
I have some strange behaviour. I have removed bond0 from my configuration file and replaced it with more a more meaningful name for the interface. However, despite this bond0 still shows up under /sys/class/net/ and is present in the bonding_masters file. Output of the ip link list command also shows bond0 as being 'present' albeit 'down'
I have grep'd through /etc /var /usr /lib etc looking for any reference to bond0 to see how this could still be being created even after the box is restarted. So far I have found no reference to it whatsoever. Note that I can remove bond0 manually:
# echo -bond0>/sys/class/net/bonding_masters
This successfully removes the interface i.e. it is no longer present under /sys/class/net nor does it show up in the output of ip link list. However, when the box is restarted bond0 reappears - much to my annoyance :).
If anyone has any ideas they would be much appreciated.
My question is how/why the bond0 interface is still being created even though all traces of it have been removed from the system.
I have completely removed bond0 from my configuration
When the bonding driver loads, by default it creates a master device named bond0. Your network configuration later creates the new, differently named, bonding device specified in your network configuration.
If you'd prefer bonding not create that default device, you can pass the option "max_bonds=0" to the bonding driver and it won't create the initial "bond0" device. That option would probably go in /etc/modprobe.conf, e.g., "options bonding max_bonds=0", although I'm not familiar with how debian arranges this, so it might be different.
Many thanks for that - your answer solved my problem. For reference, on my Debian system I created the following file:
and added the line "options bonding max_bonds=0" (without quotes) as per your recommendation. This prevented the bond0 device from being automatically created when the bonding module is loaded in to the kernel.
Many thanks once again.