El archivo grub.cfg contiene la mayor parte de la configuración de GRUB. Se puede utilizar un archivo editable adicional denominado custom.cfg si desea agregar construcciones más complejas, por ejemplo, entradas de menú u otras secuencias de comandos, en la configuración de GRUB. Este archivo no está en el sistema de manera predeterminada. Debe crear el archivo, y el archivo debe estar en la misma ubicación que los archivos grub.cfg y menu.conf, es decir, en /pool-name/boot/grub/.
GRUB procesa los comandos y las personalizaciones que se incluyen en el archivo custom.cfg a través del código siguiente que se encuentra al final del archivo grub.cfg:
if [ -f $prefix/custom.cfg ]; then source $prefix/custom.cfg; fi
Estas instrucciones indican a GRUB que compruebe la existencia de un archivo custom.cfg en el conjunto de datos de nivel superior de la agrupación raíz, en el subdirectorio boot/grub. Si existe un archivo custom.cfg, GRUB obtiene el archivo y procesa los comandos que se encuentran en él, como si el contenido estuviera insertado de manera textual en el archivo grub.cfg.
En un sistema con firmware UEFI de 64 bits, las entradas de este archivo tienen un aspecto similar al siguiente:
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 }
En un sistema con firmware BIOS, las entradas de este archivo tienen un aspecto similar al siguiente:
menuentry "Windows" { insmod chain set root=(hd0,msdos1) chainloader --force +1 }