| 1 | # Busca cargadores existentes por orden de prioridad y |
|---|
| 2 | # muestra menú con las opciones. |
|---|
| 3 | # Si no existe ningún cargador de arranque muestre mensaje de error. |
|---|
| 4 | set timeout=30 |
|---|
| 5 | |
|---|
| 6 | set detectado='no' |
|---|
| 7 | # Compruebo si existen distintos cargadores. |
|---|
| 8 | echo "Searching Grub" |
|---|
| 9 | search --file --set rootGrub /EFI/grub/Boot/grubx64.efi |
|---|
| 10 | if [ "$rootGrub" != "" ]; then |
|---|
| 11 | set detectado='si' |
|---|
| 12 | menuentry "Grub" { |
|---|
| 13 | root="$rootGrub" |
|---|
| 14 | chainloader /EFI/grub/Boot/grubx64.efi |
|---|
| 15 | } |
|---|
| 16 | fi |
|---|
| 17 | |
|---|
| 18 | echo "Searching rEFInd" |
|---|
| 19 | search --file --set rootRefind /EFI/refind/shimx64.efi.signed |
|---|
| 20 | if [ "$rootRefind" != "" ]; then |
|---|
| 21 | menuentry "rEFInd" { |
|---|
| 22 | root="$rootRefind" |
|---|
| 23 | chainloader /EFI/refind/shimx64.efi.signed |
|---|
| 24 | } |
|---|
| 25 | fi |
|---|
| 26 | |
|---|
| 27 | echo "Searching Part-01-02" |
|---|
| 28 | search --file --set rootP2 /EFI/Part-01-02/Boot/ogloader.efi |
|---|
| 29 | if [ "$rootP2" != "" ]; then |
|---|
| 30 | set detectado='si' |
|---|
| 31 | menuentry "Part-01-02" { |
|---|
| 32 | root="$rootP2" |
|---|
| 33 | chainloader /EFI/Part-01-02/Boot/ogloader.efi |
|---|
| 34 | } |
|---|
| 35 | fi |
|---|
| 36 | |
|---|
| 37 | echo "Searching Part-01-03" |
|---|
| 38 | search --file --set rootP3 /EFI/Part-01-03/Boot/ogloader.efi |
|---|
| 39 | if [ "$rootP3" != "" ]; then |
|---|
| 40 | set detectado='si' |
|---|
| 41 | menuentry "Part-01-03" { |
|---|
| 42 | root="$rootP3" |
|---|
| 43 | chainloader /EFI/Part-01-03/Boot/ogloader.efi |
|---|
| 44 | } |
|---|
| 45 | fi |
|---|
| 46 | |
|---|
| 47 | echo "Searching Microsoft" |
|---|
| 48 | search --file --set rootMS /EFI/Microsoft/Boot/bootmgfw.efi |
|---|
| 49 | if [ "$rootMS" != "" ]; then |
|---|
| 50 | set detectado='si' |
|---|
| 51 | menuentry "Microsoft" { |
|---|
| 52 | root="$rootMS" |
|---|
| 53 | chainloader /EFI/Microsoft/Boot/bootmgfw.efi |
|---|
| 54 | } |
|---|
| 55 | fi |
|---|
| 56 | |
|---|
| 57 | echo "Searching Ubuntu" |
|---|
| 58 | search --file --set rootUb /EFI/ubuntu/grubx64.efi |
|---|
| 59 | if [ "$rootUb" != "" ]; then |
|---|
| 60 | set detectado='si' |
|---|
| 61 | menuentry "Ubuntu" |
|---|
| 62 | root="$rootUb" |
|---|
| 63 | chainloader /EFI/ubuntu/grubx64.efi |
|---|
| 64 | } |
|---|
| 65 | fi |
|---|
| 66 | |
|---|
| 67 | |
|---|
| 68 | # Si no hay ningún sistema operativo muestro mensaje. |
|---|
| 69 | if [ $detectado == 'no' ]; then |
|---|
| 70 | menuentry "OpenGnsys no ha detectado ningún sistema operativo" { |
|---|
| 71 | # para evitar mensajes de error. |
|---|
| 72 | set root="(hd0,gpt1)" |
|---|
| 73 | } |
|---|
| 74 | fi |
|---|