Could not open device at /dev/ipmi0 or /dev/ipmi/0 or /dev/ipmidev/0: No such file or directory
There is a fix for it. Even when included directly into the kernel, the ipmi_si driver supports hot adding and removing of interfaces. This way, interfaces can be added or removed after the kernel is up and running. This is done using /sys/modules/ipmi_si/parameters/hotmod, which is a write-only parameter.
What we’ve done is to get the IPMI interface parameters from /proc/ipmi/0/params,
hot remove the interface using
echo "remove," > /sys/modules/ipmi_si/parameters/hotmod
and then re-add the interface using
echo "add," > /sys/modules/ipmi_si/parameters/hotmod
The remove operation takes between 8 and 27 minutes. The kipmi0 thread gets cleaned up immediately, but the interface is actually removed only after the 8-27 minutes delay. This solution doesn’t require a BMC cold reset.
https://www.supermicro.com/support/faqs/faq.cfm?faq=18047