D.3. Instalar Debian GNU/Linux a partir de um sistema Unix/Linux

Esta secção explica como instalar Debian GNU/Linux a partir de um sistema Unix ou Linux existente, sem utilizar o instalador guiado pelo menu como é explicado no resto do manual. Este cross-install HOWTO foi pedido por utilizadores que mudam para Debian GNU/Linux a partir de Red Hat, Mandriva e SUSE. Nesta secção é assumida alguma familiaridade em introduzir comandos *nix e navegar através do sistema de ficheiros. Nesta secção, $ simboliza um comando a ser escrito pelo utilizador do sistema actual, e # refere-se a comandos introduzidos no chroot Debian.

Assim que tiver o novo sistema Debian configurado de acordo com as suas preferências, você pode migrar os dados existentes dos utilizadores (se os tiver) para lá, e continuar a rolar. Isto é portanto uma instalação Debian GNU/Linux com zero paragens. É também uma maneira inteligente de lidar com hardware que de outro modo não se dá bem com os vários media ou tipos de arranque.

Nota

Como isto é principalmente um procedimento manual, você deve ter em conta que tem de fazer muita da configuração básica do próprio sistema, a qual requer mais conhecimentos de Debian e de Linux em geral do que fazer uma instalação normal. Não pode esperar que este procedimento resulte num sistema idêntico ao criado a partir de uma instalação normal. Deve também ter em mente que este procedimento apenas dá os passos básicos para instalar um sistema. Poderão ser necessários passos adicionais de instalação/configuração.

D.3.1. Começar

Com os seus actuais utilitários de particionamento *nix, reparticione o disco rígido conforme necessário, criando pelo menos um sistema de ficheiros e swap. Você necessita cerca de 368MB de espaço disponível para instalação de apenas consola, ou pelo menos cerca de 1452MB se planeia instalar o X (mais se tencionar instalar ambientes de desktop como o GNOME ou o KDE).

De seguida, criar os sistemas de ficheiros nas partições. Por exemplo, para criar um sistema de ficheiros ext3 na partição /dev/hda6 (é a nossa partição raiz no nosso exemplo):

# mke2fs -j /dev/hda6

Em vez disso para criar um sistema de ficheiros ext2, omita -j.

Inicializar e activar a swap (substitua o número da partição pela partição swap Debian que deseja):

# mkswap /dev/hda5
# sync; sync; sync
# swapon /dev/hda5

Monte uma partição como /mnt/debinst (o ponto de instalação, para ser o sistema de ficheiros raiz (/) no seu novo sistema). O nome do ponto de montagem é estritamente arbitrário, é referenciado posteriormente mais abaixo.

# mkdir /mnt/debinst
# mount /dev/hda6 /mnt/debinst

Nota

Se deseja ter partes do sistema de ficheiros (e.g. /usr) montados em partições separadas, você tem de criar e montar manualmente esses directórios antes de proceder para a próxima etapa.

D.3.2. Instalar debootstrap

O utilitário utilizado pelo instalador Debian, e reconhecido como a forma oficial de instalar um sistema base Debian, é o debootstrap. Este utiliza o wget e ar, mas de outra forma depende apenas de /bin/sh e de utilitários Unix/Linux básicos[24]. Instale o wget e ar se não estiverem já no seu sistema actual, depois faça o download e instale o debootstrap.

Ou, pode utilizar o seguinte procedimento para instalá-lo manualmente. Crie um directório de trabalho para extrair lá o .deb:

# mkdir work
# cd work

O binário debootstrap está localizado no arquivo Debian (assegure-se que escolhe o ficheiro adequado para a sua arquitectura). Faça o download do .deb debootstrap a partir do pool, copie o pacote para o directório de trabalho, e extraia dele os ficheiros. Você necessita ter privilégios de root para instalar os ficheiros.

# ar -x debootstrap_0.X.X_all.deb
# cd /
# zcat /full-path-to-work/work/data.tar.gz | tar xv

D.3.3. Corra debootstrap

O debootstrap pode fazer o download dos ficheiros necessários directamente do arquivo quando o executar. Você pode substituir qualquer mirror de arquivo por http.us.debian.org/debian no exemplo do comando abaixo, de preferência um mirror perto da sua rede. Os mirrors estão listados em http://www.debian.org/mirror/list.

Se você tem o CD Debian GNU/Linux wheezy montado em /cdrom, você pode substituir um URL de ficheiro em vez do URL http: file:/cdrom/debian/

Substitute one of the following for ARCH in the debootstrap command: amd64, armel, armhf, i386, ia64, mips, mipsel, powerpc, s390, s390x, or sparc.

# /usr/sbin/debootstrap --arch ARCH wheezy \
     /mnt/debinst http://ftp.us.debian.org/debian

D.3.4. Configurar o Sistema Base

Agora tem um verdadeiro sistema Debian, embora um pouco leve, no disco. Faça chroot para lá:

# LANG=C.UTF-8 chroot /mnt/debinst /bin/bash

Após fazer chroot pode querer configurar a definição do terminal para ser compatível com o sistema base Debian, por exemplo:

# export TERM=xterm-color

D.3.4.1. Criar ficheiros de dispositivos

Nesta altura o /dev/ contém apenas ficheiros de dispositivos muito básicos. Para as próximas etapas da instalação poderão ser necessários ficheiros de dispositivos adicionais. Existem diferentes formas de fazer isto, o método que deve utilizar depende da máquina que está a utilizar para a instalação, ou se pretende utilizar um kernel modular ou não, e se pretende utilizar ficheiros de dispositivos dinâmicos (e.g. utilizando o udev) ou estáticos para o seu novo sistema.

Algumas das opções disponíveis são:

  • instalar o pacote makedev, e criar um conjunto pré-definido de ficheiros de dispositivos estáticos utilizando (após fazer chroot)

    # apt-get install makedev
    # cd /dev
    # MAKEDEV generic
    

  • manualmente criar apenas ficheiros de dispositivos específicos utilizando o MAKEDEV

  • ligar a montagem /dev do seu sistema anfitrião em cima do /dev do sistema alvo; note que os scripts postinst de alguns pacotes podem tentar criar ficheiros de dispositivos, por isso esta opção deve ser utilizada com cuidado

D.3.4.2. Partições a Montar

Você tem de criar /etc/fstab.

# editor /etc/fstab

Aqui está um exemplo que você pode modificar para ser adequado:

# /etc/fstab: informação estática do sistema de ficheiros
#
# file system    mount point   type    options                  dump pass
/dev/XXX         /             ext3    defaults                 0    1
/dev/XXX         /boot         ext3    ro,nosuid,nodev          0    2

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

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

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

Para montar todos os sistemas de ficheiros que tem especificado no /etc/fstab utilize mount -a, ou para montar os sistemas de ficheiros individualmente utilize:

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

Os actuais sistemas Debian têm pontos de montagem para media removível sob /media, mas mantém links simbólicos de compatibilidade em /. Se não utilizou mount -a, assegure-se que monta o proc antes de continuar:

# mount -t proc proc /proc

O comando ls /proc deve agora mostrar um directório não-vazio. Se isto falhar, você pode montar o proc fora da chroot:

# mount -t proc proc /mnt/debinst/proc

D.3.4.3. Configurar o Fuso Horário

Uma opção no ficheiro /etc/default/rcS determina se o sistema irá interpretar o relógio de hardware como estando definido para UTC ou hora local. O seguinte comando permite-lhe escolher o seu fuso horário.

# editor /etc/default/rcS
# dpkg-reconfigure tzdata

D.3.4.4. Configurar a Rede

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

# editor /etc/network/interfaces

Aqui estão alguns exemplos simples retirados de /usr/share/doc/ifupdown/examples:

######################################################################
# /etc/network/interfaces -- ficheiro configuração p/ ifup(8), ifdown(8)
# Veja a manpage interfaces(5) manpage para informação acerca de quais
# opções estão disponíveis.
######################################################################

# Nós queremos sempre o interface loopback.
#
auto lo
iface lo inet loopback

# Para utilizar dhcp:
#
# auto eth0
# iface eth0 inet dhcp

# Exemplo de uma configuração com IP estático: (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

Introduza o(s) seu(s) servidor(es) de nomes e directivas de procura em /etc/resolv.conf:

# editor /etc/resolv.conf

Um simples /etc/resolv.conf de exemplo:

search hqdom.local
nameserver 10.1.1.36
nameserver 192.168.9.100

Escreva o nome da máquina do seu sistema (2 a 63 caracteres):

# echo DebianHostName > /etc/hostname

E um /etc/hosts básico com suporte para IPv6:

127.0.0.1 localhost
127.0.0.1 DebianHostName

# As linhas seguintes são desejáveis para hosts capazes de IPv6
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

Se tiver várias placas de rede, você deve ordenar os nomes dos drivers dos módulos no ficheiro /etc/modules com a ordem desejada. Depois, durante o arranque cada placa será associada com um nome de interface (eth0, eth1, etc.) que você espera.

D.3.4.5. Configurar o Apt

O debootstrap terá criado um /etc/apt/sources.list muito básico que permitirá instalar pacotes adicionais. No entanto, você poderá querer acrescentar algumas fontes adicionais, por exemplo para pacotes de código fonte e actualizações de segurança:

deb-src http://ftp.us.debian.org/debian wheezy main

deb http://security.debian.org/ wheezy/updates main
deb-src http://security.debian.org/ wheezy/updates main

Assegure-se que corre aptitude update depois de ter feito alterações á lista de fontes.

D.3.4.6. Configurar os Locales e o Teclado

Para configurar as suas definições de locale para utilizar outro idioma que não o Inglês, instale o pacote de suporte locales e configure-o:

# aptitude install locales
# dpkg-reconfigure locales

Para configurar o seu teclado (se necessário):

# aptitude install console-setup
# dpkg-reconfigure keyboard-configuration 

Note que o teclado não pode ser definido enquanto está no chroot, mas será configurado após o próximo reboot.

D.3.5. Instalar um Kernel

Se você tenciona arrancar este sistema, você provavelmente quer um kernel Linux e um gestor de arranque. Identifique os kernels pré-compilados disponíveis com:

# apt-cache search linux-image

Depois instale o pacote de kernel da sua escolha utilizando o seu nome de pacote.

# aptitude install linux-image-2.6.32-arch-etc

D.3.6. Configurar o Boot Loader

Para tornar o seu sistema Debian GNU/Linux iniciável, prepare o gestor de arranque para carregar o kernel instalado com a sua nova partição raiz. Note que o debootstrap não instala um gestor de arranque, embora possa utilizar o aptitude dentro do seu chroot Debian para o fazer.

Note que isto assume que foi criado um ficheiro de dispositivo /dev/hda. Existem métodos alternativos para instalar o grub2, mas esses estão fora do âmbito deste apêndice.

Veja man yaboot.conf para instruções acerca de como preparar o bootloader. Se está a manter o sistema que utilizou para instalar, adicione apenas uma entrada para a instalação Debian ao seu yaboot.conf. Você pode também copiá-lo para o seu novo sistema e editá-lo lá. Quando acabar de o editar, chame ybin (lembre-se que vai utilizar yaboot.conf relativo ao sistema de onde você o chamar).

Aqui está um exemplo básico de /etc/yaboot.conf:

boot=/dev/hda2
device=hd:
partition=6
root=/dev/hda6
magicboot=/usr/lib/yaboot/ofboot
timeout=50
image=/vmlinux
label=Debian

Em algumas máquinas, pode precisar de utilizar ide0: em vez de hd:.

D.3.7. Remote access: Installing SSH and setting a password

In case you can login to the system via console, you can skip this section. If the system should be accessible via the network later on, you need to install SSH and set a password for root:

# aptitude install ssh
# passwd

D.3.8. Últimos toques

Como mencionado anteriormente, o sistema instalado será muito básico. Se quiser tornar o sistema um pouco mais maduro, existe um método fácil para instalar todos os pacotes com a prioridade standard:

# tasksel install standard

Claro que, pode também usar simplesmente o aptitude para instalar pacotes individualmente.

Após a instalação irão estar muitos pacotes a que foi feito o download em /var/cache/apt/archives/. Pode libertar algum espaço em disco ao correr:

# aptitude clean



[24] Estes incluem utilitários GNU fundamentais e comandos tais como sed, grep, tar e gzip.