Configurando um sistema UEFI Dual Boot com sabor rEFInd
KDPV. REFInd gerenciador de inicialização com tema Regular .Até o momento, quase todo mundo já ouviu falar sobre a tecnologia UEFI. Não vou falar sobre o que é e por que é necessário. Hoje, eu gostaria de descrever o cenário mais simples para instalar um sistema de inicialização dupla com suporte total a UEFI e também considerar a instalação e a configuração do gerenciador de inicialização rEFInd separadamente. Talvez você já tenha visto esses manuais e guias, mas tentarei transmitir com muita clareza a essência do que faremos e por quê. Em outros manuais, você apenas observa a "mágica" do jogador e tenta repeti-la, cometendo, muitas vezes, erros elementares. Para quem esse tópico é interessante - peço um gato.Em geral, o UEFI é projetado, ao contrário, para simplificar o processo de inicialização, em vez de complicá-lo. Por exemplo, por meio dessa tecnologia, um computador pode inicializar o sistema operacional sem nenhuma camada na pessoa do GRUB / LILO / etc, a própria UEFI pode atuar como um carregador. No entanto, esse método tem suas desvantagens, por exemplo, você precisa mexer com a atualização do kernel, é claro que pode escrever um script, mas, no geral grub2-efi
, vamos criar uma lista aproximada de nossas ações, para algumas basta ler e ir direto ao assunto. Na verdade, haverá apenas quatro pontos. O quinto e sexto parágrafo são opcionais.- Grave uma imagem do Windows 10 (8 / 8.1) em um disco / unidade flash.
- Instale o Windows 10 em uma parte do disco.
- Gravar uma imagem de distribuição Linux com suporte a EFI (a maioria) em uma unidade de disco / flash.
- Instalando uma distribuição Linux no restante do disco.
- Instalação e configuração do rEFInd.
- Remoção do GRUB e transição completa para rEFInd.
À primeira vista, tudo é muito simples, apenas 4 pontos básicos, mas há um grande número de nuances.Os erros são cometidos em todos os estágios: eles entram no modo de BIOS legado, indicam a partição de inicialização errada, eles simplesmente não entendem o que estão fazendo etc. Por fim, tudo isso leva a muita dor e sofrimento em fóruns, salas de bate-papo etc. De fato, tudo é simples e irrealista, você só precisa entender o que está fazendo em cada estágio e testar a si mesmo.Primeiro um pouco de teoria
O UEFI vê apenas uma partição ESP especial, geralmente tem um tamanho de 100-200 megabytes e é formatado em FAT32 (às vezes em FAT16), contém pastas com os nomes em Boot, Microsoft, Fedora, Ubuntu, etc. Se você tentou um número suficiente de sistemas operacionais e nunca formatou esta seção, um número razoável de pastas poderia ter sido digitado lá. Por exemplo, eu tinha 2 eixos ativos e havia cerca de 6 pastas.O PS CodeRush sugeriu que todos os FS sejam suportados, se eles tiverem os drivers apropriados :Isto não é verdade. O UEFI vê todas as seções para as quais os drivers FS estão disponíveis em uma implementação de firmware específica. O ESP difere do restante das seções apenas no sentido de que: a) é necessário um driver FAT eb) a seção ESP procura por gerenciadores de inicialização e cria automaticamente as variáveis apropriadas do BootXXXX, se forem encontrados.
As próprias pastas contêm arquivos .efi executáveis que atuam como carregadores de SO. Você provavelmente encontrará o arquivo na pasta debian grubx64.efi
e na pasta Microsoft bootmgr.efi
.A maioria das distribuições Linux monta a partição ESP /boot/efi
, ou seja, o gerenciador de inicialização Debian fica mais ou menos assim: Descobrimos /boot/efi/EFI/debian/grubx64.efi
o diretório e depois o que?E então você precisa entender que ainda existe uma ordem de inicialização, que pode ser controlada usando o utilitárioefibootmgr
, se você não tiver, poderá fazer o download através do seu gerenciador de pacotes, que está presente em todos os repositórios padrão. Para começar, basta digitar este comando e ver uma lista de ordem de inicialização, bem como todos os registros UEFI. Se você quiser lidar com o utilitário, fume mana e leia a Internet, em geral, é muito simples. O Windows maligno aqui e sobrescreve nosso GRUB e coloca a primeira prioridade do Windows Boot Manager, portanto, ele deve ser restaurado. Vou apenas dizer como editar as entradas:efibootmgr -b < > -< > < >
por exemplo, efibootmgr -b 0 -B
significa excluir a entrada 0. OPS CodeRush e outros comentaristas notaram que o efibootmgr é um utilitário muito perigoso e observam que é muito mais seguro usar o EFI Shell.De fato, o GRUB não pode ser tocado, porque provavelmente está na pasta EFI/< >
, você só precisa restaurar a gravação e definir a primeira prioridade, mas por que cavar alguma coisa se pode chroot e entrar grub-install
? Na maioria dos casos, ele fará tudo sozinho.A propósito, você não deve esquecer que o efibootmgr
UEFI também possui a funcionalidade básica , ele pode ler esses registros e criar prioridades. Mas ele não sabe navegar pelas seções de ESP e adicionar novas entradas; essas responsabilidades são atribuídas ao EFI Shell e aos sistemas operacionais. CódigoPS Mesmo que ele possa, e essa habilidade é exigida pela especificação que começa com UEFI 2.2 (o SecureBoot apareceu em UEFI 2.3.1C).
E por último: todas as suas ações são efibootmgr
gravadas na NVRAM! Na maioria dos casos, o UEFI pode restaurar uma NVRAM quebrada cada vez que a verifica e sobrescreve em caso de mau funcionamento. No entanto, alguns fabricantes inescrupulosos produzem firmware bruto e você pode obter um tijolo real. Por exemplo, laptops com UEFI baseados no Phoenix SCT estão arrasando! Portanto, antes de continuar a ler, verifique se o modelo da placa-mãe ou laptop é resistente a esses experimentos.PSDepois de escrever a maior parte do artigo, lembrei-me do Secure Boot. Normalmente, o UEFI o acompanha, mas na maioria dos casos, pode ser desativado de maneira muito simples nas configurações do UEFI. Muitas distribuições Linux suportam, mas eu ainda recomendo desativá-lo, pois isso pode levar a muitos problemas.A excursão da teoria básica acabou.Agora você pode praticar
Isenção de responsabilidade : direi imediatamente que prefiro condições estéreis e me reinstalar completamente usando as ferramentas que testei pessoalmente. Se você usar outros utilitários, não escreva por que você não está trabalhando em um estágio ou outro. Minha versão foi testada por centenas de reinstalações para amigos e colegas.A primeira coisa que precisamos para queimar o Windows
Porque se você instalar o Windows em segundo, ele substituirá o carregador de inicialização. Recuperar? Não tem problema Mas por que se preocupar se você pode fazer tudo imediatamente com sabedoria? No entanto, ainda discutirei as nuances da recuperação um pouco mais tarde no final do artigo.Ao contrário do Linux, o Windows é muito mais fácil de escrever, na minha opinião. A primeira maneira é provavelmente familiar para muitas pessoas, você só precisa entrar no cmd.exe como administrador e inserir esses comandos. Não é difícil perceber, não há absolutamente nenhuma mágica. Acabamos de formatar a unidade flash USB no FAT32: Depois disso, basta abrir o arquivo ISO com o arquivador e transferir o conteúdo para uma unidade flash USB vazia. É isso, a unidade flash UEFI está pronta. No Linux, você pode fazer tudo da mesma maneira, apenas formatá-lo no FAT32 e copiar o conteúdo. A unidade flash resultante deve carregar perfeitamente com qualquer PC com suporte UEFI.diskpart
list disk
select disk < >
clean
create partition primary
select partition 1
active
format fs fat32 quick
assign
exit
, : Windows 10 efi, , UEFI. .
No entanto, prefiro o segundo método usando o utilitário Rufus . Ele nunca me decepcionou. No entanto, este é um método somente para Windows. Nos sistemas Linux, o uso do ddresque para criar uma unidade flash inicializável do Windows NÃO FUNCIONA. Portanto, tente outros utilitários se o primeiro método com formatação simples não ajudou.Tudo que você precisa: selecione sua unidade flash USB, defina o parâmetro "Esquema de partição e tipo de interface do sistema" como "GPT para computadores com UEFI" e pressione Iniciar. Os demais parâmetros não precisam ser tocados. É melhor usar unidades flash menores (8 a 16 gigabytes).Certamente um dos métodos deveria ter sido um passeio, eu pessoalmente nunca encontrei problemas nesta fase, o principal é que o computador suporta UEFI.Então vamos para a fase de instalação
Depois de carregar no modo UEFI, fazemos tudo de acordo com o esquema padrão, mas na fase de escolha do tipo de instalação, selecionamos "expert", ou seja, marcaremos a seção por nós mesmos. Eu recomendo particionar ordenadamente, especialmente se houver muitos discos. Finalmente, após selecionar a unidade, exclua todas as partições existentes. Crie uma partição com o tamanho necessário, por exemplo, 150 gigabytes. (Se você preferir criar duas ou mais partições para o sistema operacional e os arquivos - não há problema, crie uma). Selecione esta seção com um clique do mouse e clique em "Avançar" . E se você fez tudo certo, o Windows solicitará que você crie outros. Certifique-se de responder "Sim". O sistema criará três partições. Duas de nossas próprias necessidades sistêmicas e uma da mesma seção EFI de que precisamos. Eu sempre tenho a segunda numeração, recebo 4 partições, incluindo o usuário NTFS. Se o instalador não se oferecer para criar partições ou apenas uma, você inicializará no modo Legado e precisará reescrever a unidade flash USB, algo deu errado. Infelizmente, o editor de partições do instalador do Windows é extremamente fraco em recursos; portanto, não faz sentido tentar particionar as partições para o futuro Linux; deixamos este local simplesmente gratuito. Em seguida, instale tudo no modo normal.A propósito, um dos sinais da instalação correta do Windows no modo UEFI é a aparência do logotipo do fabricante da placa-mãe / laptop / tablet no momento da inicialização. Em muitos UEFI (por exemplo, da ASUS e da ASRock), há uma configuração separada para isso. Portanto, se não houver logotipo, mas tudo correu como um relógio, não há nada de errado nisso.No momento, não recomendo ajustar o Windows porque, se algo der errado, talvez seja necessário reinstalá-lo.
Escrevendo Linux?
Sim Após o login no Windows, recomendo fazer o download imediato da imagem da distribuição selecionada e gravá-la da mesma maneira no Rufus . É verdade que, no caso de distribuições Linux, o Rufus pode fazer muitas perguntas, por exemplo, ele pode pedir para carregar o gerenciador de inicialização syslinux da Internet ou escolher o modo de gravação de imagem: ISO ou DD. Respondemos a todas as perguntas com "Sim". , ou seja, sim, baixe a versão mais recente do syslinux e grave no modo ISO. Testado no Ubuntu (e suas variações de Server, Mate, GNOME), Fedora, RHEL7, Debian e outros.Dual Boot está literalmente a um passo de distância
Ao contrário do Windows, a maioria das distribuições tem uma excelente indicação do modo UEFI. Por exemplo, o Debian em seu instalador escreve em preto e branco que o sistema está sendo executado no modo UEFI. Outras distribuições mostram isso como um carregador de inicialização grub estranho que parece "de alguma forma errado".Acho que se você estiver instalando o Linux, provavelmente sabe como instalar sua distribuição favorita, por isso não vou me concentrar nos detalhes da instalação de uma única distribuição. Porque este estágio é dolorosamente simples. Se você realmente inicializou no modo UEFI e instalou o Windows como deveria, o Dual Boot está quase no seu bolso.Então, tudo o que você precisa fazer ao instalar o Linux :Selecione uma partição/dev/sda2
(no seu caso, pode ser uma seção diferente) e especifique o ponto de montagem - /boot/efi
. Só isso. Não, sério, é isso. Obviamente, não esqueça de particionar a partição ext4 / Btrfs / ReiserFS / XFS / JFS , monte-a na raiz /. Quem precisa de uma troca (se necessário) também a cria. Em seguida, o instalador da sua distribuição fará tudo sozinho, instalará EFI/< >
o GRUB no diretório e encontrará a entrada Windows ( EFI/microsoft
).Essa lógica foi testada em todas as distribuições acima. Ou seja, repito novamente: o principal é mostrar a sua distribuição onde você tem essa partição ESP estimada e onde você precisa lançar o gerenciador de inicialização nela. Ele não o formata, mas simplesmente adiciona o GRUB. Mas o próprio GRUB está fazendo mágica, mudando as prioridades de inicialização etc. Observo que algumas distribuições montam esta seção sempre que necessário, pois veem os sinalizadores ESP e BOOT. Por exemplo, no instalador da Debian, você só precisa criar uma seção de usuário e é isso.
Trazendo beleza, definindo rEFInd
Para infelizmentefelizmente estou doente com uma forte forma de perfeccionismo. E o GRUB2 simples não combinava comigo, doía muito e não era bonito. Uma pesquisa rápida me contou sobre o BURG, o “belo” garfo do GRUB, mas foi abandonado e, no momento, é mais provável que morto do que vivo. Felizmente para as máquinas UEFI, existe uma ótima alternativa - rEFInd. rEFInd é uma bifurcação do rEFIt agora abandonado, bem como sua continuação lógica. O primeiro foi criado principalmente para Macs e funciona perto do Boot Camp, o fork atual não possui uma especialização tão estreita e é adequado para praticamente qualquer configuração., rEFInd . Boot Manager, .efi- , UEFI /boot
. , UEFI. Multi-Boot . rEFInd .efi-, UEFI Shell. EFI/refind/refind_x64.efi
Além do fato de poder escolher entre os sistemas já instalados no seu PC, uma boa vantagem é a detecção automática de unidades flash e discos inicializáveis. No CPDV isso pode ser visto. Eu tenho uma unidade flash USB inicializável com o Debian (não um instalador, mas um sistema operacional completo) e você pode ver uma indicação conveniente de que essa é uma unidade flash USB e não outra coisa. Se você tiver vários núcleos, poderá ver a lista deles pressionando F2. Além disso, /boot/refind_linux.conf
você pode especificar várias opções no arquivo com diferentes parâmetros do kernel (por exemplo, o primeiro é padrão para carregar a GUI, o segundo é o modo de segurança sem um driver de vídeo, etc., você pode fazer uma dúzia de opções, por padrão, existem apenas três). Também para a pastaEFI/tools
Você pode descartar binários .efi diferentes, por exemplo UEFI Shell ou memtest86 +. O rEFInd irá buscá-los automaticamente e mostrá-los na linha inferior como utilitários.Mais algumas capturas de tela Voce tambem quer
O processo de instalação no Linux é extraordinariamente simples. Todos os métodos estão descritos no site oficial, você pode instalar a partir de praticamente qualquer sistema operacional. Para começar, visite esta página e faça o download do pacote .deb ou .rpm.Se você tiver um kit de distribuição raro, como Slackware ou Gentoo, pessoalmente não poderei ajudá-lo, mas o site possui um arquivo .zip regular e outras opções de instalação; portanto, se você trabalha nessas distribuições, provavelmente poderá instalar sozinho sem problemas
Faça um backup do diretório EFI:cp -r /boot/efi/EFI /boot/EFI.bkp
Depois de baixar o pacote, execute:cd Downloads
ou cd
E instale o pacote:sudo dpkg -i < >.deb
ou sudo dnf install < >.rpm
No meu caso, dpkg
às vezes não era possível obter as dependências; se você tiver as mesmas dificuldades, instale o gdebi ( sudo apt-get install gdebi
) e execute sudo gdebi < >.deb
.Se você tem um RHEL ou CentOS, em seguida, usar yum
vez dnf
.Nos logs de instalação do pacote, você pode rastrear o registro de instalação rEFInd, no qual pode haver erros que devem ser rastreados imediatamente. No entanto, na minha experiência, não há erros se tudo for feito corretamente. Você pode verificar o resultado do instalador do rEFInd usando o utilitário efibootmgr
, em que o rEFInd Boot Manager deve ser a primeira prioridade.Você pode instalar o rEFInd novamente, se o pacote já estiver instalado, usando o comando: Arefind-install
instalação do rEFInd com a primeira prioridade pode ser feita manualmente, usando o comando:refind-mkdefault
Reboot.Tudo é muito assustador e de onde encontro tantos sistemas operacionais?
Sim, é assustador, tchau. De fato, você possui apenas dois sistemas operacionais. Apenas o rEFInd coletou todos os binários .efi e também exibiu o sistema operacional com a capacidade de baixar diretamente. Para corrigir esse mal-entendido, removeremos o excesso, escreveremos nossa configuração e colocaremos um belo tema em rEFInd.Primeiro, acesse o Linux selecionando um dos pontos de inicialização de trabalho. Deve haver um item no menu para carregar SEM usar grubx64.efi! A seção é /boot
mais fácil de trabalhar sob o administrador (porque a equipe cd
não possui privilégios, mas sudo
não funciona), por isso su
inserimos a senha root.Este item não é em vão opcional, porque se você não tiver experiência suficiente, poderá quebrar algo com muita facilidade e não perceber. Eu recomendo preparar uma unidade flash com um LiveCD em funcionamento para realizar a recuperação em caso de inesperado.Nossa primeira tarefa é remover diretivas de download desnecessárias, elas podem ser facilmente de 6 partes e existem apenas dois sistemas.Vamos para o diretório:cd /boot/efi/EFI && ls
Provavelmente haverá cinco pastas:BOOT, microsoft, <sua distribuição>, refind e ferramentas.Se houver algo supérfluo - fique à vontade para excluí-lo.Método 1 (através da purificação, mais perigoso) :Após certificar-se de inicializar via rEFInd (!) E NÃO usar o GRUB para isso, você pode excluir com segurança sua pasta de distribuição. Reinicie e verifique se você pode inicializar no seu Linux. Se você puder, provavelmente existem quatro diretivas restantes no menu de inicialização: Windows, Linux e dois itens estranhos que levam (provavelmente) à inicialização do Linux. Pode-se adivinhar que esses são binários .efi de uma pasta EFI/BOOT
. A pasta pode ser excluída completamente. MAS! Verifique se você tem um backup. Reinicie. Está tudo bem?Excluir GRUB:sudo apt-get remove grub2 grub2-efi grub grub-efi
Ou:sudo dnf remove grub2
Agora você pode colocar o tópico.Alguns UEFIs não veem outros diretórios. Portanto, existe uma pequena solução alternativa para esses sistemas. Exclua a pasta BOOT, renomeie a pasta refind para a pasta BOOT, bem como o próprio arquivo refind_x64.efi em bootx64.efi. Reinicie.
Método 2 (via rEFInd config, mais seguro) :esse método é muito mais seguro, porque não excluiremos nem tocaremos em nada, alcançaremos o resultado configurando a configuração corretamente. A configuração em si está aqui: /boot/efi/EFI/refind/refind.conf
Para configurar seu conjunto de diretivas de inicialização, é necessário usar dois parâmetros scanfor
e menuentry
, após a configuração, você deve obter algo como esta: é claro que isso é apenas parte da configuração ; outros parâmetros podem ser obtidos no exemplo Minha configuração, com base no primeiro método com comentários
Separadamente, você pode ler sobre o Plymouth aqui . Inclusão de um tema bonito
Isso é simples, logo acima da última linha da configuração aponta para o arquivo .conf do tema. Os próprios temas são desejáveis para colocar em uma pasta# ,
scanfor manual,external,optical
# Linux
menuentry Linux {
loader /EFI/ubuntu/grubx64.efi
icon /EFI/refind/icons/os_linux.png
}
# Windows 10
menuentry "Windows 10" {
loader \EFI\Microsoft\Boot\bootmgr.efi
icon /EFI/refind/icons/os_win.png
}
# -
timeout 20
# 300 , ,
#
screensaver 300
# -
resolution 1280 1024
# Linux. Plymouth
#
use_graphics_for linux
scanfor internal,external,optical,netboot,biosexternal
#
include themes/refind-theme-regular/theme.conf
/boot/efi/EFI/refind/themes
. Por padrão, não é, crie através mkdir
.Vamos ao diretório de temas e apenas escrevemos git clone https://github.com/munlik/refind-theme-regular.git
. No registro de configuração, a linha include themes/refind-theme-regular/theme.conf
Outros tópicos podem ser visualizados no escritório. site .Lá você pode ver processos de instalação detalhados, parâmetros para ajustar a configuração e muito mais.Talvez seja só isso. Temos um gerenciador de inicialização bonito para escolher o sistema operacional certo com suporte UEFI completo. O item com a instalação do rEFInd é o mais complexo e, portanto, opcional, a maioria será suficiente grub2-efi
.Por fim, um pequeno vídeo meu:Certamente uma quantidade decente de erros no texto apareceu, ficarei feliz se você me escrever sobre eles.Source: https://habr.com/ru/post/pt394005/
All Articles