Escolher en qual linguagem de programação desenvolver é comparável a escolha do time de futebol ou até mesmo qual religião seguir. A mesma coisa se aplica em decidir qual sistema operacional utilizar. A partir disto tudo se transforma em uma verdadeira guerra.

Este post é bastante específico, como o próprio título sugere, e surgiu a partir da idéia de aproveitar um hardware obsoleto (processador Via 500Mhz com 256Mb de RAM e um HD que pouco importa) para executar uma aplicação muito específica.

Baseando no foco de desenvolvimento da plataforma Java, foi decidido usar uma versão muito simples do Linux que fosse rápida o suficiente para se enquadrar nos padrões atuais de usabilidade dos sistemas informatizados.

A distribuição escolhida para o experimento foi a Debian em sua versão de codinome Lenny (5.0). O fato de utilizar o Debian é devido a facilidade e simplicidade, sem contar que é a distro “pai” do Ubuntu: o “Windows” dos Linux, mas que possui uma comunidade participativa e produtora muito conteúdo.

Especificamente o arquivo de instalação utilizado foi debian-504-i386-netinst.iso que é uma versão compacta (180Mb) para instalação via rede.

Vamos de deixar de conversa fiada e partir para o que interessa. Instalação passo a passo e ilustrada do Debian Lenny.

Como este processo é experimental foi utilizado o VirtualBox com 2Gb de disco e 256Mb de RAM, o processador ficou com 1 núcleo de 2.4Ghz, valor incomparável com os 500Mhz do hardware que será utilizado. A rede está configurada como bridged adapter e possui um servidor DHCP na rede, desta forma já na instalação o SO reconhece a Internet sem problemas (Figura 1).

Figura 1

Quando iniciar o boot pelo CD-ROM, utilizar a instalação em modo texto (Figura 2).

Figura 2

Selecionar o idioma da instalação e padrão do sistema operacional (Figura 3).

Figura 3

Selecionar o país (Figura 4).

Figura 4

Seleção do layout de teclado (Figura 5).

Figura 5

Informar o nome da máquina (Figura 6).

Figura 6

Informar o nome do domínio (Figura 7). Neste caso não possuimos domínio.

Figura 7

Selecionar fuso horário (Figura 8).

Figura 8

Particionamento de disco (Figura 9). Neste caso será utilizado o disco inteiro e partição única.

Figura 9

Seleção do disco (Figura 10).

Figura 10

Seleção dos pontos de montagem em partições específicas (Figura 11). Neste caso todos os arquivos em uma única partição.

Figura 11

Verificar o particionamento (Figura 12).

Figura 12

Confirmar o particionamento (Figura 13). Depois dessa confirmação não tem mais volta, os dados já foram para o “espaço”.

Figura 13

A partir deste ponto será feita a intalação do sistema básico.

Informar a senha do root (Figura 14) e confirmar na tela seguinte.

Figura 14

Informar nome real do usuário que será criado para tarefas não administrativas (Figura 15).

Figura 15

Informar o nome da conta do usuário não administrativo (Figura 16). Na próxima tela será necessário atribuir e confirmar uma senha para este usuário.

Figura 16

Selecionar localização dos repositórios (Figura 17).

Figura 17

Selecionar o servidor dos repositórios (Figura 18).

Figura 18

Tela de configuração do apt.

Seleção de software (Figura 19). Instalar somente o sistema básico.

Figura 19

Instalação do GRUB (Figura 20).

Figura 20

Concluir a instalação (Figura 21). Não esqueça de remover o disco do driver.

Figura 21

Agora que a instalação foi concluída, iremos iniciar o processo de instalação dos demais softwares necessários. Para edição dos arquivos gosto de utilizar o mcedit, mas caso preferir o vi ou qualque outro, fique a vontade.

Efetue login como root.

  1. Instalar mc (Gerenciador de Arquivos e Editor de Texto).
    # apt-get install mc
  2. Modificar repositórios configurados.
    # mc /etc/apt/sources.list

    Alterações no arquivo de configuração dos repositórios (Figura 22).

    deb http://ftp.debian.org/debian/ lenny main contrib non-free
    deb-src http://ftp.debian.org/debian/ lenny main contrib non-free
    deb http://security.debian.org/ lenny/updates main contrib non-free
    deb-src http://security.debian.org/ lenny/updates main contrib non-free
    deb http://volatile.debian.org/debian-volatile lenny/volatile main contrib non-free
    deb-src http://volatile.debian.org/debian-volatile lenny/volatile main contrib non-free

    Figura 22

  3. Atualizar repositórios.
    # apt-get upgrade
  4. Atualizar sistema operacional.
    # apt-get dist-upgrade
  5. Instalar servidor ssh (Shell Remoto).
    # apt-get install ssh
  6. Instalar sudo (Executar aplicação com poderes administrativos).
    # apt-get install sudo
  7. Instalar xorg (Servidor Gráfico).
    # apt-get install xorg
  8. Instalar mingetty (Login Automático).
    # apt-get install mingetty
  9. Instalar fluxbox (Gerenciador de Janelas).
    # apt-get install fluxbox

    O fluxbox foi escolhido por ser um gerenciador de janelas leve. Dependendo do tipo de aplicação que for executada o gerenciador de janelas torna-se desnecessário.

Terminando de instalar estes softwares é necessário partir para a configuração.

  1. Login automático.
    Atenção: esta operação pode fazer com que seu sistema operacional pare de funcionar, caso seja realizada incorretamente. Muita atenção.

    Edite o arquivo /etc/inittab

    #mcedit /etc/inittab

    Procurar a linha:
    2:23:respawn:/sbin/getty 38400 tty2
    Alterar para:
    2:23:respawn:/sbin/mingetty –autologin usuarioqualquer tty2

    Figura 23

    Atualizar o inittab:

    # init q

  2. Reconfigurar servidor gráfico.Editar xorg.conf.
    #mcedit /etc/X11/xorg.conf

    Section “Device”
    Identifier     “Configured Video Device”
    Driver         “vesa”
    EndSection

    Section “Screen”
    Identifier     “Default Screen”
    Device         “Configured Video Device”
    Monitor        “Configured Monitor”
    DefaultDepth    24
    Option         “NoLogo” “True”
    SubSection     “Display”
    Depth           24
    Modes          “1024×768″ “800×600″ “640×480″
    EndSubSection
    EndSection

  3. Iniciar servidor gráfico automaticamente.Criar ou alterar o aquivo .bash_profile na pasta do usuário e adicionar as seguintes linhas no final do arquivo:
    #mcedit /home/usuario/.bash_profile
    if [ -z "$DISPLAY" ] && [ $(tty) == /dev/tty2 ]; then
    startx
    fi
  4. Configurar aplicações para serem iniciadas com o servidor gráfico.Criar o arquivo .xsession no home do usuário:
    #mcedit /home/usuario/.xsession

    fluxbox &
    xclock
    sudo halt

  5. Permitir o usuário desligar a máquina.Alterar o aquivo /etc/sudores.
    #mcedit /etc/sudores
    usuario ALL=NOPASSWD: /sbin/halt
  6. Alterar o tempo de espera do GRUB.Editar o arquivo /boot/grub/menu.lst
    # mcedit /boot/grub/menu.lst
    Procurar por:

    ## timeout sec
    # Set a timeout, in SEC seconds, before automatically booting the default entry
    # (normally the first entry defined).

    timeout 5

    Alterar o tempo na opção “timeout”, que está em segundos.

  7. Teste FinalReiniciar a máquina:
    #reboot
    O sistema deverá iniciar, logar automaticamente como usuário, iniciar o servidor gráfico e abrir a aplicação xclock.

    Figura 24

    Quando o relógio for fechado a máquina desligará.

Alterando o script de inicialização do servidor X, no lugar do xclock, deverá ser chama a aplicação que se deseja.

Como já informado anteriormente, o fluxbox pode ser desnecessário caso a aplicação não necessite um gerenciador de janelas.

O próximo passo é tentar otimizar a velocidade de inicialização da máquina.

Conto com a colaboração de todos para melhorarmos esse tutorial.