simplive: distro live com simplepkg

No artigo do simplepkg, mostrei como criar templates de instalação em distribuições slackware. Para tornar a vida ainda mais simples, que tal construirmos um DVD live com todos os pacotes, templates e eventualmente um pequeno backup do seu sistema para ser usado como disco de restauro de uma máquina?

Para isso, usaremos o SLAX como distribuição live, que por ser baseada em slackware facilita muito o trabalho. Na nossa remasterização do SLAX, copiaremos para a imagem do cd todos os nossos templates de instalação e pacotes usados.

O procedimento abaixo é apenas uma sugestão. A cópia dos arquivos e os locais dos pacotes são apenas sugestões.

1 Baixando o SLAX e seus módulos

Queremos um sistema live que seja pequeno para que nossa mídia tenha espaço para os pacotes. Por isso, baixe o SLAX Frodo, que contém apenas o sistema básico. Você ainda precisará dos módulos:

  • rsync, que pode ser baixado no site do SLAX
  • simplepkg, cujo link se encontra no fim desta matéria

2 Copiando o sistema live

Após baixar o SLAX, vá para sua pasta de trabalho e copie a árvore do iso:

mkdir simplive slax
mount -o loop slax-frodo-5.0.8.iso slax/
cp -R slax/* simplive/
umount slax/ && rmdir slax

Agora temos um sistema SLAX limpo e pronto para personalização.

3 Copiando os módulos

Os módulos que serão carregado quando o live cd for iniciado são armazenados na pasta modules, então mova os módulos que você baixou:

mv {simplepkg,rsync}*mo simplive/modules

4 Criando os repositórios

Copie todos os repositórios que você utiliza para a árvore do simplive. Neste exemplo, deixaremos na pasta distros/ as árvores oficiais e em packages/ os repositórios não-oficiais.

Primeiramente, os pacotes não-oficiais:

cd simplive
mkdir packages distros
rsync -av --exclude=.svn /onde/estao/seus/pacotes/ packages/

Usei o rsync com -exclude=.svn porque no meu caso os pacotes estavam em repositórios do subversion. Você pode usar o comando da sua preferência. Em seguida, copiaremos as distribuições oficiais, cujos pacotes podem ser retirados das respectivas imagens de instalação. Neste exemplo, copiaremos os pacotes oficiais do slackware e do slamd64, considerando que os cds ou imagens de instalação estão montandos em pastas do seu /mnt:

rsync -av /mnt/slamd64-1/ distros/slamd64-10.2-1/
rsync -av /mnt/slamd64-2/ distros/slamd64-10.2-2/
rsync -av /mnt/slackware-1/ distros/slackware-10.2-1/
rsync -av /mnt/slackware-2/ distros/slackware-10.2-2/

5 Configurando o simplepkg

Uma vez copiados todos os repositórios, é preciso adicionar todos os seus templates e configurar as definições de repositórios do simplepkg. Partiremos então da sua pasta atual do simplepkg:

cp -R /etc/simplepkg rootcopy/etc/

Edite então o simplepkg.conf que irá para o cd live. Recomendo usar o seguinte:

# /etc/simplepkg/simplepkg.conf
JAIL_ROOT="/mnt" # where jails are placed
SIMPLARET="simplaret" # package grabber program (can be swaret if you have it installed)
SIMPLARET_CLEAN="1" # clean package cache before installation
SIMPLARET_DELETE_DOWN="1" # clean package cache after the installation
SIMPLARET_UPDATE="1" # issue an simplaret --update before install the jail
SIMPLARET_PURGE_WEEKS="3" # delete packages older than N weeks from the cache
PATCHES_DIR="/var/simplaret/patches" # where patches are placed
DEFAULT_ARCH="i386"
DEFAULT_VERSION="10.2"
STORAGE="/var/simplaret"
PASSIVE_FTP="1"

Não esqueça de ajustar DEFAULT_VERSION e DEFAULT_ARCH de acordo com suas preferências. Em seguida, ajuste o repos.conf de acordo com o esquema de repositórios do live-cd. No nosso caso temos:

# i386
REPOS-i386-10.2="slack.sarava.org%file:///mnt/cdrom/packages/slackware/slackware-10.2/"
REPOS-i386-10.2="slack.sarava.org-noarch%file:///mnt/cdrom/packages/noarch/"
REPOS-i386-10.2="slackware-10.2d1%file:///mnt/cdrom/distros/slackware-10.2-1/"
REPOS-i386-10.2="slackware-10.2d2%file:///mnt/cdrom/distros/slackware-10.2-2/"

# x86_64
REPOS-x86_64-10.2="freerock64%file:///mnt/cdrom/packages/freerock64"
REPOS-x86_64-10.2="slamd64-10.2d1%file:///mnt/cdrom/distros/slamd64-10.2-1/"
REPOS-x86_64-10.2="slamd64-10.2d2%file:///mnt/cdrom/distros/slamd64-10.2-2/"
REPOS-x86_64-10.2="slack.sarava.org%file:///mnt/cdrom/packages/slamd64/slamd64-10.2/"
REPOS-x86_64-10.2="slack.sarava.org-noarch%file:///mnt/cdrom/packages/noarch/"

Como você deve ter observado, não estamos utilizando definições de ROOT, mas apenas de REPOS.

6 Configurações adicionais

Seu simplive está praticamente pronto. Para que ele funcione logo após o boot, temos ainda que ajustar o rc.local da distro:

mkdir -p rootcopy/etc/rc.d
touch rootcopy/etc/rc.d/rc.local
chmod +x rootcopy/etc/rc.d/rc.local

Nesse arquivo, adicione o seguinte:

mkdir /mnt/cdrom
mount /dev/cdrom /mnt/cdrom
simplaret --update

Se você quiser, adicione também seus arquivos pessoais e de backup em alguma pasta do cd, como por exemplo em backups.

7 Remasterizando

Agora falta apenas masterizar nosso live cd. Faremos isso http://slax.linux-live.org/doc_customize.php#modifyisoda maneira do SLAX.

./make_iso.sh /tmp/simplive.iso

8 Usando o simplive

Agora é só queimar um cd ou dvd do seu simplive e começar a brincadeira. Experimente criar um template que reflita exatamente a configuração da sua máquina e tente fazer uma reinstalação numa partição vazia. Assim, o simplive pode ser uma solução definitiva para o problema do backup do seu sistema!

9 Observações

  • Se você for instalar jaulas com muitos pacotes, você precisará ajustar no simplaret.conf o valor STORAGE para uma partição ou pasta que contenha espaço livre suficiente para desempacotamento.
  • Usar um sistema live em 32 bits para instalar aplicativos em 64 pode ocasionar erros nos scripts de instalação de cada pacote, já que o chroot da distro não conseguirá entrar na jaula. Nesse caso, o melhor a fazer é criar um sistema em 64 bits com os scripts do projeto linux-live, que precisam de algumas adaptações para funcionar numa plataforma diferente de i386; se preferir, crie um livecd simples usando uma initrd grande em x86_64 com pacotes básicos do sistema e acesse os demais arquivos montando o cd.

About this document ...

Simplive: distro live com simplepkg

This document was generated using the LaTeX2HTML translator Version 2002-2-1 (1.71)

Copyright © 1993, 1994, 1995, 1996, Nikos Drakos, Computer Based Learning Unit, University of Leeds.
Copyright © 1997, 1998, 1999, Ross Moore, Mathematics Department, Macquarie University, Sydney.

The command line arguments were:
latex2html simplive.tex -nonavigation -notop_navigation -show_section_numbers -split 0

The translation was initiated by on 2007-08-21


2007-08-21
AnexoTamanho
simplepkg_0_4_3.mo76 KB
simplepkg_0_4_7.mo80 KB
simplive.pdf65.28 KB
simplive.tex7.15 KB