[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Script com dd
From: |
Mateus Caruccio |
Subject: |
Re: [shell-script] Script com dd |
Date: |
Thu, 18 Sep 2003 22:10:35 +0800 |
opa,
utilizabdo o dd diretamente no dispositivo nao tem como fazer, voce vai
pegar sempre o tamanho total do HD/particao. O ideal nessa situacao seria
compactar o sistema de arquivo (e nao o dispositivo, como voce faz). Para fazer
isso eh so usar o tar nas particoes montadas do hda:
$ particoes=$(mount |grep '^/dev/hda'| cut -f3 -d ' ')
$ tar czvf /dev/hdc1/imagem.img $particoes
depois, no recovery basta descompactar a imagem.
caso voce precise da imagem "limpa" (sem tar), pode usar o proprio cp:
$ cp -a $particoes /dev/hdc1/imagem.dir/
depois, no recovery, basta copiar a arvore de volta.
Uma outra solucao, mais hard-core, é criar um arquivo de imagem, montar e
copiar o hda inteiro la pra dentro. assim voce vai ter so um arquivo que pode
ser montado como loopback.
# descobrir quantos MB estao ocupados nos FSs do hda
used=0
for psz in $(df -m | grep '^/dev/hda' | awk '{print $3}')
do
used=$(($used + $psz))
done
used=$(($used + 5)) # margem de erro
echo "Tamanho total usado em hda: $used"
# criar arquivo de imagem
dd if=/dev/zero of=/algum/lugar/fora/do/hda/image.img bs=1024k count=$used
# criar sistema de arquivo na imagem
mke2fs -F /algum/lugar/fora/do/hda/image.img
# montar a imagem
mkdir /algum/lugar/fora/do/hda/image.mnt
mount -o loop /algum/lugar/fora/do/hda/image.img
/algum/lugar/fora/do/hda/image.mnt
# copiar tudo pra imagem
particoes=$(mount |grep '^/dev/hda'| cut -f3 -d ' ')
cp -a $particoes /algum/lugar/fora/do/hda/image.mnt
# desmontar a imagem
umount /algum/lugar/fora/do/hda/image.mnt
# opcionalmente, compactar a imagem
gzip /algum/lugar/fora/do/hda/image.img
acho q isso resolve...
[]s
Mateus Caruccio
----- Original Message -----
From: Fábio Vinicius <address@hidden>
Date: Thu, 18 Sep 2003 10:27:17 -0300
To: "Shell-Script" <address@hidden>
Subject: [shell-script] Script com dd
> Olá Pessoal,
>
> Não sei se poderão me ajudar neste problema..
>
> Estou escrevendo um script para descompactar uma imagem.img automaticamente
> para um disco em uma espécie de Recovery CD, mas o meu problema está na hora
> de criar a imagem...
>
> Para criar a imagem eu uso a seguinte sintaxe: dd if=/dev/hda
> of=/dev/hdc1/imagem.img
> Mas o meu problema é o seguinte: Caso eu tenha uma única partição de 10 GB e
> somente 500 MB de dados nele, o arquivo .img fica enorme... há alguma forma
> de eu ter em meu .img somente os Bytes utilizados?
>
> []´s
> Fábio Vinicius [Pesquisa e desenvolvimento]
> address@hidden
> IBRACOMP - Indústria e Comércio Ltda.
> +55 11 5041+5051
>
>
>
>
> ---------------------------------------------------------------------
> Esta lista não admite a abordagem de outras liguagens de programação, como
> perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio
> aviso.
> ---------------------------------------------------------------------
> Sair da lista: address@hidden
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em
> http://www.listasdiscussao.cjb.net
> ---------------------------------------------------------------------
>
>
> Seu uso do Yahoo! Grupos é sujeito às regras descritas em:
> http://br.yahoo.com/info/utos.html
>
>
# ########################################################
# Mateus de Oliveira Caruccio <caruccio at operamail.com>
# Linux User #183552 - UIN #37364320
# Vim, vi e matei o Emacs !
--
___________________________________________________
OperaMail free e-mail - http://www.operamail.com
OperaMail Premium - 28MB, POP3, more! US$29.99/year
Powered by Outblaze
- Re: [shell-script] Script com dd,
Mateus Caruccio <=