Autor Tópico: Servidor montado... e agora para zipar?  (Lida 4647 vezes)

Offline jdn76

  • Usuário Ubuntu
  • *
  • Mensagens: 114
    • Ver perfil
Servidor montado... e agora para zipar?
« Online: 13 de Janeiro de 2009, 19:38 »
Olá instalei um servidor ubuntu 8.04 lts, baseado mais ou menos nesse tutorial:

http://www.howtoforge.com/ubuntu-home-fileserver


para uso em casa. A questão é:

como eu zipo no formato zip mesmo, vários arquivos, pastas em um unico arquivo?
ex: /home/usuario/arquivos

no caso queria comprimir a pasta arquivos e gravar na partição /backup.

Como fazer isso?

Já tentei fazer mas sem sucesso.


Agradeço vossa ajuda.

Offline felipeborges

  • Usuário Ubuntu
  • *
  • Mensagens: 651
    • Ver perfil
    • felipe@borges:~# Liberdade não tem Preço!
Re: Servidor montado... e agora para zipar?
« Resposta #1 Online: 13 de Janeiro de 2009, 21:25 »
Meu blog sobre GNU/Linux
Debian Lenny e Gentoo.

Offline Felix

  • Equipe Ubuntu
  • Usuário Ubuntu
  • *****
  • Mensagens: 3.068
    • Ver perfil
    • Alexsandro Felix
Re: Servidor montado... e agora para zipar?
« Resposta #2 Online: 13 de Janeiro de 2009, 21:30 »
Já que você instalou um servidor e deseja compactar arquivos, pode usar os formatos tar.gz ou tar.bz2 já do linux mesmo, sem precisar instalar nenhum outro programa adicional, segue abaixo uma 'breve' explicação:

Usuários windows estão acostumados com interfaces gráficas e dois programas que são dominantes na área de compactação são: winzip e winrar, então quando chegam ao Linux deparam-se com arquivos em formato .tar.gz e tar.bz2 para intalar algum programa ficam meio que perdidos (eu fiquei por muito tempo assim), claro que pela interface gráfica podemos dar 2 cliques e descompactar os arquivos normalmente na maioria das distribuições, mas e pelo modo texto?

Ao se deparar com um arquivo em formato .tar.gz utilize o seguinte comando:

Citar
   tar -zxvf nomedoarquivo.tar.gz

Se a extensão for .tar.bz2 só um detalhe mudará:

Citar
   tar -jxvf nomedoarquivo.tar.bz2

Prestando atenção somente substituimos a letra “z” (usada para arquivos tar.gz) por “j” (para arquivos tar.bz2). As outras letras dos parâmetros tem o seguinte significado:

    x - vem de extract - então estamos dizendo que o comando irá extrair o conteúdo do arquivo;

    v - verbose;

    f - file - para indicação de arquivo; (Muito bem corrigido pelo amigo Bruno através dos comentários)

Caso queiram compactar arquivos utilizando o tar, basta substituir a letra “x” de extract por “c” de “create”, ficando os comandos dessa forma:

Citar
   tar -zcvf arquivoasercriado.tar.gz /caminho/de/origem/*

ou

Citar
   tar -jcvf arquivoasercriado.tar.bz2 /caminho/de/origem/*

fonte

Offline jdn76

  • Usuário Ubuntu
  • *
  • Mensagens: 114
    • Ver perfil
Re: Servidor montado... e agora para zipar?
« Resposta #3 Online: 13 de Janeiro de 2009, 22:43 »
Olá, obrigado pelas respostas. Pelo que pude constatar ao zipar em ZIP ele comprime e abre direto no windows, porém ele perde as propriedades de palavras acentuadas, enquanto no tar.gz ele não perde quando se comprime e depois volta a descomprimir.
Portanto, vou optar pelo tar.gz. A questão é:

como comprimo a pasta arquivos em tar.gz que está em /home/usuario/arquivos e que esse arquivo vá direto para o HD secundário no PC no qual dei partição /backup?


Grato pela ajuda!

Offline Felix

  • Equipe Ubuntu
  • Usuário Ubuntu
  • *****
  • Mensagens: 3.068
    • Ver perfil
    • Alexsandro Felix
Re: Servidor montado... e agora para zipar?
« Resposta #4 Online: 13 de Janeiro de 2009, 22:47 »
mais ou meno assim:

tar -zcvf /backup/arquivoasercriado.tar.gz /home/usuario/arquivos/*

Offline jdn76

  • Usuário Ubuntu
  • *
  • Mensagens: 114
    • Ver perfil
Re: Servidor montado... e agora para zipar?
« Resposta #5 Online: 14 de Janeiro de 2009, 08:58 »
Olá! Blz... deu certo o comando que vc deu... foi direto para o /backup em formato tar.gz

Agora outra questão, sobre o agendamento, sei que tem que ir em crontab -e, mas já andei pesquisando e me parece um pouco confuso... no caso para agendar a tarefa:

tar -zcvf /backup/arquivoasercriado.tar.gz /home/usuario/arquivos/*

no cron, para realizar todos os dias, 1h da manhã como teria que ficar o comando no crontab?


Desde já grato!

Offline Felix

  • Equipe Ubuntu
  • Usuário Ubuntu
  • *****
  • Mensagens: 3.068
    • Ver perfil
    • Alexsandro Felix
Re: Servidor montado... e agora para zipar?
« Resposta #6 Online: 14 de Janeiro de 2009, 12:16 »
A instrução para o crontab segue esta sequência:

Citar
minuto ........0-59
hora ..........0-23
dia do mes ....1-31
mes ...........1-12
dia da semana..0-7 ( 0 ou 7 é domingo ou use nomes)

Então o que você quer é o seguinte:

00 1 * * * tar -zcvf /backup/arquivoasercriado.tar.gz /home/usuario/arquivos/*

Offline jdn76

  • Usuário Ubuntu
  • *
  • Mensagens: 114
    • Ver perfil
Re: Servidor montado... e agora para zipar?
« Resposta #7 Online: 14 de Janeiro de 2009, 12:26 »
Olá, já tentei dessa forma mas ele não criou... não fez nada...

Se eu digitar manualmente o comando tar cria normal... mas no cron ele nada faz.


Já andei pesquisando na internet mas do que testei não funcionou.


Agradecia ajuda.

Offline Felix

  • Equipe Ubuntu
  • Usuário Ubuntu
  • *****
  • Mensagens: 3.068
    • Ver perfil
    • Alexsandro Felix
Re: Servidor montado... e agora para zipar?
« Resposta #8 Online: 14 de Janeiro de 2009, 13:15 »
você está usando o comando crontab -e?

Offline jdn76

  • Usuário Ubuntu
  • *
  • Mensagens: 114
    • Ver perfil
Re: Servidor montado... e agora para zipar?
« Resposta #9 Online: 14 de Janeiro de 2009, 13:29 »
Olá. Correto, usando crontab -e

Offline jdn76

  • Usuário Ubuntu
  • *
  • Mensagens: 114
    • Ver perfil
Re: Servidor montado... e agora para zipar?
« Resposta #10 Online: 14 de Janeiro de 2009, 13:40 »
Olá, só para adiciona no crontab -e experimentei da seguinte forma:

08 13 * * * cp -R /home/servidor /backup


e ele copiou os arquivos de um HD para outro sem problemas, porém o problema é que perde permissões... acentos em arquivos. Por isso queria usar o tar.gz, mas ele não está realizando a tarefa no crontab.

Offline Felix

  • Equipe Ubuntu
  • Usuário Ubuntu
  • *****
  • Mensagens: 3.068
    • Ver perfil
    • Alexsandro Felix
Re: Servidor montado... e agora para zipar?
« Resposta #11 Online: 14 de Janeiro de 2009, 14:03 »
por algum acaso, este outro HD está em formato NTFS ou outro diferente do HD de origem?

Offline jdn76

  • Usuário Ubuntu
  • *
  • Mensagens: 114
    • Ver perfil
Re: Servidor montado... e agora para zipar?
« Resposta #12 Online: 14 de Janeiro de 2009, 14:15 »
Está no mesmo PC, como HD secundário e está no formato EXT3.

Offline jdn76

  • Usuário Ubuntu
  • *
  • Mensagens: 114
    • Ver perfil
Re: Servidor montado... e agora para zipar?
« Resposta #13 Online: 14 de Janeiro de 2009, 15:29 »
Olá, já consegui fazer pelo cron porém há algo errado. Verifique:

root@homeserver:/backup# ls -la
total 68424
drwxr-xr-x  3 root root     4096 2009-01-14 15:21 .
drwxr-xr-x 24 root root     4096 2009-01-13 14:20 ..
-rw-r--r--  1 root root 52567730 2009-01-14 15:22 clientes2.tar.gz
-rw-r--r--  1 root root 17391207 2009-01-14 15:20 clientes.tar.gz
drwx------  2 root root    16384 2009-01-12 14:48 lost+found


veja a diferença do tamanho do arquivo clientes.tar.gz para clientes2.tar.gz
O clientes.tar.gz foi feito por agendamento e ficou menor. E o clientes2.tar.gz foi feito manual

tar -zcvf /backup/...

em ambos os casos foi usado os comandos tar -zcvf. Porque um fica menor que o outro? Porque o tar no crontab ficou com uma diferença tão grande no arquivo uma vez que foi usado os mesmos comandos tanto para manual quer para agendado? É isso que não entendo.

Offline Felix

  • Equipe Ubuntu
  • Usuário Ubuntu
  • *****
  • Mensagens: 3.068
    • Ver perfil
    • Alexsandro Felix
Re: Servidor montado... e agora para zipar?
« Resposta #14 Online: 14 de Janeiro de 2009, 18:50 »
Também não sei, mas estou estudando o caso aqui para ver se consigo alguma resposta...