Le fichier grub.cfg contient la plus grosse partie de la configuration de GRUB. Un fichier éditable supplémentaire nommé custom.cfg peut s'avérer nécessaire pour ajouter des structures plus complexes (entrées de menu ou autres données de script) à la configuration de GRUB. Par défaut, ce fichier ne figure pas sur le système. Vous devez créer le fichier et le stocker au même emplacement que les fichiers grub.cfg et menu.conf, c'est-à-dire sous /pool-name/boot/grub/.
GRUB traite les commandes et toutes les personnalisations contenues dans le fichier custom.cfg via le code situé à la fin du fichier grub.cfg :
if [ -f $prefix/custom.cfg ]; then source $prefix/custom.cfg; fi
Ces instructions indiquent à GRUB de vérifier l'existence d'un fichier custom.cfg dans le jeu de données de niveau supérieur du pool root, dans le sous-répertoire boot/grub. Si un fichier custom.cfg existe, GRUB y accède et traite toutes les commandes qu'il contient, comme si son contenu était effectivement inséré dans le fichier grub.cfg.
Sur un système équipé d'un microprogramme UEFI 64 bits, les entrées de ce fichier apparaissent comme suit :
menuentry "Windows (64-bit UEFI)" { insmod part_gpt insmod fat insmod search_fs_uuid insmod chain search --fs-uuid --no-floppy --set=root cafe-f4ee chainloader /efi/Microsoft/Boot/bootmgfw.efi }
Sur un système équipé d'un microprogramme BIOS, les entrées de ce fichier apparaissent comme suit :
menuentry "Windows" { insmod chain set root=(hd0,msdos1) chainloader --force +1 }