Pendrive de Boot - Experiências em UEFI

1. Pendrive de Boot - Experiências em UEFI

Patrick
Freud_Tux

(usa Outra)

Enviado em 05/08/2019 - 19:35h

Olá, pessoal, tudo bem?
Seguinte!

Estou fazendo uns testes aqui com pendrives bootáveis e cheguei a algumas conclusões que talvez ajudem alguns, e não agradem a outros. Estou me referindo apenas e unicamente ao UEFI + GPT, tendo em vista que BIOS + MBR já são considerados antigos.
Vamos lá.

1º O comando dd não funciona para boot em UEFI + GPT.
O dd quando é "mandado" gravar na "raíz" do pendrive, por exemplo reconhecido como /dev/sdd e com uma partição primária /dev/sdd1, a raíz é a /dev/sdd.
Enfim, ele tem a gentileza de mandar a tabela GPT pro espaço e coloca uma msdos no lugar. Ai não tem como, pois UEFI + GPT usa claro... GPT hehe.
Se "manda" o dd gravar na primeira partição primária, no caso do exemplo é a /dev/sdd1, ele não altera tabela, copia mas realiza alguma alteração dentro dessa partição, que inviabiliza o boot.
Lembrando que o pendrive tem que estar em FAT32.

2º Descompactar a iso, ou montar ela e copiar os arquivos para a partição primária funciona, desde que não tenha links.
Teste em XFCE, FluxBox, KDE5, Terminal, Bash... Catei uma iso do Devuan e outrado Debian 10 e descompactei e outras vezes montei a iso em outro diretório.
Em ambos os casos, na hora que chega para ser copiado os arquivos para o pendrive, simplesmente ocorre uma mensagem de erro, que resumidamente fala que não existe permissão para realizar essa operação.
Tente com o comando cp e mv e um monte de variáveis e nada. Tentei por meio da interface gráfica e nada também. Em todos os casos ocorre isso.
Tentei descompactar a iso dentro do pendrive e o mesmo erro ocorre.
Creio que seja uma limitação do FAT em relação ao arquivos no Gnu/Linux.
Mas em uma iso do Gparted que não tem nenhum link, funciona perfeitamente.

3º Copiar o conteúdo descompactado da iso no janelas para um pendrive... Funciona 100%.
Sim...
Realizando essa operação de copiar todo o conteúdo descompactado da iso, dentro da partição primária (não da raíz), pelo janelas, funciona perfeitamente.
Notei que a estrutura dos arquivos é vista de maneira diferente no janelas dentro da própria iso, usado o 7zip, em relação ao Gnu/Linux.
Na própria iso tem um diretório chamado [BOOT], que não existe quando se está no Gnu/Linux.


Então, se souberem de alguma maneira de copiar os arquivos com links para o pendrive, compartilhem ai.
Pensei em usar o rsync localmente, já que ele tem um suporte bem legal a links, mas o sistema de testes simplesmente apaga o arquivo /etc/resolv.conf e vou ter que reinstalar mesmo.

T+


  


2. Re: Pendrive de Boot - Experiências em UEFI

Thiago Silva
pain-sama

(usa Arch Linux)

Enviado em 05/08/2019 - 20:27h

Sobre o 1º tópico. Como assim o dd não funciona para sistemas EFI? Estou perguntando porque não entendi bem o que você quis dizer. Eu costumo criar pen drives bootáveis para instalação em sistemas EFI o tempo todo com dd e nunca tive problemas.


3. Re: Pendrive de Boot - Experiências em UEFI

Patrick
Freud_Tux

(usa Outra)

Enviado em 05/08/2019 - 22:38h

pain-sama escreveu:

Sobre o 1º tópico. Como assim o dd não funciona para sistemas EFI? Estou perguntando porque não entendi bem o que você quis dizer. Eu costumo criar pen drives bootáveis para instalação em sistemas EFI o tempo todo com dd e nunca tive problemas.


Olá.
Apenas para correção do item 1º que postei. EFI foi o primeiro nome (Extensible Firmware Interface). Depois foi alterado para UEFI (Unified Extensible Firmware Interface). E nada mais é, do que um substituto do velhinho BIOS.
O UEFI tem 3 tipos de classes, um que era uma emulação do BIOS, o outro que era um híbrido e o Total, que ainda está sendo implementado.
Eu já tive contato com os dois primeiros, e creio que peguei uma implementação mais interessante do segundo, onde, uma emulação do legacy não rola mais em conjunto, mas sim, ativando o modo legacy totalmente e desabilitando o modo UEFI. Na implantação da nova classe do UEFI, não terá mais modo legacy.
Alguns links para quem quiser entender mais da coisa toda, pois é legal entender isso:

https://uefi.org/
https://www.infowester.com/efi.php
https://caixaseca.blogspot.com/2014/01/uefi-x-sistemas-operacionais.html

E respondendo a sua pergunta, sim.
Qualquer iso que eu copio para um pendrive com o comando dd, não funciona em UEFI. Como escrevi acima, o dd além de copiar ele formata (está na descrição dele, ao rodar um man dd). Eu verifiquei que ao gravar uma iso na raíz de qualquer pendrive, ele altera a tabela de GPT para msdos. Ai não tem como o UEFI + GPT entender em dar boot nisso.
E se eu gravo na partição primária, ele formata alguma coisa que o UEFI não reconhece.

Mas copiando uma iso descompactada, como a do Gparted ou Live Devuan, para essa partição primária (note, não é a raíz) dá boot de boa em modo UEFI.
Mas ao tentar fazer o mesmo com uma iso do Debian ou Devuan Install, empaca tudo nos diretórios que tem links internos.
Fiz um teste no sistema do gates,o janelas, apenas copiei o conteúdo de uma iso descompactada para uma partição primária e deu super certo. Isso me deixou bem encucado, de não conseguir realizar o mesmo no Gnu/Linux.

Como você grava com o comando dd?

T+


-------------------------------------------------------------------------------------------------------------------------------------------------
Noob: "[...]Sou muito noob ainda usando o terminal, então preciso de ajuda "mastigada", pra operá-lo."
zhushazang: "Sou velho e meus dentes desgastados. Estude linux www.guiafoca.org";


4. Re: Pendrive de Boot - Experiências em UEFI

linuxlts
linuxlts

(usa Debian)

Enviado em 05/08/2019 - 23:44h

Comigo sempre funcionou usar o comando dd para gravar uma ISO para ser usada em UEFI.
A UEFI foi configurada para usar o modo que tem suporte apenas a sistemas que suportem UEFI.
O pendrive está com a tabela de partição em GPT e o sistema de arquivos em FAT32.
A ISO é gravada com o comando dd:
# dd if=/home/usuario/pasta/linux.iso of=/dev/sdb bs=4M
E o pendrive bootavel e também o sistema depois de instalados iniciam normalmente em UEFI.


5. Re: Pendrive de Boot - Experiências em UEFI

Patrick
Freud_Tux

(usa Outra)

Enviado em 06/08/2019 - 14:54h

linuxlts escreveu:

Comigo sempre funcionou usar o comando dd para gravar uma ISO para ser usada em UEFI.
A UEFI foi configurada para usar o modo que tem suporte apenas a sistemas que suportem UEFI.
O pendrive está com a tabela de partição em GPT e o sistema de arquivos em FAT32.
A ISO é gravada com o comando dd:
# dd if=/home/usuario/pasta/linux.iso of=/dev/sdb bs=4M
E o pendrive bootavel e também o sistema depois de instalados iniciam normalmente em UEFI.


Olá.
Sim,o UEFI só funciona com qualquer sistema de 64bits. O que empaca muitas coisas, é o secure boot, mas isso é fácil de desabilitar, praticamente em todos os firmwares UEFI que vem nas placas mães hoje.

Então, eu já zerei o pendrive com o shred (sim, passei isso neles rsrs), já apaguei a tabela de partições, "zerei" o pendrive com o dd também.
Criei um novo particionamento em GPT, que fica dentro da raíz pendrive. Depois criei uma partição e formatei em FAT32.
Já tentei formatar a raíz em FAT32, mas não dá certo também heheeh, ela vira msdos (><). O dd realiza algum tipo de procedimento que não faço a menor ideia que o pendrive não dá boot em modo UEFI.
Um exemplo do que eu faço, fica mais ou menos assim:

/dev/sdx = raíz com tabela GPT
/dev/sdx1 = partição primária em FAT32


Mas o que não vejo sentido é mandar o dd gravar dentro da raíz, pois no meu caso, ele "destruiu" a tabela de partição GPT e colocou uma msdos no lugar.

Aqui tenho um pendrive com o gparted que está assim:

/dev/sdx = raíz com tabela GPT
/dev/sdx1 = partição primária, onde está descompactado o contéudo da iso do Gparted.


E dessa maneira o pendrive dá boot normalmente no UEFI.
Mas quando fiz com o dd, não funcionou.

Mas como as isos de instalação do Devuan e do Debian tem vários arquivos e diretórios que usam link, o simples processo de copiar e colar não funciona. No janelas do gates, funciona e o pendrive dá boot normalmente.

É preciso deixar claro, que não tem uma placa mãe com um firmware UEFI 100% puro. Todos os fabricantes de placas mãe alteram o firmware UEFI para as suas necessidades, e isso deve gerar alguns problemas, como no meu caso como comando dd.

T+

-------------------------------------------------------------------------------------------------------------------------------------------------
Noob: "[...]Sou muito noob ainda usando o terminal, então preciso de ajuda "mastigada", pra operá-lo."
zhushazang: "Sou velho e meus dentes desgastados. Estude linux www.guiafoca.org";


6. Re: Pendrive de Boot - Experiências em UEFI

Bruno Sousa
N1vBruno

(usa Arch Linux)

Enviado em 06/08/2019 - 18:16h

Nas minhas experiências eu sempre tive o mesmo resultado que você, seja usando o dd ou programas com interface gráfica, a tabela de partição do pendrive sempre volta pra msdos usando Linux. No Windows eu testei só com o Rufus, e ele consegue gravar tanto em msdos quanto em GPT, e realmente ele mantém o que você determina.
Mas pelo menos aqui não fez diferença, usando ISOs do Manjaro, do Endeavour e do próprio janelas, o pendrive consegue dar boot tanto em BIOS quanto em UEFI (sim, com suporte legacy desabilitado, inicia normalmente pelo UEFI mesmo).


7. Re: Pendrive de Boot - Experiências em UEFI

Patrick
Freud_Tux

(usa Outra)

Enviado em 06/08/2019 - 19:37h

N1vBruno escreveu:

Nas minhas experiências eu sempre tive o mesmo resultado que você, seja usando o dd ou programas com interface gráfica, a tabela de partição do pendrive sempre volta pra msdos usando Linux. No Windows eu testei só com o Rufus, e ele consegue gravar tanto em msdos quanto em GPT, e realmente ele mantém o que você determina.
Mas pelo menos aqui não fez diferença, usando ISOs do Manjaro, do Endeavour e do próprio janelas, o pendrive consegue dar boot tanto em BIOS quanto em UEFI (sim, com suporte legacy desabilitado, inicia normalmente pelo UEFI mesmo).


Bem vindo ao clube hehehe.
Por isso, que eu não entendo, o por que de mandar o dd gravar na raíz, sendo que lá é que está os dados das tabelas (GPT no caso), sendo que ele sobrescreve a GPT e coloca uma msdos que é compatível com o BIOS.
Eu usei o Rufus, e achei interessante, meio obscuro o processo todo, tanto que eu vi um diretório oculto chamado system information no pendrive, mas o processo é interessante. Repare que se você baixar uma iso de instalação de um Devuan, Debian, ou outro Gnu/Linux, no janelas do gates, usar o 7zip apenas para ver o conteúdo da iso, verá que a estrutura apresenta diretórios com alguns nomes diferentes, do que no Gnu/Linux.
Se formatar um pendrive em GPT, criar uma partição primária em FAT32 e copiar todo o conteúdo da iso descompactada pra essa partição, vai dar boot normalmente. Mas se você tentar fazer isso no Gnu/Linux, devido aos links, não dá certo, nem copiando a iso para um pendrive e tentar descompactar dentro dele, dá certo, aparece os mesmos erros.

O UEFI é "inteligente" o suficiente para ver o diretório boot dentro da partição FAT32, e procurar o respectivo bootloader e "chamar" ele para dar boot.

O seu firmware UEFI deve ser um semelhante que vem nas placas mães asus, tanto de desktop como de notebook, onde ele é um híbrido, dando boot tanto por modo legacy, quanto UEFI (quando o sistema tem suporte ao UEFI, ele avisa).

T+


-------------------------------------------------------------------------------------------------------------------------------------------------
Noob: "[...]Sou muito noob ainda usando o terminal, então preciso de ajuda "mastigada", pra operá-lo."
zhushazang: "Sou velho e meus dentes desgastados. Estude linux www.guiafoca.org";