I’ve had issues with kernel updates for a while on my CentOS 6 home server. It’s a problem that would come and go and I never put much time into figuring out why it was happening. As it turns out, the VirtualBox kernel drivers were to blame. With the vboxdrv service running, often times the kernel update process breaks when dracut attempts to build a new version of initramfs. The simple solution I stumbled on was to stop the vboxdrv service, run the update, then rebuild the vbox drivers and restart the service. It’s a little clunky, but it works every time.