Criando um LiveCD do FreeBSD

Olá pessoal, nesse artigo mostrarei como criar um LiveCD do FreeBSD. O interessante nesse LiveCD é a possibilidade de escrever nos arquivos (temporariamente), o que é muito útil para realizar testes.

[ Hits: 26.061 ]

Por: Thiago Rodines em 18/04/2006


Preparação



No meu trabalho, eu sempre tinha que ficar instalando e desinstalando máquinas para fazer testes. Com isso, perdíamos muito tempo. Então surgiu a idéia de criar um LiveCD com todas as ferramentas que utilizávamos nos testes.

Levando em consideração que você saiba como instalar o FreeBSD, vamos lá:

Faça uma instalação normal em um HD.

Crie um subdiretório chamado livecd na raiz. Lembre-se que o / tem que ter bastante espaço!

Copie todo o seu sistema de arquivos para o diretório /livecd.

# cp -rf / /livecd/

Crie um subdiretório "mdfs" dentro do diretório livecd.

# mkdir /livecd/mdfs

É complicado criar um LiveCD que não precise de áreas de escrita. Com isso, vamos criar essas áreas utilizando o recurso de md (Memory Disks). Para tal, é preciso fazer algumas mudanças dentro do etc (/livecd/etc).

No arquivo /livecd/etc/rc, logo após a linha que contém:

. /etc/rc.subr

adicione e linha:

sh /etc/rc.d/rc.livecd.diskless

Faça todas as alterações necessárias dentro do diretório /livecd/etc (resolv.conf, rc.conf). Após tudo pronto, compacte os diretórios e coloque os arquivos tbz dentro do subdiretório mdfs. Os diretórios que devem ser compactados são o /livecd/etc, /livecd/usr/local/etc, /livecd/var e /livecd/root.

# tar -jcpf var.tbz /livecd/var
# tar -jcpf etc.tbz /livecd/etc
# tar -jcpf usrlocaletc.tbz /livecd/usr/local/etc
# tar -jcpf root.tbz /livecd/root


Este passo é muito importante, pois tais diretórios precisam permissão de escrita e devem ser criados em memória durante o boot, conforme descrito mais abaixo.

Altere agora seu /livecd/etc/fstab deixando-o da seguinte forma:

/dev/acd0   /               cd9660    ro   0   0
proc        /proc           procfs    rw   0   0
/dev/md1    /etc            ufs       rw   0   0
/dev/md2    /usr/local/etc  ufs       rw   0   0
/dev/md3    /var            ufs       rw   0   0
/dev/md4    /root           ufs       rw   0   0

Recompile seu kernel acrescentando as opções:

options CD9660
options ROOTDEVNAME="cd9660:acd0"
device md

Copie seu kernel e todos módulos necessários para o diretório /livecd/boot/kernel.

# cp -rf /boot/kernel/* /livecd/boot/kernel

    Próxima página

Páginas do artigo
   1. Preparação
   2. Memory Disks (MDs)
   3. Queimando o CD bootável
   4. Conclusão
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Sobre o GoblinX 1.3: diferencial e qualidades

Linux, a pirataria de software e a desvalorização do desenvolvedor (parte 2)

Criando pacotes pré-compilados no Gentoo

Uma pequena análise do Gentoo Linux

Processos no Linux

  
Comentários
[1] Comentário enviado por hellnux em 18/04/2006 - 14:19h

Olá throdines,

Muito interessante teu artigo, com certeza um dia testarei remasterizar um FreeBSD, mas para isso devo instala-lo primiero, ainda não mexi em nenhum BSD.

Até.

[2] Comentário enviado por lipse em 19/04/2006 - 11:04h

throdines,

Meus parabéns! Muito bom mesmo. Simples, rápido, era algo assim que eu precisava.

Valeu.

[3] Comentário enviado por ruben_dps em 21/12/2006 - 15:18h

gostaria de saber so se esse live cd vai rodar em todas as cpus ou so com as que tenham as mesmas configurações da que foi criado o live cd?

um abraço

[4] Comentário enviado por throdines em 22/12/2006 - 07:22h

Com certeza Ruben, pode testar que vai funcionar sim. O FreeBSD executa os módulos necessários para o hardware no boot, com isso, vc pode colocar em qualquer hardware, que não vai ter problema nenhum em relação a processador, placa de rede, etc..

Abraços

[5] Comentário enviado por smkbarbosa em 16/05/2009 - 09:36h

Parceiro, esse artigo é muito bom. Tenho que fazer um trabalho sobre sistema embarcado, e deixá-lo como live cd pra mim vai ser melhor porque vou poder usar no dia a dia.....

vlw aí e sucesso

[6] Comentário enviado por wacj27 em 26/06/2012 - 14:58h

Olá pessoas...

Tenho a seguinte situação, tenho um firewall em freebsd. Desenvolvi a interface gráfica do sistema inteira em php em conjunto com os aquivos em texto de configuração. Está funcionando perfeitamente dentro dos propósitos pelos quais resolvi desenvolve-lo. Só que agora, vejo a necessidade de fazer um CD de instalação deste sistema...Existem vários pacotes instalados, como o Mysql, php, redir, vtund, PPP, rrdtool, mrtg, snmp, etc...com tudo que tem direito, sem falar nos arquivos de configuração e tbm, é claro, o kernel.

Minha dúvida agora é como fazer um CD de instalação deste sistema, com tudo incluso e pré instalado, sem ter que ficar instalado isso tudo, toda vêz que eu quiser fazer uma nova instalação, a idéia seria fazer um CD que já deixaria tudo como está o servidor agora, como todos os pacotes instalados e tudo certinho. Seria um LIVECD como o descrito acima, já vi diversas distribuições em Linux que existem aqueles menus pré configurados que o usuário vai informando alguns pré-requisitos de configuração, como os ips das placas de rede, e essas coisas, tipo o IPCOPY... Como seria feito isso no freebsd? Existe esta possibilidade?

Se alguém puder me ajudar!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts