Como criar sua própria distribuição Linux em Live-CD/DVD

Depois da volta das discussões em torno de distribuições nacionais, por conta das recentes citações do Big Linux no BR-Linux.org e do fim do Kurumin NG. Achei que seria interessante abordar esse assunto, já que existem várias iniciativas nacionais, em grande parte baseadas na personalização de distribuições já existentes.

Antes de começar é bom avisar que NÃO estou incentivando ninguém a seguir o caminho já traçado por dezenas de distribuições amadoras que vem e vão no cenário nacional que é o de montar um live-cd baseado na distribuição X, Y ou Z trocando o papel de parede e criando alguns scripts manjados, contratar uma hospedagem barata, registrar um domínio ^*-br.org$ e publicar o anúncio e as notícias do recém criado “site da comunidade” no BR-Linux.org.

A criação de uma nova distribuição é valida em situações onde há necessidade de personalização de uma determinada distribuição de Linux para uma grande quantidade de equipamentos, como em empresas que fabricam ou revendem equipamentos, em universidades, escolas, prefeituras, etc.

Então vamos ao que interessa:

O que é uma distribuição?

Uma distribuição de Linux é um apanhado de softwares, organizados de forma a cumprir um determinado objetivo ou atender um público específico que, somados ao kernel (Linux) dão origem a um ambiente passível de ser utilizado por outras pessoas para os mais variados fins. Dentre as distribuições mais conhecidas estão o Debian, Fedora, Ubuntu, SUSE, etc.

Uma distribuição geralmente é composta por um CD/DVD que contem o sistema básico e um conjunto de softwares mais comuns que pode ser extendida posteriormente à sua instalação através do uso de gerenciadores de pacotes que fazem o download e a instalação de softwares da distribuição que ficam em servidores (repositórios) para que o usuário final possa personalizar o seu sistema com os softwares que preferir.

Como criar a minha distribuição personalizada?

O primeiro passo para criar uma distribuição personalizada é escolher uma distribuição que possa servir de base e que conte com ferramentas e uma iniciativa que permita realizar a sua devida personalização, dentre as que contam com esse tipo de recurso é possível citar as seguintes:

Debian

O Debian é sem dúvida a base mais comum para criação de novas distribuições. O projeto conta com uma iniciativa vontada para esse fim que é o Debian Pure Blends, também conhecido como Debian Custom Distributions, que teve o seu nome alterado recentemente na tentativa de esclarecer que as distribuições resultantes continuam sendo sub-conjuntos do Debian e não outra coisa qualquer que seja.

A forma mais fácil de personalizar seu próprio Debian é usando o Simple-CDD que conta com inclusive com um Howto na documentação oficial do Debian. Trata-se de um processo razoavelmente simples e bem documentado, bem parecido com os demais que se seguem.

Os procedimentos descritos acima são para construir um CD de instalação normal do Debian, sem a possibilidade de utilizar o resultado como Live-CD, entretanto, há outra iniciativa do projeto Debian voltada especificamente para a criação de Live-CDs baseados no Debian, denominada Debian Live Project, a qual conta com documentação bastante detalhada e helpers de fácil utilização.

Fedora

No Fedora é dada a denominação de Spin para versões personalizadas do Fedora padrão criadas com o intuito de atender necessidades específicas. Existem dois meios de se criar um Live-CD, sendo a primeira delas através de um software chamado revisor, e a mais bem documentada, e segura, que é usando o livecd-creator.

O processo é bem documentado e simples de entender e seguir.

Dentre as distribuições aqui citadas o Fedora aparentemente é o que mais incentiva essa prática, sendo que a relação oficial de Spins conta inclusive com um feito por brasileiros, que é o BrOffice Spin.

Ubuntu

O Ubuntu também possui documentação sobre como personalizar o seu LiveCD, entretanto, não há uma política específica para divulgação dos projetos derivativos como há nas distribuições anteriormente citadas.

Também não há grandes dificuldades em se realizar o processo, basta seguir a documentação e caso não tenha sucesso, procurar ajuda na comunidade.

Outra forma de se criar uma versão “customizada” do Ubuntu é através do uso do UCK – Ubuntu Customization Kit, software semelhante ao Revisor do Fedora, que permite a criação de um LiveCD personalizado com alguns cliques do mouse.

SUSE

O SUSE conta com um sistema muito interessante de personalização da distribuição para criação de appliances e versões personalizadas do seu Live-CD chamada SUSE Studio. O serviço, que está em estágio Alpha, por enquanto está disponível apenas para convidados, mas promete oferecer formas de criar sua própria versão personalizada do SUSE Linux usando apenas o seu navegador, através do próprio site.

E depois?

O resultado de todos os procedimentos disponíveis nas distribuições citadas é a criação de uma imagem ISO contendo o Live-CD da distribuição, devidamente personalizada, que você acabou de criar. Os repositórios de softwares continuarão sendo os mesmos da distribuição original, a menos que sejam alteradas as configurações do gerenciador de pacotes para que ele use um repositório alternativo.

Creio que existam vários outros meios e também outras distribuições que contem com esse tipo de recurso, mas procurei versar apenas sobre as mais conhecidas. Como pode ser visto nas documentações de cada processo, não se trata de algo extremamente difícil e pode ser usado para diversos fins, sendo inclusive encorajado oficialmente por várias distribuições.

Espero ter sido útil e, só lembrando mais uma vez, não saiam por aí criando novas distribuições sem antes ter um objetivo bem definido. Leiam a documentação do Debian Pure Blends, que apresenta além da visão técnica, uma abordagem filosófica e prática, e sejam pragmáticos. Não re-inventem a roda!

Fiquem a vontade para comentar, reclamar ou sugerir algo. Até a próxima.

Atualizações: 1. Incluídas informações sobre o Debian Live Project; 2. Incluída a citação do Ubuntu Customization Kit.


7 Comments

  1. Rafael disse:

    Creio que isso seja melhor para empresas que querem padronizar todos os computadores.

  2. Nem só de remakes se vive de “fazer” distro Linux. O projeto LFS é realmente uma coleção de tutoriais que permitem ao interessado criar uma distro Linux (além do óbvio e básico, aprender a fundo como o Linux funciona). No meu ponto de vista (quero deixar claro isso) não vejo com bons olhos o uso de sistemas de customização desenvolvido pelas principais distros, como uma opção para se “criar distros novas”. Você não vai estar criando sua própria distro estando preso ao “faça como eu quero para me popularizar” processo de criação de cópias pseudo-modificadas de Linux. Você, fazendo isso, estará simplesmente criando mais uma modalidade da distro atual e estará apenas contribuindo para que a mesma se expanda as suas custas (e você se achando o “rei da cocada preta” por achar que sabe montar sua própria distro, quando na verdade está altamente dependente ao ferramental da “distro “mãe”). “Criar uma distro”, dessa forma, só se for para seu uso. Uma versão customizada para seu uso em seu computador (apenas isso). Se você realmente quer criar uma distro, meta a mão na massa desde o “scratch” e aprenda a fazer a sua. Assim você se livrará da eterna dependência das atuais distros mais famosas 😉 Se algum dia elas pararem de existir, você não ficará na mão. \o/ \o/ \o/

  3. EitaNóis disse:

    Muito tora esse post. Esqueceu de explicar como se faz com o Mandriva. Tem como responder? Vlw, fiote.

  4. Wallacy disse:

    O SUSE usa o Kiwi para montar distros personalizadas… O SUSE studio é só uma junção do Kiwi com o Build Service.

  5. Grobsch disse:

    Faltou citar o principal e MELHOR método de criar distros, usando o linuxlive.

  6. Humberto disse:

    Olá,gostei realmente do teu post! E mais interessante do que criar a roda é saber moldá-la também!

    Procurei pelo Google afora alguma distribuição destinada a desenvolvedores,sabe com java,PHP,Python,Ruby,Grails,Mono e Bancos já instalados como Mysql e PostGreeSQL tudo rodando já em um live-cd só e não encontrei nenhuma que atendesse minhas expectativas..algumas até chegaram perto mas descontinuadas ficaram…

    Conhece alguma nesse sentido? Ainda prefiro procurar essa roda que moldá-la e ando perdendo tempo,não sei como ninguém não já pensou nisso…

  7. Prof. disse:

    Boas.

    Vamos imaginar a seguinte história:

    O Manel queria criar a sua própria versão do linux para usar na pen de 2gb que tinha.
    Foi à net e sacou a última versão do Ubuntu. Instalou o Linux, foi ao painel Sistema, Administração e criou com base no seu ficheiro ISO uma pen linux de 2GB.

    Agora a minha questão é: Depois de ter esta versão do pen linux e de instalar nela alguns extras do firefox, mudar o background do ubuntu e modificar mais algumas coisinhas… Pode-se criar uma cópia de segurança desta pen para tê-la pronta a funcionar outra vez em caso de erro? Digamos criar um ISO dela, ficando com o nosso PenUbuntu actualizável ao nosso gosto?


Deixe uma resposta