Criar um pendrive de boot do Linux (Live USB) via terminal
Saudações!
Muitos programas em modo gráfico de criação de lives USB (pendrives de boot) tem apresentado erros, portanto é uma boa iniciativa executar a tarefa via terminal.
Antes vamos aderir a ideia de que você digitou o comando "sudo su (ubuntu)" ou "su (debian)" e se tornou root no terminal aberto neste exato momento, assim economizamos comandos!
1º passo: identificar o dispositivo.
# fdisk -l
Seu pendrive deve aparecer na lista, de acordo com sua capacidade, exemplo: 8gb deve ter uns 7.5GB como no meu caso.
Feito isso, ele deve ser algo do tipo:
/dev/sdb; ou
/dev/sdc (no caso de você usar um hd externo ou mais de um pendrive)
2º passo: formatar o dispositivo.
# mkfs.vfat /dev/sdx -I
O x representa a letra de teu dispositivo!
3º passo: certifique-se do caminho da imagem .iso que você irá gravar. Se você está logado no terminal na sua pasta de usuário, dê o comando "ls". Ele irá mostrar se sua .iso já está nesta pasta, se já estiver, prossiga para o próximo passo.
Caso não esteja, para facilitar, copie a imagem para esta pasta ou dê o comando abaixo para saber onde você está navegando no terminal, e cole a imagem nesta pasta.
# pwd
4º passo: gravar a imagem via comando.
Vamos usar dois comandos, o dd e o pv.
No 1º passo tu já identificou o dispositivo usb, no 2º tu o formatou, agora tu vais gravar a imagem para o mesmo destino, que deve ser o caminho abaixo:
/dev/sdx
Mais uma vez, lembrando que o x representa tua unidade a ser gravada.
Comando dd de maneira simples e direta!
# dd if=sua_imagem.iso of=/dev/sdx
Comando pv de forma simples e direta (este comando mostra a barra de progresso):
# pv -EE sua_imagem.iso > /dev/sdx
Recomendações:
evite espaços nos nomes das imagens iso, tipo "ubuntu mate 64 bits.iso", dê preferência a "ubuntu_mate_64_bits.iso".
identifique com atenção seu dispositivo usb, pois se estiver usando um hd externo e formatar a unidade errada, pode perder seus arquivos!
verifique no virtualbox por exemplo, se tua imagem está "dando boot", pois após baixada, ela pode estar corrompida e você nem saber disso.
verifique também o MD5SUM do site onde baixou a imagem, assim ajuda conferir a integridade da mesma.
caso queira saber mais sobre os comandos, procure, pesquise, leia o manual dos mesmos no terminal, ex.: man pv ou man dd.
Testado com muitas imagens de distribuições Linux.
[1] Comentário enviado por removido em 23/03/2016 - 12:48h
Ola.
Como irá sobrescrever o conteúdo do disco com o dd ou pv, não necessita "formatar", criar previamente um sistema da arquivos na unidade. Desta forma o passo não não é necessário.
* Aí uma vantagem de softwares como rufus, Yumi e similares, onde nestes é criado um novo sistema de arquivos e instalado na unidade um gerenciador de boot qualquer, e então os dados da imagem são copiados, criadas entradas no gerenciador de boot, porém como o sistema de arquivos é outro, pode ser maior que o da imagem e mesmo conter vários sistemas.
Ao copiar com dd/pv, tera no disco exatamente o mesmo sistema de arquivos da imagem.
------------------------------------------------------
KISS principle, RTFM and STFW = 42
[2] Comentário enviado por CarlosAdriano em 23/03/2016 - 22:42h
Eu até concordaria com você, mas foi graças a usar os comandos dd e pv diretamente sem antes formatar, que eu tive uma gigantesca dor de cabeça com estes programas em modo gráfico.
[4] Comentário enviado por CarlosAdriano em 26/03/2016 - 11:20h
Pra pendrives eu também uso o DD e PV com pendrive formatado em fat32.
Já pra HDs eu uso o PV ou DD direto, e não tive nenhum problema.
Só não recomendo muito, pois o PV e DD copiam o HD inteiro, o espaço usado e livre,
Pra HDs grandes, isso é muita desvantagem, mas pra partições menores, e até HDs pequenos, dá pra usar sem problema.
.
.
.
Confia no SENHOR de todo o teu coração, e não te estribes no teu próprio entendimento.
(Provérbios 3:5)
[5] Comentário enviado por removido em 22/04/2016 - 16:36h
Note que dd, pv, dd_rescue e cia LTDA irão sobrescrever tudo o que existir na unidade de destino, logo perdera tempo com isso.
Faça um teste, antes de usar o dd rode o comando
fdisk -l /dev/sdX
^X= letra da sus unidade.
Agora rode o dd ou pv gravando uma imagem para la, e execute novamente o fdisk -l /dev/sdX
Notou que a estritura do disco esta diferente da que era logo apos o mkfs?
Se preferir, visualize graficamente com o gparted, em cada passo e notara que ira sobrescrever o que tinha no disco, ao usar o dd/pv, e logo, não faz diferença criar um sistema de arquivos para ser destruído em seguida.
Exemplo aqui:
mkfs.vfat /dev/sdf -I
fdisk -l /dev/sdf
Disco /dev/sdf: 7,2 GiB, 7747397632 bytes, 15131636 setores
Unidades: setor de 1 * 512 = 512 bytes
Tamanho de setor (lógico/físico): 512 bytes / 512 bytes
Tamanho E/S (mínimo/ótimo): 512 bytes / 512 bytes
Tipo de rótulo do disco: dos
cd /diretorio/muito/louco
dd if=ubuntu-16.04-desktop-amd64.iso of=/dev/sdf
fdisk -l /dev/sdf
Disco /dev/sdf: 7,2 GiB, 7747397632 bytes, 15131636 setores
Unidades: setor de 1 * 512 = 512 bytes
Tamanho de setor (lógico/físico): 512 bytes / 512 bytes
Tamanho E/S (mínimo/ótimo): 512 bytes / 512 bytes
Tipo de rótulo do disco: dos
Identificador do disco: 0x0e0e8e70
Dispositivo Inicializar Início Fim Setores Tamanho Id Tipo
/dev/sdf1 * 0 2902111 2902112 1,4G 0 Vazia
/dev/sdf2 2888004 2892739 4736 2,3M ef EFI (FAT-12/16/32)
*Note que a partição sdf1 de 1,4G vazia, não esta realmente vazia, ali esta o sistema de arquivos da imagem do Ubuntu
isoinfo -d -i /dev/sdf1
Setting input-charset to 'UTF-8' from locale.
CD-ROM is in ISO 9660 format
System id:
Volume id: Ubuntu 16.04 LTS amd64
Volume set id:
Publisher id:
Data preparer id: XORRISO-1.2.4 2012.07.20.130001, LIBISOBURN-1.2.4, LIBISOFS-1.2.4, LIBBURN-1.2.4
Application id:
Copyright File id:
Abstract File id:
Bibliographic File id:
Volume set size is: 1
Volume set sequence number is: 1
Logical block size is: 2048
Volume size is: 725528
El Torito VD version 1 found, boot catalog is in sector 166
Joliet with UCS level 3 found.
SUSP signatures version 1 found
Rock Ridge signatures version 1 found
Rock Ridge id 'RRIP_1991A'
Eltorito validation header:
Hid 1
Arch 0 (x86)
ID ''
Cksum AA 55 OK
Key 55 AA
Eltorito defaultboot header:
Bootid 88 (bootable)
Boot media 0 (No Emulation Boot)
Load segment 0
Sys type 0
Nsect 4
Bootoff AF6CA 718538
------------------------------------------------------
KISS principle, RTFM and STFW = 42
[6] Comentário enviado por CarlosAdriano em 22/04/2016 - 16:46h
Cara, eu concordo contigo.
Já usei o dd e o pv sem usar o mkfs antes.
Só que quando criei esta dica,
Eu havia acabado de ter um problema com o comando pv e dd,
Eu estava realizando a tarefa normalmente, diretamente com os comandos dd e pv,
E o pendrive não se tornava bootável de maneira nenhuma.
Daí, a idéia de usar o mkfs.vfat pra formatar a unidade antes de usar os comandos dd ou pv nela,
E foi só assim que este procedimento funcionou aqui em 2 pendrives que possuo.
Como eu te disse, eu concordo contigo, pois hoje em dia uso o comando pv e dd para backups,
E utilizo-os sem formatar antes.
Mas eis a questão !
O que eu não consegui entender até hoje, está no tópico abaixo,
Porque que neste caso, os comandos pv e dd não funcionaram sem que eu realizasse a formatação antes ?
[8] Comentário enviado por DanielDutra em 15/07/2016 - 21:27h
AMigos, boa noite
Fiz o procedimento, varias vezes conforme foi indicado mas quando eu digito o comando dd if=openSUSE-Leap-42.1-DVD-x86_64.iso of=/dev/sdb ele demora cerca de mais de 20 minutos e não conclui o processo e acabo tendo que matar o processo no terminal. E quando digito o comando pv -EE openSUSE-Leap-42.1-DVD-x86_64.iso > /dev/sdb ele diz o seguinte: pv: invalid option -- 'E'
Tente `pv --help' para maiores informações.
É necessario o pendrive estar desmontado para fazer o processo?
[9] Comentário enviado por CarlosAdriano em 16/07/2016 - 15:37h
[8] Comentário enviado por iniciantegnu em 15/07/2016 - 21:27h
AMigos, boa noite
Fiz o procedimento, varias vezes conforme foi indicado mas quando eu digito o comando dd if=openSUSE-Leap-42.1-DVD-x86_64.iso of=/dev/sdb ele demora cerca de mais de 20 minutos e não conclui o processo e acabo tendo que matar o processo no terminal. E quando digito o comando pv -EE openSUSE-Leap-42.1-DVD-x86_64.iso > /dev/sdb ele diz o seguinte: pv: invalid option -- 'E'
Tente `pv --help' para maiores informações.
É necessario o pendrive estar desmontado para fazer o processo?
Cara seguindo o tutorial deve dar certo, e o pendrive pode estar montado.
Quanto a demora, o dvd do opensuse é bem grande, e o comando DD é bastante lento mesmo, quanto maior o conteúdo mais vai demorar.
Quanto ao comando pv -EE
Algumas distribuições não aceitam a opção -EE então pode usar só o pv sem esta sítaxe.
[11] Comentário enviado por delonhenrique em 07/06/2017 - 01:19h
Obrigado pelo post consegui criar um pendrive funcional depois de 1 dia inteiro tentando, mas, tenho uma dúvida, é possível criar uma área persistente nesse pendrive para poder rodar o Ubuntu Live e não perder minhas configurações downloads etc.?
Se possível como proceder?
Obrigado.
Edit: Na verdade só funcionou o teste de memória, ele apresenta o seguinte erro quando tento entrar pelo LIve:
Booting kernel failed: invalid argument
Usei a distribuição atualmente disponível no site do ubuntu: ubuntu-16.04.2-desktop-amd64.iso
Alguém poderia me ajudar com o erro ou indicar uma distro, mesmo que não seja Ubuntu, que funcione Live no pendrive? (preferencialmente com região persistente, programo em C, seria excelente ter todos meus códigos em um lugar só junto com o sistema operacional).