Formatando 20 máquinas Windows em 5 horas com um live-CD do Ubuntu

Publicado por Emanoel Julio em 02/09/2008

[ Hits: 28.637 ]

 


Formatando 20 máquinas Windows em 5 horas com um live-CD do Ubuntu



Em meu trabalho constantemente tenho que formatar 20 máquinas de uma só vez para manutenção. Imagine ter que reinstalar o sistema operacional, todos os programas e padronizar o desktop máquina por máquina? Dá um trabalho!!!

Vou apresentar a solução para um problema que encontro constantemente. Vamos imaginar uma lan house onde temos um servidor de arquivos e vinte clientes Windows e que constantemente tenho que formatar estas máquinas.

Obs.: Todas as máquinas clientes devem possuir a mesma configuração.

O primeiro passo é destacar uma das máquinas clientes e formatá-la deixando uma partição livre para fazer um backup do seu sistema operacional, costumo usar 5GB. Após isso instalar todos os drivers e programas necessários, deixando como um modelo para todas as outras máquinas.

Após isso vamos gerar um espelho desse computador para que possamos colocá-lo em todas as outras dezenove máquinas sem ter que ter o mesmo trabalho. Para isso precisaremos de um live-CD do Ubuntu.

Inicie o computador com o live-CD do Ubuntu.

Monte a partição reservada para fazer o backup do Windows. Caso você tenha particionado o HD deixando uma partição estendida de 5GB FAT32 em um HD sata, segue um exemplo de como montá-la:

# mkdir /media/backup
# mount -t vfat /dev/sda5 /media/backup
# mkdir /media/backup/restaura


Agora vamos instalar o Partimage, que será o responsável pela criação do espelho.

Primeiramente devemos ativar todos os repositórios de software em Sistema - Administração - Canais de Software. Dentro do programa ative todos os repositórios. Após isso digite:

# apt-get update
# apt-get install partimage


Se o seu Windows foi instalado na primeira partição do HD e em um HD sata, o comando abaixo funcionará, caso contrário existe um ótimo artigo do Carlos E. Morimoto no site www.guiadohardware.net sobre como usar o partimage.

# dd if=/dev/sda of=/media/backup/restaura/sda.mbr count=1 bs=512
# sfdisk -d /dev/sda > /media/backup/restaura/sda.sf
# partimage -z1 -o -d save /dev/sda1 /media/backup/restaura/winxp.partimage.gz


Vamos criar o script que será responsável pela restauração do nosso sistema nas outras máquinas. Tecle ALT+F2 e digite:

gksu gedit /media/backup/restaura/restaura.sh

Digite o seguinte:

#!/bin/bash
#Script: Restauração de imagem Windows

sudo apt-get install smbfs

#Montando compartilhamento Windows
sudo mkdir /media/servidor
sudo mount -t smbfs //servidor/compartilhamento /media/servidor

#Particionando HD e restaurando a imagem
sudo dd if=/media/servidor/restaura/sda.mbr of=/dev/hda
sudo sfdisk --force /dev/hda < /media/servidor/restaura/sda.sf
sudo apt-get install partimage
sudo partimage restore /dev/sda1 /media/backup/restaura/winxp.partimage.gz
sudo reboot

Criado o espelho e o script, copie a pasta "restaura" para o servidor na pasta compartilhamento, para isso pressione o ALT+F2 e digite:

nautilus smb://servidor/compartilhamento

Agora vamos restaurar nosso espelho nas máquinas clientes. Inicie as máquinas clientes com o mesmo live-CD que foi usado para criar a imagem e acesse o compartilhamento teclando ALT+F2 e digitando:

smb://servidor/compartilhamento

Clique duas vezes no arquivo restaura.sh e clique em "Executar no terminal".

Pronto, agora só precisa esperar o processo terminar e reiniciar o computador.

Considerações finais: Este esquema foi pensado para a formatação de várias máquinas ao mesmo tempo, uma vez que o partimage-server só aceita uma conexão por vez e depende de um servidor Linux.

Espero ter contribuído.

Outras dicas deste autor
Nenhuma dica encontrada.
Leitura recomendada

Documentação

Oracle PL/Web em versão Open Source com PHP e PostgreSQL

Utilizando as chamadas de sistema dup() e dup2()

Mageia 4 - Instalação via Live-DVD

Python 2.7 no CentOS/Red Hat Enterprise 6

  

Comentários
[1] Comentário enviado por boxmga em 02/09/2008 - 14:51h

Caríssimo Emanoel, a idéia é ótima e a iniciativa, louvável, mas você comete graves enganos em sua dica.

O primeiro deles é ignorar que o Windows usa um conjunto de identificadores de segurança (SID) que são gerados com base em números randômicos no momento da instalação da máquina. Ao clonar HDs desta maneira, você está clonando também a SID da instalação e ela não será mais única. Isto é um grande pepino para a instabilidade, segurança e confiabilidade da rede inteira, principalmente se você resolver colocar as máquinas em um domínio.

Outro problema é que para isso funcionar adequadamente, você precisa ter configurações de hardware minimamente compatíveis. Não precisa, por exemplo, que todos os pentes de memória sejam do mesmo modelo, mas se tiver placas de rede diferentes, por exemplo, também vai ter bastante dor de cabeça.

Uma terceira questão que você deve considerar é que está clonando a serial do windows junto, ou seja, usando a mesma serial em mais de uma instalação. Isso não lhe representará grandes problemas legais se você, de fato, tiver licenças para todas as máquinas (e espero que as tenha, já que mencionou que o ambiente se trata de uma LAN house, alvo preferido de fiscalização. Se não tem licenças, porquê não usar linux nas estações?). Porém, mesmo tendo licenças para todas as máquinas e não correndo risco de infringir a legislação de direitos autorais, você terá problemas de suporte com a dona M$, seja no recebimento de atualizações pelo windows update ou mesmo ao contatar suporte telefônico ou via web.

Para todos estes problemas (exceto o de falta de licença), há uma solução: sysprep. É um utilitário da própria M$ que "resela" sua máquina, ou seja, remove todo o conjunto de identificadores (SID) e a chave serial do windows, que serão recriadas (SID) e solicitadas (serial) novamente após o reboot. Algo parecido com o que você vê quando compra máquinas com o windows (licenciado) pré-instalado em regime de OEM.

Então, recomendo vivamente a quem quiser seguir a dica do colega a utilizar o sysprep antes de criar a imagem.

Mais informações:

http://www.microsoft.com/brasil/windowsxp/pro/usando/artigos/sysprep2.mspx

ou

www.google.com.br

[2] Comentário enviado por emanoeljulio em 02/09/2008 - 18:42h

Vivendo e aprendendo.
Boxmga, vc pode ter certeza de que essa critica foi construtiva e não era do meu conhecimento o SID.

Há muito tempo sou leitor e gosto muito do site e quero contribuir para o mesmo. Hoje estava utilizando essa dica e encontrei uma série de erros e coisas em que eu posso melhor para que o processo seja mais agil. Como esse é o meu primeiro texto aqui no VOL deixei passar uma serie de coisas mas pode ter certeza de que estarei melhorando e não terei medo de errar, pq assim como eu não sabia do SID muitos outro tbem não sabe e agora ficarão sabendo.

Vamos as respostas:

1. Com relação ao SID estarei gerando novas imagens com o programa instalado.
2. Com relação a compatibilidade de hardware coloquei a seguinte observação no texto:
3. Com relação ao serial a empresa onde trabalho(Q não é uma LAN, a mesma só foi usada como exemplo) possui a licença para todas as máquinas.

Obs.: Todas as máquinas clientes devem possuir a mesma configuração.

Estou muito grato pela contribuição

[3] Comentário enviado por boxmga em 02/09/2008 - 20:28h

Caríssimo, tenha certeza que a crítica foi construtiva sim. Alias, não tome como crítica, mas sim como uma contribuição.

Creio que você percebeu isso, mas quero deixar claro que quando usei o termo "graves enganos" não foi no sentido de depreciar a iniciativa, de fato louvável, como eu disse, mas no sentido de alertar que problemas, e dos brabos, podem ocorrer com a clonagem sem a alteração das SID.

Quanto ao caso do serial, o problema mais grave, ao meu ver, é a possibilidade da microsoft classificar sua chave como irregular pelo fato dela estar sendo usada para baixar atualizações através do windows update para vários sistemas, caso as atualizações automáticas estejam habilitadas. Francamente, nunca vi um caso destes, mas vá saber o que o tal do wga faz em segundo plano.

E, de fato, eu comi barriga e passei batido por sua menção à compatibilidade de hardware quando li a dica, porém, com o uso do sysprep, a exigência de compatibilidade de hardware é menor, uma vez que além de resetar as SIDs e o serial, o utilitário também força ao reconhecimento do hardware plug n' play.

De todo modo, a dica é muito boa e só careceu de alguns ajustes.

Grande abraço

[4] Comentário enviado por emanoeljulio em 02/09/2008 - 22:41h

Correções
-----------------------------------------------
Vou apresentar a solução para um problema que encontro constantemente. Vamos imaginar uma lan house onde temos um Servidor de arquivos e vinte clientes Windows e que constantemente tenho que formatar estas máquinas.

Obs. Todas as máquinas clientes devem possuir a mesma configuração

O primeiro passo é destacar uma das máquinas clientes e formata-la deixando uma partição livre para fazer um backup do seu sistema operacional, eu costumo usar 5 Gb. Após isso instalar todos os drivers e programas necessários, deixando como um modelo para todas as outras máquinas.

Apos isso vamos gerar um espelho desse computador para que possamos coloca-lo em todas as outras dezenove máquinas sem ter que ter o mesmo trabalho. Para isso precisaremos de um LiveCD do Ubuntu.

Inicie o computador com o LiveCD do Ubuntu

Se o seu Windows foi instalado na primeira partição do hd e em um hd sata o comando abaixo funcionará, caso contrário existe um ótimo artigo do Carlos E. Morimoto no site <a title="Usando o Partimage" href="http://www.guiadohardware.net/tutoriais/usando-partimage/" target="_blank">www.guiadohardware.net</a> sobre como usar o partimage.

# dd if=/dev/sda of=sda.mbr count=1 bs=512
# sfdisk -d /dev/sda > sda.sf

Monte a partição reservada para fazer o backup do Windows. Caso você tenha particionado o HD deixando uma partição extendida de 5 Gb fat32 em um hd sata, segue um exemplo de como monta-la.

# sudo mkdir /media/backup
# sudo mount -t vfat /dev/sda5 /media/backup
# sudo mkdir /media/backup/restaura
# sudo cp sda.mbr sda.sf /media/backup/restaura

Agora vamos instalar o Partimage que será o responsável pela criação do espelho.

Primeiramente devemos ativar todos os repositórios de software em Sistema - Administração - Canais de Software. Dentro do programa ative todos os repositórios. Após isso digite:

# apt-get update
# apt-get install partimage

# partimage -z1 -o -d save /dev/sda1 /media/backup/restaura/winxp.partimage.gz

Vamos criar o script que será responsável pela restauração do nosso sistema nas outras máquinas. Tecle ALT+F2 e digite:

# gksu gedit /media/backup/restaura/restaura.sh

Digite o seguinte:

#!/bin/bash
#Script: Restauração de Imagem Windows

sudo apt-get install smbfs

#Montando compartilhamento Windows
sudo mkdir /media/servidor
sudo mount -t smbfs //servidor/compartilhamento /media/servidor

#Particionando HD e restaurando a imagem
sudo dd if=/media/servidor/restaura/sda.mbr of=/dev/sda
sudo sfdisk --force /dev/sda < /media/servidor/restaura/sda.sf
#Para tornar o processo ainda mais simples instale o partimage a partir da pasta restaura
sudo dpkg -i /media/servidor/restaura/partimage_0.6.4-17_i386.deb
sudo partimage restore -f2 /dev/sda1 /media/servidor/restaura/winxp.partimage.gz


Faça o download do partimage e guarde-o na pasta restaura
http://vocevirtual.com.br/blog/downloads/partimage_0.6.4-17_i386.deb

Criado o espelho e o script, copie a pasta <strong>restaura</strong> para o servidor na pasta compartilhamento, para isso pressione o ALT+F2 e digite:

nautilus smb://servidor/compartilhamento

Agora vamos restaurar nosso espelho nas máquinas clientes. Inicie as máquinas clientes com o mesmo LiveCD que foi usado para criar a imagem e acesse o compartilhamento teclando ALT+F2 e digitando

smb://servidor/compartilhamento

Copie o arquivo restaura.sh para a Área de Trabalho, clique duas vezes no arquivo e em "Executar no terminal".

Pronto agora só precisa esperar o processo terminar e reiniciar o computador.

Você ainda pode criar um PENDRIVE de restauração, para emergência.

Copie a pasta restaura, a que você copiou para o servidor, para o seu PEN com as seguintes alterações no script de restauração:

#!/bin/bash
#Script: Restauração de Imagem Windows

#Particionando HD e restaurando a imagem
sudo sfdisk --force /dev/sda < /media/disk/restaura/sda.sf
#Para tornar o processo ainda mais simples instale o partimage a partir da pasta restaura
sudo dpkg -i /media/disk/restaura/partimage_0.6.4-17_i386.deb
sudo partimage restore /dev/sda1 /media/disk/restaura/winxp.partimage.gz

Considerações finais: Este esquema foi pensado para a formatação de várias máquinas ao mesmo tempo, uma vez que, o partimage-server só aceita uma conexão por vez e depende de um Servidor Linux.

É Extremamente recomendada a instalação do software Sysprep antes de criar a imagem, uma vez que a não instalação implica em uma série de problemas, graves, de segurança. Maiores informações no site http://www.microsoft.com/brasil/windowsxp/pro/usando/artigos/sysprep2.mspx

[5] Comentário enviado por rogeriojlle em 02/09/2008 - 23:52h

Muito legal. ensinou como fazer clonagem "no braço"
Outra dica:
voce também pode usar o Phantom que é um "Live" especificamente pra isso e o boot é vupt, se comparado ao boot do Live Ubuntu (minha distro preferida)
http://www.phantomsystem.com.br/
tenho ele instalado no meu pendrive, pois onde trabalho é um cenário semelhante e as máquinas não possuem drive de CD

[6] Comentário enviado por removido em 06/09/2008 - 09:11h

Só um comentário, com relação às licenças do Windows. Trabalho em uma escola, e temos mais de cem maquinas windows, todas licenciadas. Temos um arquivo de licenças (um txt de cem linhas, putz!!!) e todas as máquinas (Itautec) tem o selinho de Windows Original, cada uma com Serial diferente. Ainda assim, quando precisamos formatar alguma máquina, usamos a mesma serial em todas. A própria Microsoft, em São Paulo, disse que poderíamos fazer isso. Basta ter as licenças, não é preciso usar uma serial diferente em cada máquina. O WGA não chega a esse nível de autenticidade da chave... Nunca tivemos problemas com Windows Update ou com suporte da Microsft.

Emanoel, gostei muito da dica... você não sabe como é comum precisarmos formatar um laboratório de 20 ou 30 máquinas nessa escola... eu já tinha tentado fazer algo parecido antes, mas usando somente o Windows (Server) e não funcionou direito... vou testar essa sua dica na próxima manunteção lá.
Parabéns pelo seu primeiro artigo.

[7] Comentário enviado por jpsanet em 09/10/2008 - 12:17h

Excelentes dicas companheiros! Também trabalho com várias máquinas e LANs distintas e irei testar assim que eu tiver necessidade e/ou oportunidade.
Quanto as licenças do Windows, depende de qual chave de licença foi utilizada durante a instalação do Sistema Operacional, porque até aonde eu sei a Microsoft oferece 2 tipos, que são as licenças individuais por computador (as mais comuns) e a licença de volume. Essa última é utilizada para permitir o uso do mesmo nº serial em vários computadores.

[8] Comentário enviado por portilho em 20/07/2011 - 14:32h

Muito bom o tutorial, mas teria uma maneira de executar o arquivo de restauração sem precisar logar com live cd digamos que direto de um cd atravez de um boot (ex: insere o cd e da o boot pelo cd e ja sai rodando a restauração) isso seria para um usuario mais leigo. para uma emergencia caso o administrador de rede esteva viajando.


[9] Comentário enviado por teamlucas em 27/05/2013 - 09:04h

aonde que eu teria que digitar todos esses comandos?

[10] Comentário enviado por teamlucas em 27/05/2013 - 09:09h

por favor!
seja o mais direto possivel, tenho um projeto de formatar 10 computadores em 1 hora e 20 minutos se puderem me ajudar eu agradeço, so que eu sou um pouco leigo no assusnto, nao muito, mais um pouco, e nao tenho muita pratica com o linux! por favor quem puder me ajudar seria otimo!

[11] Comentário enviado por evaldofreu em 20/01/2021 - 14:36h

Existe uma distribuição chamada Clonezilla. É muito simples, tem menu passo a passo, cria servidor de imagens e é possível inclusive fazer boot PXE.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts