Changes between Initial Version and Version 1 of livecd/gerar


Ignore:
Timestamp:
07/24/07 13:58:12 (17 years ago)
Author:
trac
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • livecd/gerar

    v1 v1  
     1 
     2= Como gerar uma imagem do "Live-cd Expresso" = 
     3 
     4A imagem do cd é gerada é feito pelo script do slax disponível em http://www.linux-live.org/. Para gerar uma imagem de um live cd é preciso ter um sistema pré-instalado que será a imagem do ambiente executado no live-cd. Como é preciso ter uma imagem de forma manuseável, o ideal é ter um sistema de arquivos dentro de um arquivo. Assim não precisa ter um particionamento. O processo para criar este arquivo é: 
     5 
     6{{{ 
     7$ dd of=livecd.iso if=/dev/zero count=4G bs=1k # Cria um arquivo de 4 gB cheio de zeros 
     8$ mkfs.xfs livecd.iso # Formata o arquivo 
     9}}} 
     10 
     11* Montar o sistema de arquivos 
     12{{{ 
     13# mkdir /media/loop # Criar uma pasta onde iremos montar a imagem 
     14# mount livecd.iso /media/loop -o loop -o rw  # Por sua vez montar o sistema de arquivos 
     15}}} 
     16* Agora é preciso instalar o sistema linux no arquivo, aqui copiaremos todo sistema de arquivos do sistema para o arquivo 
     17{{{ 
     18# cp -rpva /bin /boot /usr /lib /etc /home /var /sbin /sys /media/loop 
     19}}} 
     20Apartir desse momento temos um livecd.iso que contém o ambiente do livecd. Essa imagem livecd.iso foi criada para personalizar continuamente a imagem. Para modifica-la e usá-la é só montar ela em /media/loop por exemplo e executar: 
     21{{{ 
     22# chroot /media/loop 
     23# su - 
     24# mount /proc (opcional caso seja necessário) 
     25}}} 
     26Para usar programas gráficos não execute (nem ao menos tente executar) o X dentro do chroot, porque ele as vezes causa reboot da máquina e causa inconsistência no sistema de arquivos! Um método bom para isso é: 
     27Na sua distro (que não está no chroot) execute: 
     28{{{ 
     29$ Xnest :1 -ac 
     30}}} 
     31no chroot do live execute: 
     32{{{ 
     33# export DISPLAY=localhost:1.0 
     34}}} 
     35Daí todo programa gráfico é mostrado numa janela. 
     36 
     37O Kernel da imagem deve ter suporte ao squashfs e aufs. Por isso re-compilei o 2.6.20 vanila, com splashscreen. Mas poderia ser usado qualquer outro desde que tenha esses suportes. (por conta disso na minha imagem a base o dpkg relacionado ao linux-image está "acreditando" que existe kernel do debian, mas indiferentemente isso não altera nada) 
     38 
     39Dentro da imagem que eu criei tem o script do linux-live, para finalmente gerar um cd bastar executar: 
     40{{{ 
     41# ./build 
     42}}} 
     43Este build vai gerar um .lzm para cada diretório do /. Esses lzm serão montados no boot via squashfs. Depois execute: 
     44 
     45Para criar uma imagem iso 
     46{{{ 
     47# /tmp/live_data_XXXX/expresso/make_iso.sh 
     48}}} 
     49Onde XXXX vai ser um número aleatório gerado pelo script. O resultado será um /tmp/expresso.iso. 
     50Esse arquivo pode ser gravado num cd e usado. 
     51 
     52Ou então: 
     53{{{ 
     54# cp -r /tmp/live_data_XXXX /media/usbdisk 
     55# /media/usbdisk/boot/bootinst.sh 
     56}}} 
     57Para criar um dispositivo usb ou qualquer outro disco bootável. 
     58 
     59Outras considerações: 
     60Existe um arquivo que tem configurações da imagem. Esse arquivo é "/tmp/linux-live-6.0.7/.config" 
     61Essa configuração abaixo é interessante para não precisar refazer todo o live-cd. 
     62{{{ 
     63... 
     64# list of directories which will be modularized 
     65MKMOD="bin etc home lib lib64 opt usr root sbin var php_sessions" 
     66}}} 
     67Quando uma alteração foi feita (só no /etc por exemplo). Deixe essa variável com somente o etc. Daí pegue os arquivos .lzm gerados anteriormente de outras compilaçoes.