A.3. Instalando o Debian GNU/Linux a partir de um sistema Unix/Linux

Esta seção explica como instalar o Debian GNU/Linux a partir de um sistema Unix ou Linux existente, sem usar o sistema de instalação baseado em ncurses, guiado por menus como explicado no resto deste manual. O HOWTO "cross-install" foi pedido por usuários que estavam migrando para o Debian GNU/Linux a partir do Red Hat, Mandrake e SUSE. É assumida nesta seção alguma familiaridade com a linha de comando e navegação no sistema de arquivos. O símbolo $ significa um comando que será executado por um usuário atual do sistema, enquanto # se refere a um comando no chroot da Debian.

Uma vez que tiver o novo sistema Debian configurado para sua preferência, você poderá migrar os dados existentes de usuários (se existirem) para ele, e mantê-lo em pleno funcionamento. Isto é chamada instalação do Debian GNU/Linux "sem parada". Este também é um excelente método para lidar com hardwares que não se comportam de forma amigável com vários tipos de inicialização ou mídias de instalação.

A.3.1. Iniciando

Com as ferramentas atuais de particionamento do *nix, reparticione o disco rígido como necessário, crie pelo menos um sistema de arquivos mais a partição swap. Você precisará de pelo menos 150MB de espaço disponível para a instalação somente da console ou pelo menos 300MB se planeja instalar o X.

Para criar um sistema de arquivo em suas partições. Por exemplo, para criar um sistema de arquivos ext3 na partição /dev/hda6 (esta é nossa partição raíz):


 $ mke2fs -j /dev/hda6

Para criar ao invés deste um sistema de arquivos ext2, não utilize a opção -j.

Inicialize e ative a partição swap (substitua o número da partição pela partição que deseja usar para a Debian):


 $ mkswap /dev/hda5
 $ sync; sync; sync
 $ swapon /dev/hda5

Monte uma partição como /mnt/debinst (o ponto de instalação, que será o dispositivo raíz (/) de seu novo sistema). O ponto de montagem é estritamente arbitrário e será referenciado mais adiante abaixo.


 $ mkdir /mnt/debinst
 $ mount /dev/hda6 /mnt/debinst

A.3.2. Instalar o debootstrap

A ferramenta que o Debian installer utiliza, que é reconhecida como o método oficial de instalar um sistema básico da Debian, é o debootstrap. Ele utiliza o wget, mas depende somente da glibc. Instale o wget caso ele ainda não esteja instalado em seu sistema, então baixe e instale o debootstrap.

Se tiver um sistema baseado em rpm, você poderá usar o alien para converter o pacote .deb do debootstrap em .rpm ou baixar uma versão em http://people.debian.org/~blade/install/debootstrap

Ou poderá usar o seguinte procedimento para instala-lo manualmente. Crie uma pasta de trabalho para extração do pacote .deb:


 $ mkdir work
 $ cd work

O binário debootstrap está localizado nos arquivos da Debian (se assegure de selecionar o arquivo apropriado para sua arquitetura). Baixe o pacote .deb do debootstrap de pool, copie o pacote para o diretório de trabalho, e descompacte os arquivos binários a partir deste. Você precisará ter privilégios de root para instalar estes binários.


 $ ar -xf debootstrap_0.X.X_arch.deb
 $ cd /
 $ zcat < /full-path-to-work/work/data.tar.gz | tar xv

A.3.3. Executar o debootstrap (Conectado em rede)

O debootstrap pode baixar os arquivos necessários diretamente de um repositório quando o executa. Você poderá substitui-lo por qualquer espelho de arquivos da Debian ao invés de usar http.us.debian.org/debian no exemplo do comando abaixo, preferivelmente um mirror mais perto de você em sua rede. A lista de mirrors estão disponíveis a partir de http://www.debian.org/misc/README.mirrors.

Se tiver uma versão do CD woody da Debian GNU/Linux montado em /cdrom, poderá substituir por uma url file ao invés de usar http: file:/cdrom/debian/

Substitua um dos seguintes por ARCH no comando debootstrap: alpha, arm, hppa, i386, ia64, m68k, mips, mipsel, powerpc, s390, or sparc.


 $ /usr/sbin/debootstrap --arch ARCH woody \
     /mnt/debinst http://http.us.debian.org/debian

A.3.4. Executar o debootstrap (Usando o basedebs.tar)

O debootstrap pode usar o arquivo basedebs.tar, caso já tiver uma cópia local. O arquivo basedebs.tar é gerado de vez em quando, assim você somente terá a versão mais recente dos arquivos da Debian caso aponte o debootstrap \ diretamente para um repositório da Debian mostrado na seção anterior.

O arquivo basedebs.tar é encontrado no diretório base-images-current de sua arquitetura Debian, por exemplo: http://http.us.debian.org/debian/dists/woody/main/disks-i386/base-images-current/basedebs.tar

Substitua a sua arquitetura por um dos nomes da lista abaixo no debootstrap command: alpha, arm, hppa, i386, ia64, m68k, mips, mipsel, powerpc, s390, or sparc.

 
$ /usr/sbin/debootstrap --arch ARCH --unpack-tarball \
    /path-to-downloaded/basedebs.tar woody /mnt/debinst

A.3.5. Configurando o Sistema Básico

Agora que você tem um sistema real da Debian em seu disco, execute o comando chroot dentro dele:


 $ chroot /mnt/debinst /bin/bash

A.3.5.1. Montar as Partições

Você precisará criar o arquivo /etc/fstab.


 # editor /etc/fstab

Aqui está um exemplo de como poderá modificar seu arquivo:


# /etc/fstab: arquivo contendo informações estáticas do sistema de arquivos
#
# sist arq.    ponto mont.     tipo    opções                  dump passo
/dev/XXX         /             ext2    defaults                 0    0
/dev/XXX         /boot         ext2    ro,nosuid,nodev          0    2

/dev/XXX         none          swap    sw                       0    0
proc             /proc         proc    defaults                 0    0

/dev/fd0         /mnt/floppy   auto    noauto,rw,sync,user,exec 0    0
/dev/cdrom       /mnt/cdrom    iso9660 noauto,ro,user,exec      0    0

/dev/XXX         /tmp          ext2    rw,nosuid,nodev          0    2
/dev/XXX         /var          ext2    rw,nosuid,nodev          0    2
/dev/XXX         /usr          ext2    rw,nodev                 0    2
/dev/XXX         /home         ext2    rw,nosuid,nodev          0    2

Use o comando mount -a para montar todos os sistemas de arquivos que especificou no seu /etc/fstab, ou para montar os sistemas de arquivos individualmente use:


 # mount /caminho  # e.g.:  mount /usr

Você poderá montar o sistema de arquivos proc múltiplas vezes e em localizações diversas, pois /proc é para customizações. Se não usar o mount -a, tenha certeza de montar o proc antes de continuar:


 # mount -t proc proc /proc

Um usuário da RedHat relatou que em seu sistema isto deve ser feito da seguinte forma:


 # mount -t none proc /proc

A.3.5.2. Configurar o Teclado

Para configurar o teclado:


 # dpkg-reconfigure console-data

A.3.5.3. Configurar a Rede

Para configurar a rede, edite os arquivos /etc/network/interfaces, /etc/resolv.conf, e etc/hostname.


 # editor /etc/network/interfaces 

Existem alguns exemplos simples em /usr/share/doc/ifupdown/examples:

######################################################################
# /etc/network/interfaces -- arquivo d e configuração para o ifup(8), ifdown(8)
# Veja a página de manual interfaces(5) para informações sobre estas 
# opções e ver quais estão disponíveis
######################################################################

# Nós sempre desejamos ter a interface loopback
#
auto lo
iface lo inet loopback

# Para usar o dhcp:
#
# auto eth0
# iface eth0 inet dhcp

# Um exemplo de configuração com IP estático: (o broadcast e gateway são opcionais)
#
# auto eth0
# iface eth0 inet static
#     address 192.168.0.42
#     network 192.168.0.0
#     netmask 255.255.255.0
#     broadcast 192.168.0.255
#     gateway 192.168.0.1

Entre com o servidor de nomes e diretivas de pesquisa no arquivo /etc/resolv.conf:


 # editor /etc/resolv.conf

Um modelo de arquivo /etc/resolv.conf:


# search hqdom.local\000
# nameserver 10.1.1.36
# nameserver 192.168.9.100

Entre com seu nome de host (2 a 63 caracteres):


 # echo DebianHostName > /etc/hostname

Se tiver múltiplas placas de rede, você poderá organizar os nomes na ordem desejada no arquivo /etc/modules. Então durante a inicialização, a placa terá seu nome associado com o nome da interface (eth0, eth1, etc.) que deseja.

A.3.5.4. Configurar o fuso-horário, usuários e o APT

Configure seu fuso-horário, adicione um usuário normal, e selecione as fontes do apt executando


 # /usr/sbin/base-config

A.3.5.5. Configurando seus Locales

Para configurar suas definições de locales para usar o idioma Brasileiro ao invés do Inglês, instale o pacote com suporte a locales e configure-o:


 # apt-get install locales
 # dpkg-reconfigure locales

NOTA: O apt *deve* ser configurado antes. ie. durante a fase do base-config. Antes de usar o locales com conjunto de caracteres que não sejam ASCII ou latin1, por favor consulte o HOWTO apropriado de localização.

A.3.6. Instalar um Kernel

Se deseja tornar o sistema inicializável, você precisará de um kernel do Linux e um gerenciador de inicialização. identifique os kernels pré-empacotados com


 # apt-cache search kernel-image

Então instale o kernel de sua escolha usando seu nome de pacote.


 # apt-get install kernel-image-2.X.X-arch-etc

A.3.7. Configurando seu Gerenciador de Inicialização

Para tornar seu sistema Debian GNU/Linux inicializável, ajuste seu gerenciador de inicialização para carregar o kernel instalado com sua nova partição raíz.

Veja man lilo.conf por instruções de como configurar o gerenciador de partida. Se estiver mantendo o sistema que usou para instalar o Debian, apenas adicione uma entrada para a instalação da Debian em seu lilo.conf. Você também poderá copia-lo para seu novo sistema e edita-lo lá. Após termina a edição, execute o lilo (lembre-se de usar o lilo.conf relativo ao sistema que está sendo instalado).

Aqui está um arquivo /etc/lilo.conf básico como um exemplo:


boot=/dev/hda6
root=/dev/hda6
install=/boot/boot-menu.b
delay=20
lba32
image=/vmlinuz
label=Debian

FIXME: Alguém poderá eventualmente dar um exemplo para esta arquitetura.