Digital Mages



bondctl is just a simple shell script that uses the sysfs filesystem to create, configure, and delete bonding masters. It is intended to be compatible with both BASH and ASH (as emulated by busybox) to work properly in an initramfs environment.

I wrote this script as a replacement for ifenslave since its functionality seems to suffered over the years. Some kernel revisions had an ifenslave only suitable for activating interfaces, but could no longer query them. On top of that, it's always been hobbled by only being able to work on bonded interfaces already present. It could not create or delete additional interfaces beyond what the bonding kernel module was configured to create via the max_bonds module parameter.

bondctl gives you all of this functionality and more, and allows for the display of a lot more detail. It also comes with an optional ifenslave wrapper which uses this script behind the scenes, making it a drop-in replacement for any existing scripts calling ifenslave.