Eu tenho um monte de arquivos ISO ao vivo, como GParted , CloneZilla , Boot-Repair , Ubuntu 14.04 32 bits , ... baixados dentro /opt
e na minha antiga máquina BIOS, eu costumava adicioná-los ao menu grub e inicializá-los . :-)
Agora tenho uma máquina UEFI e todas as informações que encontro são de máquinas BIOS.
Quais são as etapas para inicializar esses arquivos ISO a partir do grub?
Estou cansado de "queimar" esses dispositivos em um pendrive o tempo todo, pois nunca consigo encontrar o pendrive de que preciso enquanto o meu computador é muito mais difícil de perder no caos total ao meu redor ... ) :-(
Respostas:
Há um erro no grub 2.04, portanto, verifique se você possui uma versão anterior ou posterior.
Bem, o básico para adicionar um arquivo ISO ao grub é o mesmo para um UEFI e para uma máquina BIOS: edite
/etc/grub.d/40_custom
e adicione ummenuentry
item (GParted é usado neste exemplo) na parte inferior do arquivo:Agora vamos adicionar uma variável que contém o diretório em que armazenamos o ISO (até agora, tudo bem: sem diferenças com as máquinas BIOS):
Estou usando
/opt
para armazená-los, pois não gosto de criar diretórios na raiz da minha máquina e de acordo com a Hierarquia do sistema de arquivos do Linux , onde é onde o software opcional deve residir.Antes de adicionar a
loopback
variável, precisamos descobrir em qual disco rígido o arquivo é armazenado, por isso fazemos um:df --output=source /opt/Live-ISOs/gparted-live-0.31.0-1-amd64.iso | tail -1
ea saída na minha máquina é:/dev/sdb2
.No entanto GRUB usa (
hdX,Y
) notação e este é o lugar onde a diferença entre as máquinas UEFI BIOS e entra! Então agora reiniciar a máquina, ir para o menu grub e pressione C: Isto irá levá-lo ao comando grub tempo com comandos diferentes do que você está acostumado , mas o único que você precisa é:ls
.Na minha máquina, a saída é:
Hã? 4 unidades? Eu só tenho 3! E não está
(hd1,4)
alinhado no BIOS, mas(hd1,gpt3)
no UEFI e(hd0)
não possui partições!Bem, aparentemente quando parte da NVRAM é usada como armazenamento e aparece quando
(hd0)
você precisa começar a numerar suas unidades como 1! Enquanto todas as informações encontradas na inicialização de arquivos ISO dizem que é necessário começar a numerar de 0 (em máquinas BIOS, isso sempre é verdade , isso não é necessariamente o caso em algumas máquinas UEFI !)Portanto, o valor para
loopback
torna-se(hd2,gpt2)$GPartedISOFile
como o arquivo ISO na minha máquina era/dev/sdb2
(segunda unidadehd2
, segunda partiçãogpt2
):Outra diferença é que as máquinas BIOS
linux
einitrd
nas chamadas são chamadaslinuxefi
elinuxefi
nas máquinas UEFI, o que nos dá o resultado final:Então agora salve esse arquivo e atualize o grub com:
Depois de tudo isso, reinicie, entre no menu grub , escolha
GParted Live ISO
e agora você pode facilmente inicializar seu ISO sem precisar procurar um pen drive novamente!:-)
Exemplo do CloneZilla Live (para esta pergunta )
fonte
2
partirupdate-grub2
desses dias.upd↑
e depois copio e colo. Obrigado pelo lembrete Atualizado!Uma alternativa é apenas adicionar um arquivo de configuração ao 40_custom assim:
Faço isso como quando atualizo uma ISO, sempre esqueço de executar
sudo update-grub
. As entradas acima nunca precisam ser alteradas e eu posso editar o livecdimage.cfg, que tem o mesmo formato que qualquer 40_custom, mas sem linhas de cabeçalho, e está na minha pasta / ISO na minha partição ISO.Eu adiciono o toram como outro parâmetro de inicialização e no sistema com a Nvidia adiciono o parâmetro nomodeset boot. Mas muitas vezes ainda é necessário desmontar o / isodevice.
Não é possível desmontar o isodevice desmontar a ISO https://bugs.launchpad.net/ubuntu/+source/ubiquity/+bug/1155216
E isso faz parte do meu arquivo livecdimage.cfg
fonte
insmod
? Você também pode memkusb MULTIBOOT HACK
O Mkusb é uma excelente base para projetos de unidades de inicialização personalizadas devido às suas habilidades com o BIOS e o UEFI.
Esse hack inicializa vários arquivos ISO, incluindo o instalador do Windows, e possui um menu grub2.
As entradas de menu do Grub2 para a maioria dos sistemas operacionais estão disponíveis na Pesquisa do Google e estão além do escopo desta resposta.
Use os padrões mkusb ao criar a unidade USB persistente.
Use os padrões de persistência mkusb em caso de dúvida, o tamanho da partição pode ser ajustado posteriormente, mas leva tempo.
O console do DUS após a instalação.
GPartado antes da modificação da partição.
Separado após modificação - Substitua sdb4, a partição ISO9660 OS e sdb5, a partição ext2 casper-rw, com uma partição FAT32 para arquivos de persistência.
Partição de persistência - Crie uma pasta de nome exclusivo para cada sistema operacional (que requer persistência)
Pasta de persistência - Adicione um arquivo casper-rw e um arquivo home-rw opcional a cada pasta de persistência. Um arquivo home-rw pode ser criado renomeando um arquivo casper-rw. Um arquivo home-rw é como uma partição home separada em uma instalação completa; pode ser reutilizado após a atualização da versão.
Crie uma pasta para os arquivos ISO na partição usbdata do NTFS.
Adicione alguns ISOs à pasta ISO.
localização do grub.cfg
Edite grub.cfg para montar em loop os arquivos ISO. Inclua:
persistent persistent-path=/<persistent-folder-name>/
se você quiser persistência.EDIT 18.04+ No grub, especifique vmlinuz não vmlinuz.efi e initrd não initrd não initid.lz
O sudo partiu -ls / dev / sdb
sudo lsblk -f / dev / sdb
Se um instalador do Windows for necessário, é possivelmente mais fácil começar com a função mkusb "extraindo o instalador do Windows" (eu tive que extrair o ISO do Windows para o TAR manualmente),
Após a instalação, crie uma pasta para ISOs e, se necessário, pastas para persistência (semelhante ao procedimento acima).
Edite /boot/grub/grub.cfg para montar em loop qualquer ISO e especificar qualquer pasta de persistência.
(não encontrou uma maneira de montar um arquivo ISO do Windows).
Se o descrito acima for usado como um pendrive, ele pode ser usado para inicializar ISOs armazenados em um computador somente com Windows. O Grub não é necessário na unidade interna.
fonte
/opt/
. Como faço isso? (+1 nesse meio tempo para o esforço embora ...)Três etapas fáceis
para adicionar ISO ao menu grub e inicializá-lo.
Primeiro, instale
grml-rescueboot
Abra um terminal e digite:
Segundo, mova os arquivos iso para
/boot/grml/
No mesmo terminal, digite:
Terceiro, atualize o grub
No mesmo terminal, digite:
Repita as segunda e terceira etapas, conforme necessário
Não esqueça de excluir arquivos ISO obsoletos de
/boot/grml
.Referência: ajuda do Ubuntu na inicialização ISO do Grub2
Espero que isto ajude
fonte
/boot
é o pior lugar para colocá-los. Desculpe, olhou para o grml, deveria ter mencionado isso. +1 por esforçoMultiBootUSB - QEMU
Se você deseja inicializar arquivos ISO com o mínimo de problemas e não precisa de persistência, o MultiBootUSB inclui uma opção QEMU:
Inicie o MultiBootUSB e selecione a guia Boot ISO / USB.
Arraste e solte o ISO no espaço Selecionar imagem.
Selecione o tamanho da RAM e clique no botão Boot ISO.
Você não precisa editar o grub.cfg ou mesmo sair.
fonte
SIMPLE mkusb ISO multibooter
Se você não precisa de persistência múltipla, é fácil inicializar ISOs de sistema operacional em uma unidade flash mkusb.
Use mkusb para criar uma unidade USB persistente usando um sistema operacional padrão de sua escolha, https://help.ubuntu.com/community/mkusb
Crie uma pasta na partição usbdata sdx1, chamada ISOs.
Adicione os ISOs a serem inicializados nesta pasta.
Adicione entradas de menu a /sdx3/boot/grub/grub.cfg para montar as ISOs em loop.
Amostras:
fonte