segunda-feira, 20 de abril de 2009

Debootstrap, como eu tenho instalado meu sistema a partir de outro *nix.

Basicamente o texto citado pelas referencias a baixo e algumas inserções minhas.

"fonte: http://www.debian.org/releases/stable/hppa/apds03.html.pt 19/11/2008
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, Mandrake 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.
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 350MB de espaço disponível para instalação de apenas consola, ou pelo menos cerca de 1GB 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[19]. 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_arch.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/misc/README.mirrors.

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

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

# /usr/sbin/debootstrap --arch ARCH etch \
/mnt/debinst http://ftp.us.debian.org/debian
(a linha que eu uso tende a ser esta # debootstrap --arch i386 sid \
/mnt/debinst http://ftp.br.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 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. 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áctica 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 /mnt/floppy auto noauto,rw,sync,user,exec 0 0
/dev/cdrom /mnt/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
(Nesse ponto costumo montar como neste post.)

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.2. 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
# tzconfig

D.3.4.3. 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) 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\000
nameserver 10.1.1.36
nameserver 192.168.9.100

Escreva o hostname 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 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.4. Configurar o Apt

O debootstrap terá criado um /etc/apt/sources.list muito básico que lhe permitirá instalar pacotes adicionais. No entanto, vocẽ pode 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 etch main

deb http://security.debian.org/ etch/updates main

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

Assegure-se que corre aptitude update depois de fazer alterações á lista de fontes.
D.3.4.5. 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-data
# dpkg-reconfigure console-data

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

Se você tenciona utilizar um kernel pré-empacotado, pode querer criar o ficheiro de configuração /etc/kernel-img-conf antes de o fazer. Aqui está um ficheiro de exemplo:

# Kernel image management overrides
# See kernel-img.conf(5) for details
do_symlinks = yes
relative_links = yes
do_bootloader = yes
do_bootfloppy = no
do_initrd = yes

link_in_boot = no

Para informação detalhada acerca deste ficheiro e das várias opções, consulte a sua página do manual que está disponível após instalar o pacote kernel-package. Nós recomendamos que verifique se os valores são apropriados para o seu sistema.

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

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

Se não criar um /etc/kernel-img.conf antes de instalar um kernel pré-empacotado, poder-lhe-ão ser colocadas algumas questões durante a sua instalação que se referem a isso.
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.
D.3.7. Ú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"

Nenhum comentário:

Postar um comentário