🐧 How to disable os-prober on CentOS / RHEL

What is os-prober

The os-prober package detects all operating systems available on a machine and returns results in a universal machine-readable format.

Sometimes os-prober can cause problems with some special disks (for example, Oracle ASM disks).

This tutorial describes how to disable os-prober.

Disable os-prober

os-prober is invoked by the grub2-mkconfig command when a new GRUB configuration file is created.

Running grub update on loaded Oracle ASM LUNS results in timeouts on ASM disks.

You will see the following errors in Oracle trace files:

ORA-15080: synchronous I/O operation failed to write block 567864873 of disk 6 in >disk group REDO
ORA-27061: waiting for async I/Os failed
Linux-x86_64 Error: 1: Operation not permitted

To disable os-prober: 1. The GRUB_DISABLE_OS_PROBER variable in the / etc / default / grub file must be set to true. For example:

# vi /etc/default/grub
GRUB_DISABLE_OS_PROBER=true

2. After modifying / etc / default / grub, the GRUB configuration should be restored.

– On BIOS-based systems:

# grub2-mkconfig -o /boot/grub2/grub.cfg

– On UEFI based systems:

# grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg

Conclusion

From the grub info page on the behavior of the GRUB_DISABLE_OS_PROBER = true parameter:

'GRUB_DISABLE_OS_PROBER'
     Normally, 'grub-mkconfig' will try to use the external 'os-prober'
     program, if installed, to discover other operating systems
     installed on the same system and generate appropriate menu entries
     for them.  Set this option to 'true' to disable this.

The grub2-mkconfig command scans all disks presented to the system when grub.cfg was created. If there are many disks in the system, it may take a while and the system will freeze. Therefore, it is recommended to disable it if you have an oracle database system loaded with a lot of ASM disks.

Sidebar