A menos que você tenha motivos para não usar a detecção automática do rEFInd que você não mencionou, você está fazendo isso da maneira errada. Ou seja, você deve confiar na detecção automática para as opções GRUB e inicialização direta. Uma instalação padrão com opções padrão deve definitivamente pegar o GRUB automaticamente. Isso seria equivalente à sua opção menuentry Grub
, exceto que a descrição e o ícone mostrados por rEFInd seriam diferentes. (Você pode alterar facilmente o ícone de várias maneiras, conforme descrito aqui .)
Dependendo de onde seu kernel está e de como você instalou o rEFInd, seus kernels podem ou não ser detectados automaticamente. Caso contrário, a solução usual é instalar um driver de sistema de arquivos EFI para qualquer sistema de arquivos que contenha seu kernel. Drivers para ext2 / 3fs, ext4fs, ReiserFS, Btrfs, e alguns em que seus kernels provavelmente não aparecerão todos com o rEFInd; e drivers para muitos mais vêm no pacote efifs. Solte o driver apropriado no subdiretório drivers
ou drivers_x64
da sua instalação do rEFInd O diretório e o rEFInd devem ser capazes de detectar seus kernels em sua localização normal. (Observe que o rEFInd 0.10.0 fez algumas mudanças que ajudam ao usar o Btrfs; com versões anteriores, você precisou adicionar @/boot
à linha also_scan_dirs
em refind.conf
para detectar kernels em volumes Btrfs. Isso não é mais necessário com rEFInd 0.10.0.)
O uso da detecção automática apresenta algumas grandes vantagens sobre o que você está tentando fazer:
- Não há necessidade de copiar manualmente seu kernel; O rEFInd deve detectá-los a partir de suas "casas" normais.
- Ao atualizar seu kernel, o rEFInd detectará automaticamente a versão recém-instalada, sem a necessidade de recopiar o kernel ou atualizar o arquivo de configuração.
- É mais fácil. Na maioria dos casos, a detecção automática "simplesmente funciona" ou funciona com uma configuração extra mínima. (Pode ser necessário executar
mkrlconf
no Ubuntu para obter as opções de kernel corretas a serem usadas em alguns casos.) A opção manualinitrd=
pode ser complicada (erros de digitação não-óbvios e erros simples geralmente causam estragos), mas auto- A detecção do arquivo initrd é tipicamente impecável nos sistemas Ubuntu.
A maior desvantagem da detecção automática é que você não pode controlar o nome exibido como um prompt para o kernel. IMHO, este é um pequeno preço a pagar pelas vantagens.
Se você insiste em fazer do jeito que está tentando, o problema que você está tendo é causado pelo fato de que, a menos que eu tenha perdido alguma coisa, você copiou o kernel, mas não o arquivo initrd, para o ESP. A maneira mais fácil de fazê-lo funcionar é copiar os arquivos ambos para o mesmo local. Você deve então especificar o arquivo initrd usando o mesmo caminho que você usa para se referir ao kernel. Por exemplo:
menuentry Ubuntu {
loader /EFI/ubuntu/vmlinuz-3.19.0-31-generic.efi.signed
icon /EFI/refind/icons/os_linux.png
ostype linux
options "root=UUID=92f926f7-19f8-4a2b-9e9a-bf91db475a3c ro"
initrd /EFI/ubuntu/initrd.img-3.19.0-31-generic
}
Note que você deve identificar o arquivo initrd na linha options
ou em uma linha initrd
separada, não em ambas. (Provavelmente funciona com especificações redundantes, mas não posso garantir isso. Na melhor das hipóteses, isso pode levar a confusão e / ou trabalho extra quando você precisa modificar as configurações.)