efibootmgr não combina com o que é realmente usado no MacBook Air

1

Eu estou em um MacBookAir5,2 (2012) e eu tenho rodado o Ubuntu ao lado do Mac OS X há algum tempo. Eu usei o rEFIt quando instalei o Ubuntu pela primeira vez e isso funcionou bem.

Quando comecei a trabalhar com o Docker, superei o espaço em disco disponível e decidi adquirir uma nova unidade SSD. Eu fiz isso, troquei os discos e instalei o Ubuntu 14.10.

Depois desse ponto, eu lidei com o rEFInd (como o rEFIt não é mantido) e li muitas Rod Páginas de Smith

No entanto, agora quero apenas o Ubuntu e não inicializo mais nada nesta máquina. Mas de alguma forma, o que eu acho que eu digo efibootmgr para fazer, não vai. O problema é que o rEFInd não é executado após a inicialização. A única maneira de inicializar meu sistema é pressionar a tecla ALT na inicialização e selecionar REFInd em um dispositivo USB. Isso funciona muito bem, sem problemas com essa abordagem - é apenas um pouco inconveniente. : -)

Se eu inicializar sem o pendrive USB, tudo que eu obtenho é a tela cinza com nada sendo exibido. Permanece cinza "para sempre" (não esperei muito mais que 20 minutos).

Meu SSD contém quatro partições:

GPT fdisk (gdisk) version 0.8.8

Partition table scan:
  MBR: hybrid
  BSD: not present
  APM: not present
  GPT: present

Found valid GPT with hybrid MBR; using GPT.
Disk /dev/sda: 937703088 sectors, 447.1 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): B30ED5AD-A6B6-4FF9-9CC4-1F440536FB9F
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 937703054
Partitions will be aligned on 8-sector boundaries
Total free space is 264949 sectors (129.4 MiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1              40          409639   200.0 MiB   EF00  EFI System Partition
   2          409640       195722143   93.1 GiB    AF00  Macintosh HD
   3       195985408       921180159   345.8 GiB   EF00  LINUX
   4       921180160       937701375   7.9 GiB     0700  SWAP

e eu acabei com todos os arquivos do ESP como uma medida para diminuir o problema. O que eu tenho agora é efibootmgr reporting:

BootCurrent: 0000
Timeout: 5 seconds
BootOrder: 0000
Boot0000* rEFInd Boot Manager   HD(1,28,64000,7fa6ae3f-d9a7-4411-838a-1d0133b9993a)File(\EFI\refind\refind_x64.efi)
BootFFFF*   ACPI(a0341d0,0)PCI(1f,2)SATA(0,0,0)HD(2,64028,e066090,00007690-046d-0000-175e-0000ca5e0000)File(\System\Library\CoreServices\boot.efi)

e

root@fredrik-mbair:~# tree /boot/efi/ | grep -v png
/boot/efi/
└── EFI
    ├── refind
    │   ├── icons
    │   ├── keys
    │   │   ├── altlinux.cer
    │   │   ├── canonical-uefi-ca.der
    │   │   ├── fedora-ca.cer
    │   │   ├── openSUSE-UEFI-CA-Certificate.cer
    │   │   ├── refind.cer
    │   │   └── SLES-UEFI-CA-Certificate.cer
    │   ├── refind.conf
    │   └── refind_x64.efi
    └── tools

5 directories, 68 files

A última informação é a seguinte: Quando eu inicializo com o pendrive USB e pressiono alt, eu recebo um (1) ícone do disco rígido com o texto Windows embaixo dele. Se eu selecionar essa, a tela escurece e eu recebo um cursor branco intermitente (caractere sublinhado) no canto superior esquerdo da tela, como 80x25 linhas ou console similar. Nada acontece depois disso. A opção "rEFInd Boot Manager" não aparece.

Não tenho ideia de onde vem a opção "Windows" e também não sei qual é a opção FFFF.

root@fredrik-mbair:~# efibootmgr -b FFFF -B
invalid hex value FFFF

Como não usarei nada além de um único sistema operacional Ubuntu e kernel do Linux, eu ficaria bem com o gummiboot, mas não sei como isso ajudará quando efibootmgr não conseguir que o rEFInd seja executado na inicialização ...

A última tentativa de executar o install.sh (instalado a partir do PPA) fornece esta saída:

root@fredrik-mbair:~# /usr/share/refind/install.sh 
Installing rEFInd on Linux....
ESP was found at /boot/efi using vfat
Found rEFInd installation in /boot/efi/EFI/refind; upgrading it.
Copied rEFInd binary files

Notice: Backed up existing icons directory as icons-backup.
Existing refind.conf file found; copying sample file as refind.conf-sample
to avoid overwriting your customizations.

rEFInd has been set as the default boot manager.
Existing //boot/refind_linux.conf found; not overwriting.

Installation has completed successfully.

Eu não tenho ideia de para onde ir em seguida.

    
por Fredrik Wendt 07.01.2015 / 00:01

1 resposta

1

Então foi isso que eu fiz para chegar a algum lugar:

A primeira tentativa foi esta:

  • remover tudo em / boot / efi
  • limpe o MBR híbrido (usando gdisk , menu de especialistas e, em seguida, n , em seguida, w )
  • /usr/share/refind/install.sh
  • efibootmgr -c -l \EFI\refind\... -L TIRED

Isso realmente fez com que o rEFInd fosse executado após a reinicialização. No entanto, ele não detectou o kernel vmlinuz-3.16.0-28-generic.efi.signed que desejo executar. Ele mostrou opções e ambos levam a No bootable device em um console de 80x25.

Aha, então tentei executar novamente o script install.sh com --alldrivers . Depois de uma reinicialização, volto para a tela cinza que nunca mostra nada.

Reiniciei, fui buscar o rFI a partir do meu pen drive e depois:

  • eliminou a partição /boot/efi
  • copiou tudo do pendrive para /boot/efi
  • criou uma nova entrada (excluindo a antiga) com efibootmgr

E como eu tenho um sistema de trabalho.

Detalhes:

root@fredrik-mbair:~# gdisk -l /dev/sda
GPT fdisk (gdisk) version 0.8.8

Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: present

Found valid GPT with protective MBR; using GPT.
Disk /dev/sda: 937703088 sectors, 447.1 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): B30ED5AD-A6B6-4FF9-9CC4-1F440536FB9F
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 937703054
Partitions will be aligned on 8-sector boundaries
Total free space is 264949 sectors (129.4 MiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1              40          409639   200.0 MiB   EF00  EFI System Partition
   2          409640       195722143   93.1 GiB    AF00  Macintosh HD
   3       195985408       921180159   345.8 GiB   EF00  LINUX
   4       921180160       937701375   7.9 GiB     0700  SWAP
/boot/efi/
├── EFI
│   └── boot
│       ├── bootia32.efi
│       ├── bootx64.efi
│       ├── drivers_ia32
│       │   ├── btrfs_ia32.efi
│       │   ├── ext2_ia32.efi
│       │   ├── ext4_ia32.efi
│       │   ├── hfs_ia32.efi
│       │   ├── iso9660_ia32.efi
│       │   ├── LICENSE_GPL.txt
│       │   ├── LICENSE.txt
│       │   └── reiserfs_ia32.efi
│       ├── drivers_x64
│       │   ├── btrfs_x64.efi
│       │   ├── ext2_x64.efi
│       │   ├── ext4_x64.efi
│       │   ├── hfs_x64.efi
│       │   ├── iso9660_x64.efi
│       │   ├── LICENSE_GPL.txt
│       │   ├── LICENSE.txt
│       │   └── reiserfs_x64.efi
│       ├── icons
│       └── refind.conf
├── shellia32.efi
└── shellx64.efi

5 directories, 81 files
root@fredrik-mbair:~# efibootmgr -v
BootCurrent: 0000
Timeout: 5 seconds
BootOrder: 0000
Boot0000* COPY  HD(1,28,64000,7fa6ae3f-d9a7-4411-838a-1d0133b9993a)File(\EFI\boot\bootx64.efi)
BootFFFF*   ACPI(a0341d0,0)PCI(1f,2)SATA(0,0,0)HD(2,64028,e066090,00007690-046d-0000-175e-0000ca5e0000)File(\System\Library\CoreServices\boot.efi)
    
por Fredrik Wendt 07.01.2015 / 00:27