Instalando Phantom em Diversas Modalidades

O Phantom é prático por ejetar o CD após a carga do sistema, mas há outras formas de iniciar o Phantom além do CD/DVD. Esse é um pequeno howto para orientar na construção de um boot do Phantom via dispositivos móveis (HDs externos e pendrives), instalação do Phantom para dual boot com GrUB e boot via rede, apenas ligando o PC (via PXE).

Por fim, para aqueles que não estão habituados à configuração de servidores Linux, será descrito um procedimento para a configuração dos serviços necessários para um servidor com servidor DHCP, servidor de boot e servidor de arquivos - esse será o ``srvimg''. O sistema operacional Linux pode ser qualquer distribuição, porém esse tutorial é baseado em OpenSuSE 10.2.


Contents

1. Phantom via pendrive ou HD externo

Para instalar o Phantom em um pendrive, será necessário um sistema Linux instalado em um PC. Como dependência, deve-ser possuir o pacote syslinux instalado (provavelmente está na mídia da própria distribuição).

Os arquivos necessários são apenas o kernel, initrd e o arquivo do gerenciador de boot, contidos no diretório ``boot'' e ``phantom'', dentro do arquivo ISO (ou se já tiver gravado em CD/DVD, na pasta ``boot'' e ``phantom'' da mídia).


1.1 Apanhando o kernel, isolinux.cfg e initrd do arquivo .ISO

Se a versão do phantom a ser instalada estiver em mídia CD/DVD, basta copiá-lo do diretório ``boot'' e ``phantom'', na raiz da mídia, porém se estiver no arquivo.iso, o procedimento acrescerá alguns passos. Inicialmente, loga-se como root no nível de diretório que está o arquivo .iso. Para esse exemplo, o arquivo se chamará phantom-0.6.4.4.iso.gz.

O arquivo disponível para download está gzipado, portanto o primeiro passo é a extração do arquivo.iso:

gzip -d phantom-0.6.4.4.iso.gz

Terminada a descompressão, segue-se para a montagem do arquivo em um diretório qualquer. No exemplo, ``/mnt'':

mount -o loop phantom-0.6.4.4.iso /mnt

Agora basta copiar os arquivos para ``~/root/'':

cp /mnt/cdrom/{isolinu*,boot/vmlin*,boot/initrd*} ~/root/

1.2 Preparando o pendrive

Para a instalação no pendrive, deve-se obedecer alguns requisitos, pois haverá a necessidade de instalar um gerenciador de boot no pendrive - no caso, o syslinux.

Deve-se criar como sendo a primeira, uma partição de aproximadamente 20MB, do tipo FAT16 e a partição deve ser ativa. Pode-se ter outras partições no pendrive, mas a partição de boot deve obrigatoriamente ser a primeira. Para iniciar uma formatação no pendrive (supondo que nada há que não possa ser perdido), fazendo primeiro a descoberta do dispositivo, deve-ser monitorar o log do sistema antes de ``espetar'' o pendrive no computador:

tail -f /var/log/messages

Ao ``espetar'' o pendrive, aparecerá algo como:

Apr 29 15:47:25 debian kernel: scsi6 : SCSI emulation for USB Mass Storage devices

Apr 29 15:47:30 debian kernel: Vendor: Model: USB Flash Memory Rev: 5.00

Apr 29 15:47:30 debian kernel: Type: Direct-Access ANSI SCSI revision: 00

Apr 29 15:47:30 debian kernel: SCSI device sdc: 8058880 512-byte hdwr sectors (4126 MB)

Apr 29 15:47:30 debian kernel: sdc: Write Protect is off

Apr 29 15:47:30 debian kernel: SCSI device sdc: 8058880 512-byte hdwr sectors (4126 MB)

Apr 29 15:47:30 debian kernel: sdc: Write Protect is off

Apr 29 15:47:30 debian kernel: sdc: sdc1

Apr 29 15:47:30 debian kernel: sd 6:0:0:0: Attached scsi removable disk sdc

Apr 29 15:47:30 debian kernel: sd 6:0:0:0: Attached scsi generic sg3 type 0

Note a linha: Apr 29 15:47:30 debian kernel: SCSI device sdc: 8058880 512-byte hdwr sectors (4126 MB)

Está indicando o dispositivo e o tamanho; /dev/sdc com o tamanho de 4GB, portanto, chegou a hora de formatá-lo. A maneira mais rápida é zerando a MBR do dispositivo:

dd if=/dev/zero of=/dev/sdc count=1 bs=512

1+0 records in

1+0 records out

512 bytes (512 B) copied, 0,00424309 seconds, 121 kB/s

Agora, recriar as partições, exemplificando apenas a primeira:

fdisk /dev/sdc

O dispositivo não contém nem uma tabela de partições DOS válida nem um rótulo de disco Sun, OSF ou SGI

Criando um novo rótulo de disco DOS. As alterações permanecerão

somente em memória até que você decida gravá-las. Após isto, é claro,

o conteúdo anterior não poderá mais ser recuperado.

Aviso: a opção inválida 0x0000 da tabela de partições 4 será corrigida por gravação (w)

Comando (m para ajuda):

Aperte a tecla ``n'' para criar uma partição:

Comando - ação

e estendida

p partição primária (1-4)

Número da partição (1-4): 1

Primeiro cilindro (1-1023, default 1):

Using default value 1

Último cilindro ou +tamanho ou +tamanho M ou +tamanho K (1-1023, default 1023): +32M

Criada a partição de 32MB. Agora muda-se o tipo de partição ativando-a posteriormente. As teclas são ``t'' para tipo e ``6'' como tipo. A tecla ``a'' para ativar:

Comando (m para ajuda): t

Selected partition 1

Código hexadecimal (digite L para listar os códigos): 6

O tipo da partição 1 foi alterado para 6 (FAT16)

Comando (m para ajuda): a

Número da partição (1-4): 1

Para confirmar, ``p'':

Comando (m para ajuda): p

Disk /dev/sdc: 4126 MB, 4126146560 bytes

127 heads, 62 sectors/track, 1023 cylinders

Units = cilindros of 7874 * 512 = 4031488 bytes

Dispositivo Boot Start End Blocks Id System

/dev/sdc1 * 1 9 35402 6 FAT16

O asterisco indica que a partição é ativa, bastando então salvar as alterações após criar as demais partições. O comum é apenas uma partição em FAT32, portanto, a segunda partição seria criada com a sequência de teclas:n, p, 2, enter, enter, t, 2, c, w.

Deve-se formatá-las, pois nesse primeiro passo apenas a tabela de partições foi criada para poder receber um sistema de arquivos:

mkfs.msdos (ou mkfs.vfat) -F16 /dev/sdc1

mkfs.msdos (ou mkfs.vfat) -F32 /dev/sdc2

Copiando os arquivos para o pendrive

Se o sistema operacional não montá-lo automaticamente, será necessário interagir:

mount /dev/sdc1 /mnt

Os arquivos copiados do phantom-0.6.4.4.iso devem ser agora copiados para /mnt:

cp /root/{isolin*,vmlin*,initrd*} /mnt/

O arquivo isolinux.cfg deve ser renomeado para syslinux.cfg:

cd /mnt

mv isolinux.cfg syslinux.cfg

E por fim, editado. Basta remover ``/boot/'' da frente do kernel (vmlinuz) e initrd (initrd.gz).

1.3 Instalando o gerenciador de boot

Para instalar o gerenciador de boot, basta chamar o syslinux com o parâmetro ``-s'', apontando para o dispositivo e partição:

syslinux -s /dev/sdc1

Aguarde alguns segundos antes de remover o pendrive e estará concluido o processo.

O processo para instalar o Phantom em um HD externo é o mesmo.

2. Instalando Phantom em Dual Boot

Instalar o Phantom em dual boot é um processo curto.

2.1 Dual boot com Linux

Seguindo conforme descrito na sessão 1.1, exceto o arquivo isolinux.cfg, basta copiar o kernel e o initrd para /boot/phantom:

cp /root/vmlinuz /boot/phantom && cp /root/initrd.gz /boot/phantom.gz

Editando o arquivo /boot/grub/menu.lst e insirindo as seguintes linhas (terminando a configuração com a reinstalação do gerenciador de boot):

title Phantom

kernel /boot/phantom

initrd /boot/phantom.gz

A reinstalação do grub (supondo o primeiro HD SATA):

grub-install /dev/sda

2.2 Dual boot com Windows

O boot dual com Windows é uma dica enviada por Linderval Alves (meu muito obrigado), que pesquisou e encontrou algo em http://www.dicas-l.com.br/dicas-l/20050310.php e descreveu o processo. A única modificação que fiz, claro, foi o diretório que armazenará o sistema que, ao invés de knoppix agora é phantom:

1. Crie no c:\ uma pasta chamada phantom, copie tudo da pasta Phantom e isolinux do cd para ela.

2. Crie no c:\ uma pasta chamada boot, entre no site: http://www.geocities.com/lode_leroy/grubinstall/, baixe ``binary of the installer + the GRUB'' e o ``patch for NTFS support for the GRUB'' e copie para a pasta c:\boot.

3. Entre no na pasta c:\boot e crie o arquivo menu.lst

Dentro digitei:

default 0

fallback 1

timeout 30

title Phantom

root (hd0,0)

kernel /phantom/vmlinuz

initrd /phantom/initrd.gz

boot

4. Entre no prompt do DOS e entre na pasta c:\boot

Digite: grubinstall -d (hd0,0) -1 C:\boot\stage1 -2 C:\boot\stage2

5. Abra o arquivo c:\boot.ini e acrescente no final c:\boot\stage1="Phantom"

6. Reinicie o computador e teste.

Esse modelo pressupõe que o disco é o primeiro (sata ou IDE) e a partição também é a primeira. O boot.ini é um arquivo oculto attribado em c:\. Para saber os atributos contidos nele, abra o prompt do DOS (estou dando dica de windows???):

cd \

attrib

Isso mostrará todos os atributos de todos os arquivos.

Para desativá-los:

attrib -xxx, ond ``x'' representa os atributos que aparecem ao lado do arquivo. Não esqueça de reatribuir seus valores após a modificação no arquivo, trocando o sinal de menos pelo sinal de mais.

Pode parecer estranho o Phantom ficar na mesma partição do Windows, porém após o boot o Phantom estará inteiramente na memória e assim o disco estará livre para qualquer alteração. Claro, é bom que na imagem de backup já esteja esse boot duplo pronto para não ter que repetir o processo.

3. Boot do Phantom via rede

Para instalar um servidor de boot, é preciso uma máquina rodando Linux e preferencialmente rodando o (ou um) servidor DHCP, afim de centralizar as configurações. Também será necessário possuir o syslinux instalado e o servidor TFTP (Trivial File Transfer Protocol).

3.1 Configurando o servidor TFTP

No caso do OpenSuSE10.2, o diretório /tftpboot é criado automaticamente ao iniciar o servidor pelo Yast. Se instalado posteriormente, o syslinux se encarregará de copiar o arquivo, mas todavia, é necessário fazer uma cópia do pxelinux.0:

find / -name pxelinux.0 -exec cp {} /tftpboot/ \;

mkdir /tftpboot/pxelinux.cfg

cd /tftpboot/pxelinux.cfg

Neste nível de diretório deve-se criar um arquivo chamado default, que servirá para qualquer máquina com suporte a boot via PXE. O arquivo default deverá conter os seguintes parâmetros:

default graphic

timeout 100

label graphic

kernel /vmlinuz

append initrd=initrd.gz max_loop=16 rw quiet bootmode=graphic acp1=off vga=0x314

Caso se queira disponibilizar várias versões, pode-se criar o diretório /tftpboot/0644 e copiar os arquivos vmlinuz e initrd.gz dessa versão para o diretório, indicando posteriormente no arquivo default:

kernel /0644/vmlinuz

append initrd=/0644/initrd.gz...

3.2 Configurando o servidor DHCP

Existem indefinidas possibilidades de configuração do servidor DHCP, por isso esse exemplo deve ser observado quanto à compatibilidade com uma rede existente. Algumas empresas possuem um servidor Phantom dedicado, onde máquinas são ligadas a essa rede para restauração em massa. Existe também um modelo usado em callcenter, onde o servidor é ligado à rede do callcenter em dia ou horário que não haja expediente. O servidor DHCP dessa rede é parado, portanto assume-se o servidor Phantom (srvimg) como servidor DHCP da rede.

Tendo instalado o servidor DHCP no srvimg (que é o nome padrão consultado pelo phantom em sua busca automática), deve-se criar o seguinte arquivo:

/etc/dhcpd.conf

E seu conteúdo:

allow booting;

allow bootp;

option damain-name ``phantom'';

option routers 10.0.0.1;

default-lease-time 14400;

ddns-update-style none;

subnet 10.0.0.0 netmask 255.255.0.0 {

   range 10.0.0.2 10.0.0.254;

   default-lease-time  14400;

   max-lease-time   172800;

   next-server     10.0.0.1;

   filename   /pxelinux.0'';

}

Após isso, deve-se reiniciar o servidor dhcp.

3.3 Como iniciar o boot do computador cliente

Algumas máquinas (normalmente as mais antigas) não possuem boot por PXE, portanto se torna inútil a configuração desse tipo de serviço para um parque de máquinas antigas.

As máquinas que possuem suporte a PXE variam a habilitação desse serviço na BIOS. Algumas máquinas tem a opção ``Boot from network device'', outras, em ``Onboard Devices'', a opção ``PXE/on'' junto à habilitação da placa onboard.

Se o PXE estiver ligado mas não for incluso na seqüência de boot, então não haverá o incômodo de esperar o timeout do PXE quando o micro não estiver na rede que possue o boot. Nesse caso, quando houver a necessidade de boot pela rede, basta abrir o menu de boot via tecla de atalho F8 ou F12 e, dependendo da máquina, F2. Procure no manual da placa-mãe em caso de dúvidas.

Se o computador não possuir menu de boot (novamente, nas máquinas mais antigas), então será necessário organizar a ordem de boot na BIOS, priorizando o boot na rede.

4. Configurando o compartilhamento de arquivos

4.1 Configurando diretório em Windows

Para compartilhar em Windows, basta criar um diretório de acesso público chamado ``imagens''. Esse é o padrão para um boot transparente com o Phantom.

4.2 Configurando diretório em Linux

Para compartilhar em Linux, é necessário a instalação do servidor de arquivos SAMBA, utilizado pelo Phantom para fazer a transferência em rede. O uso de SAMBA permite a utilização multi-plataforma do Phantom, uma vez que o protocolo utilizado trabalha em Linux e Windows. Também será necessária a criação de de um diretório chamado ``imagens'' (comumente criado em /mnt/imagens), com acesso público e permissão de leitura e de escrita. Após instalado o servidor SAMBA, os seguintes parâmetros devem ser adicionados:

(/etc/samba/smb.conf)

Na sessão [global]

netbios name = srvimg

No final do arquivo:

[ imagens ]

comment = diretorio de imagens phantom

writeable = yes

browseable = yes

guest only = yes

public = yes

path = /mnt/imagens

Feito isso, salve o arquivo, crie o diretório, mude as permissões e reinicie o SAMBA:

mkdir /mnt/imagens

chmod 777 /mnt/imagens

/etc/init.d/samba stop;/etc/init.d/samba start

O daemon do samba varia de distribuição para distribuição, podendo se chamr smbd, além de que o serviço de resolução de nomes pode ser um serviço a parte, chamado nmbd, necessitando então de um reinício também. Em SuSE, para o acesso livre à partição de imagens, edite /etc/permissions, inserindo uma linha:

/mnt/imagens root:root 777

Agora, ajustando as permissões:

chkstat -set /etc/permissions
Concluída a configuração. Usando o comando testparm, a verificação do arquivo de configuração do samba será executada, possibilitando encontrar qualquer tipo de erro que possa ter ocorrido.

O ideal é finalizar fazendo uma montagem manual do compartilhamento:

mkdir teste

smbmount //srvimg/imagens teste -o guest

Não havendo erros na montagem, basta agora testar leitura e escrita:

cd teste

touch teste

ls

rm -f teste

ls

cd

smbumount teste

Esses são todos os passos para a configuração de um servidor de imagens com Phantom. Erros encontrados nesse howto podem ser enviados para o mail djames.suhanko<em>gmail.com.

About this document ...

Instalando Phantom em Diversas Modalidades

This document was generated using the LaTeX2HTML translator Version 2002-2-1 (1.70)

Copyright © 1993, 1994, 1995, 1996, Nikos Drakos, Computer Based Learning Unit, University of Leeds.
Copyright © 1997, 1998, 1999, Ross Moore, Mathematics Department, Macquarie University, Sydney.

The command line arguments were:
latex2html -no_subdir -split 0 -show_section_numbers phantom_install.tex

The translation was initiated by on 2008-06-17


2008-06-17