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.
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:
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
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é.