Product SiteDocumentation Site

19.2.2. Blacklisting a driver

As described in Section 19.1.2, “Booting into Rescue Mode”, the rdblacklist kernel option blacklists a driver at boot time. To continue to blacklist the driver on subsequent boots, add the rdblacklist option to the line in /etc/grub.d/10_linux that describes your kernel. To blacklist the driver when the root device is mounted, add a blacklist entry in a file under /etc/modprobe.d/.
  1. Boot the system into rescue mode with the command linux rescue rdblacklist=name_of_driver, where name_of_driver is the driver that you need to blacklist. Follow the instructions in Section 19.1.2, “Booting into Rescue Mode” and do not choose to mount the installed system as read only.
  2. Open the /mnt/sysimage/etc/grub.d/10_linux file with the vi text editor:
    vi /mnt/sysimage/etc/grub.d/10_linux
  3. Identify the default kernel used to boot the system. Each kernel is specified in the 10_linux file with a group of lines that begins menuentry. The default kernel is specified by the default parameter in /etc/default/grub. A value of 0 refers to the first menu entry in the custom script files in /etc/grub.d, a value of 1 refers to the second menu entry, and higher values refer to subsequent kernels in turn. Check the script prior to 10_linux, named 00_header, to ensure you specify the correct kernel.
  4. Edit the linux line of the menu entry to include the option rdblacklist=name_of_driver, where name_of_driver is the driver that you need to blacklist. For example, to blacklist the driver named foobar:
    linux /vmlinuz-2.6.32-71.18-2.el6.i686 ro root=/dev/sda1 rhgb quiet rdblacklist=foobar
  5. Save the file and exit vi.
  6. Create a new file under /etc/modprobe.d/ that contains the command blacklist name_of_driver. Give the file a descriptive name that will help you find it in future, and use the filename extension .conf. For example, to continue to blacklist the driver foobar when the root device is mounted, run:
    echo "blacklist foobar" >> /mnt/sysimage/etc/modprobe.d/blacklist-foobar.conf
  7. Reboot the system. You no longer need to supply rdblacklist manually as a kernel option until you next update the default kernel. If you update the default kernel before the problem with the driver has been fixed, you must edit 10_linux again to ensure that the faulty driver is not loaded at boot time.