Receita de bolo para fazer seu pen-drive multiboot
Autor: Magoexodia | Publicado: 2016-07-17T18:02:00-03:00

Com muito trabalho e muita pesquisa.






Lembre-se de remarcar a opção boot depois de formatar. Por que a anta aqui esqueceu.Assista em 480p pelo menos pra ter uma boa leitura do que eu estou fazendo.


Levei muito tempo para conseguir só chegar perto de fazer um pendrive bootável. Mas consegui algo muito melhor: um pendrive multiboot que também carrega isos direto do hd.

Ingredientes:


1 pendrive a gosto
1 computador com ou sem sistema operacional desde que tenha um drive de cd-rom
1 live-cd de qualquer distribuição linux com grub2
internet a gosto




Modo de preparo:



Baixe a iso, preferencialmente versão desktop;
Formate o pendrive
No mesmo terminal, abra o gparted digitando sudo gparted /dev/sdx e torne o pendrive bootável. Lembre-se de desmontar, mas não ejetar o dispositivo. O gparted só trabalha com dispositivos desmontados.
Rode o live-cd, ou o seu sistema linux que tenha o grub2
Com o pendrive montado, descubra a partição dele abrindo o terminal e digitando mount (enter).&nbsp;
Instale o grub2 digitando "sudo&nbsp;grub-install --force &nbsp;--root-directory=/media/pendrive /dev/sdx" (enter). (dica) sdx é a partição do pendrive. E /media/pendrive é o local onde ele foi montado.

Instalar na partição /dev/sdx1 também funciona;

Agora digite&nbsp;grub-mkconfig -o&nbsp;/dev/sdx1/grub/grub.cfg&nbsp;

/dev/sdx1 é a partição onde você instalou o grub2

Agora, abra o diretório do pendrive na pasta boot/grub/, crie um arquivo de texto chamado grub.cfg (não txt, cfg).
Abra o arquivo e copie o seguinte código em vermelho para lá:



#!/bin/sh&nbsp;
exec tail -n +3 $0&nbsp;
set timeout=30&nbsp;
set default=0&nbsp;

 menuentry "0 - HD" {
&nbsp;set root=(hd1)
&nbsp;chainloader +1
}

 menuentry "1 - Restart" {
&nbsp;reboot
}

 menuentry "3 - Linux Mint 15 Mate ISO no pendrive que estamos usando" {&nbsp;
 set gfxpayload=keep
&nbsp;loopback loop (hd0,msdos1)/linuxmint-15-cinnamon-dvd-32bit.iso&nbsp;
&nbsp;linux (loop)/casper/vmlinuz file=/cdrom/preseed/mint.seed boot=casper iso-scan/filename=/linuxmint-15-cinnamon-dvd-32bit.iso noeject noprompt quiet splash --&nbsp;
&nbsp;initrd (loop)/casper/initrd.lz&nbsp;
}

 menuentry "4 - Linux Mint 15 Mate ISO no hd" {&nbsp;
 set gfxpayload=keep
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;#Caso esteja numa pasta próxima da pasta raiz do sistema (mas no hd)
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;loopback loop (hd1,msdos3)/Downloads/linuxmint-15-cinnamon-dvd-32bit.iso&nbsp;
&nbsp;linux (loop)/casper/vmlinuz file=/cdrom/preseed/mint.seed boot=casper initrd/casper/initrd.lz iso-scan/filename=/Users/Marinaldo/Desktop/iso/linuxmint-15-cinnamon-dvd-32bit.iso noeject noprompt quiet splash --&nbsp;
&nbsp;initrd (loop)/casper/initrd.lz&nbsp;
}

 menuentry '5 - Ubuntu ubuntu-10.04.3-desktop-i386 no hd' {
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;insmod part_msdos
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;insmod ext2
 set gfxpayload=keep
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;echo &nbsp; 'Loading Loopback Image...'
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;#Caso esteja numa "Downloads" próxima da pasta raiz do sistema (mas no hd)
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;loopback loop (hd1,msdos3)/Downloads/ubuntu-10.04.3-desktop-i386.iso
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;echo &nbsp; 'Loading Kernel Image...'
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;linux &nbsp; (loop)/casper/vmlinuz file=/cdrom/ubuntu.seed boot=casper initrd/casper/initrd.lz iso-scan/filename=/Users/Marinaldo/Desktop/iso/ubuntu-10.04.3-desktop-i386.iso noeject noprompt quiet splash --
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;echo &nbsp; 'Loading Initrd Image...'
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;initrd &nbsp; (loop)/casper/initrd.lz
}&nbsp;

 
 menuentry '5 - lUbuntu lubuntu-13.10-desktop-i386 no hd' {
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;insmod part_msdos
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;insmod ext2
 set gfxpayload=keep
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;echo &nbsp; 'Loading Loopback Image...'
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;#Caso esteja numa pasta próxima da pasta raiz do sistema (mas no hd)
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;loopback loop (hd1,msdos3)/Downloads/lubuntu-13.10-desktop-i386.iso
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;echo &nbsp; 'Loading Kernel Image...'
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;linux &nbsp; (loop)/casper/vmlinuz file=/cdrom/lubuntu.seed boot=casper initrd/casper/initrd.lz iso-scan/filename=/Users/Marinaldo/Desktop/iso/lubuntu-13.10-desktop-i386.iso noeject noprompt quiet splash --
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;echo &nbsp; 'Loading Initrd Image...'
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;initrd &nbsp; (loop)/casper/initrd.lz
}




Faça as devidas correções. Salve e... Está feito o seu pendrive bootável.





--------------------------------------------------------------------------------------

Segredinhos da receita

1 - &gt; Você vai precisar configurar seu computador para iniciar pelo pendrive. Basta apertar a tecla de acesso a configuração de boot do sistema (no meu computador (acer) foi f2), prioridade de boot e por o pendrive em primeiro.

2 - &gt; (hd1, msdos3) tem a ver com hd, partição. Nas pesquisas que fiz hd0 é o primeiro hd, ou seja, o pendrive em uso. Já a partição começa no 1 e segue, ou seja msdos3 é a 3ª partição do 1º hd.

3 - &gt; A internet é só pra pesquisar e, caso necessidade, baixar os isos. O tamanho do pendrive é só para o caso de você querer muito espaço para as isos. No caso, a depender das isos que você deseja carregar, vai ser muito necessário.

4 - &gt; Se você carregar as isos do hd é bem mais rápido do que do live-pendrive ou do live-cd. E caso o faça, poderá desmontar o pendrive e usar o computador como se houvesse instalado o sistema do pendrive. Ou seja, todas as portas usbs livres.

5 - &gt; se for colocar um caminho extenso para a iso evite espaços. O erro gerado será "out of range" =&gt; fora de alcance. Prefira caminhos curtos como os que pus (/Users/Marinaldo/Desktop/iso/lubuntu-13.10-desktop-i386.iso). Evite o caracter espaço (" "). Evite os espaços. Organização é bom, sim. Mas evite os espaços.

6 -&gt; Os isos serão sempre carregados na língua original: inglês. Não sei como mudar isso.

Boa sorte e que deus lhe ajude nessa empreitada e... Mãos a obra!!!

/*-/*-/*-/*-/*-/*-/*-/*-/*-/*-/*-/*-/*-/*-/*-/*-/*-/*-/*-/*-/*-/*-/*-

Algumas explicações a mais:

menuentry "3 - Linux Mint 15 Mate ISO no pendrive" {
Ítem do menu "nome do ítem"
&nbsp;set gfxpayload=keep
&nbsp;loopback loop (hd0,msdos1)/linuxmint-15-cinnamon-dvd-32bit.iso
A linha acima é uma variável que carrega o arquivo pra memória. Mude esse caminho pra acessar a sua iso.
&nbsp;linux (loop)/casper/vmlinuz file=/cdrom/preseed/mint.seed boot=casper iso-scan/filename=/linuxmint-15-cinnamon-dvd-32bit.iso noeject noprompt quiet splash --
Esta linha inteira carrega o sistema incluindo o kernel
&nbsp;initrd (loop)/casper/initrd.lz
Aqui é o faz o sistema trabalhar
}

Bibliografia:



Viva o Linux - como fazer um pendrive bootavel
Clube do Hardware
Fórum do ubuntu