Há tempos eu queria mostrar como se faz isso e o quanto é simples.
Normalmente quando se tem algum problema com o sistema e nenhum dos recursos convencionais dão certo, o que todo mundo te diz é:
“Dá um boot com um live-cd de qq XXXXX e faz o que você precisa”
Beleza, mas e quando você tá com seu Netbook, ou quando o Servidor tem aquele Drive de CD/DVD hotplug que é usado nos outros 32 servidores e naquele momento está sendo usado por alguém em outro servidor?
Dá um boot com o pendrive
Fazer isso como Ubuntu é facinho facinho, ta cheio de documentação pela internet a fora. E fazer isso com o Debian, também não é difícil, mas as formas são várias, eu vou mostrar uma dela usando uma ferramenta nativa do Debian, mas que pode ser usado no Ubuntu para gerar um Debian.
Bacana né?
Então mão na massa.
No seu Debian ou Ubuntu instale a ferramenta live-build:
aptitude install live-build
Esqueci de dizer no início, mas você terá que estar conectado na internet para fazer da forma que eu vou mostrar, entretanto nada que um “lh config -u” não resolva para criar a partir de um DVD, NFS, FileSystem dentre outros.
Em seguida crie um diretório com o nome da versão do Debian que deseja criar o live pendrive.
Vou fazer com o Squeeze. Então:
mkdir squeeze
cd squeeze
O próximo passo é criar a “árvore de configuração”. Vou mostrar o básico depois dou uma sofisticada.
Criando a configuração:
lh config -d squeeze -b usb-hdd –packages “xfce4″
Bom, vou explicar rapidamente o que esta linha fará.
Ela criará uma configuração que criará um uma imagem para dispositivos USB (-b usb-hdd) com Debian Squeeze (-d squeeze) e que vai ter os pacotes necessários para subir um XFCE 4 (–packages “xfce4″).
Só uma observação. O pacote “xfce4″ é um “meta pacote” que traz como dependência todos os pacotes para que o XFCE4 funcione corretamente. Lógico que só virão tudo que o XFCE4 precisa, então não contem com Web Browsers ou terminais sofisticados.
A partir de agora você já poderia criar sua imagem, entretanto o live-build buscaria todos os pacotes do repositório “http://ftp.de.debian.org/debian”, ou seja, lá na Alemanha, além de criar sua imagem baseada na arquitetura do computador onde está sendo gerada e escolhendo o hostname, que é uma perfumaria mas eu gosto, debian arbitrariamente, vai configurar o idioma para inglês e o teclado também para o idioma configuração US.
Então, por exemplo, se tu criar uma imagem no seu notebook que for i386, a imagem terá a os pacotes da arquitetura i386, que por sua vez vai funcionar num amd64, mas vice e versa não acontece a mesma coisa. O seu sistema estará em inglês e o teclado também configurado para esta lingua, você não terá browser, nem editor de texto nem nada, só xfce. O melhor é definir tudo que você precisa para já criar uma imagem, digamos, personalizada.
Bom, então vamos sofisticar um pouco mais nossa linha de configuração. Para isso remova tudo que está dentro do diretório que criou inicialmente.
Existe o comando “lh cleanup”, mas não sei por que cargas d’agua não funciona, então use o cleanup apelidado de “rm -rf”.
Melhorando a configuração da nossa imagem:
lh config -a i386 –mirror-bootstrap http://ftp.br.debian.org/debian/ –mirror-chroot http://ftp.br.debian.org/debian/ –mirror-binary http://ftp.br.debian.org/debian/ –debconf-frontend dialog -d squeeze -b usb-hdd -l pt_BR –hostname debian-live –fdisk fdisk –packages “xfce4 iceweasel vim bash-completion”
Agora sim o trem ficou chique. Aqui a gente definiu qual arquitetura (-a i386) definimos qual seria o mirror que será base para fazer o bootstrap (–mirror-bootstrap http://ftp.br.debian.org/debian/), vai fazer o chroot para criação da imagem com base nos pacotes do repositório Debian do Brasil (–mirror-chroot http://ftp.br.debian.org/debian/), vai também baixar os binários (entenda como pacotes) do repositório do Brasil (–mirror-binary http://ftp.br.debian.org/debian/), vai mostrar um dialogo para você escolher o mapa de teclado (–debconf-frontend dialog), vai instalar seu sistema em Português do Brasil (-l pt_BR), vai configura o hostname da sua imagem para debian-live (–hostname debian-live), usará o fdisk e não o fdisk.gnu (–fdisk fdisk) e por fim vai criar sua imagem com alguns pacotinhos úteis como o Vim e um Browser a sua escolha, eu escolhi o Iceweasel (–packages “xfce4 iceweasel vim bash-completion”).
Pronto, agora ficou uma configuração bacana, mas isto pode ser melhorado, faça o comando “lh config -u”, dito anteriormente, e explore tudo que puder, vale a pena.
Ok, neste ponto nossa configuração para a criação da imagem estará pronta, nos resta criá-la. Para criar a imagem é bem simples, execute o comando a seguir:
lh build
Agora sua imagem começará a ser criada.
Enquanto o processo de criação está sendo concluído, vamos preparar o pendrive para receber a imagem, então espete o pendrive no computador e envie zeros para ele hehe.
dd if=/dev/zero of=/dev/sdc
!!!!!!!!!!!!!!! IMPORTANTE!!!!!!!!!!!!!! O MEU DISPOSITIVO É SDC, O SEU EU NÃO SEI QUAL É, ENTÃO TOME BASTANTE CUIDADO POR QUE O COMANDO ACIMA VAI DESTRUIR TUDO QUE HOUVER NESTE DISPOSITOVO!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Feito isso o seu pendrive estará literalmente zerado e neste ponto a imagem também deverá estar terminando de ser criada ou já tenha terminado, então um arquivo “binary.img” deve ter sido criado no diretório de trabalho.
Contando que tudo aí pra cima deu certo, basta agora você usar o próprio dd para enviar a imagem para o pendrive, assim:
dd if=binary.img of=/dev/sdc
Ao término deste comando seu pendrive será um Debian Squeeze Live Pendrive
.
O que falta para eu descobrir:
A imagem gerada tem cerca de 300MB, e se o pendrive for de 2GB eu terei cerca de 1,5GB inutilizado.
Se eu particionar o pendrive e tentar colocar minha imagem lá, eu vou ter problemas, e não vou conseguir bootar já que não existirá um bootloader no setor inicial do pendrive.
Então resta saber como aproveitar o resto do espaço do pendrive…. mas eu nem pesquisei ainda.
Lembre-se também que seu Live Pendrive será executado em memória, e você até poderá instalar um monte de coisa nele, mas no próximo boot tudo estará como era no inicio.
Bom, fica ai a dica que é, no meu ponto de vista, muito útil.
