Today I learned that modprobe is essentially a smarter version of insmod. I knew of insmod previously, but I had no idea why the younger utitity (modprobe) was created.

modprobe improves upon insmod by adding version and dependancy checking so that the kernel doesn’t immediately inhale any module thrown at it. With modprobe, it will make a better choice when considering what it needs in order for a kernel module to work as indended.