os-prober とは
os-prober パッケージは、マシンで利用可能なすべてのオペレーティング システムを検出し、一般的なマシン可読形式で結果を返します。一部の特殊なディスク (例:Oracle ASM ディスク) をプローブするときに、os-prober が問題を引き起こすことがあります。この投稿では、os-prober を無効にする方法について説明します。
os-prober の無効化
os-prober はコマンド grub2-mkconfig によって呼び出されます 新しい GRUB 構成ファイルを生成するとき。 OS プローブを使用してビジー状態の Oracle ASM LUNS で grub update を実行すると、ASM ディスクでタイムアウトが発生します。 Oracle トレース ファイルに以下のエラーが表示されます:
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
os-prober を無効にするには:
1. 変数 GRUB_DISABLE_OS_PROBER /etc/default/grub ファイル内 true に設定する必要があります .例:
# vi /etc/default/grub GRUB_DISABLE_OS_PROBER=true
2. /etc/default/grub の変更後、GRUB 構成を再生成する必要があります。
– BIOS ベースのシステム:
# grub2-mkconfig -o /boot/grub2/grub.cfg
– UEFI ベースのシステムの場合:
# grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg
結論
GRUB_DISABLE_OS_PROBER=true の動作に関する grub 情報ページから オプション:
'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.
コマンド grub2-mkconfig は、grub.cfg の作成時にシステムに提示されたすべてのディスクをスキャンします。システムに多数のディスクがある場合、これにはかなりの時間がかかり、システムがハングしているように見えます。そのため、より多くの ASM ディスクを使用してビジーな Oracle データベース システムを使用している場合は、無効にすることをお勧めします。