|
![]() |
||
Como sincronizar 2 pastas (diretórios)?
|
||
. Nós temos 754.040 usuários, convidamos você fazer parte de nossa comunidade também! Se ainda não encontrou o que procura use nossa pesquisa. Esperamos que aprecie nosso trabalho.
![]() |
|
|
Opções do Tópico |
|
|
#1 (permalink) |
|
Super Participante
Registrado em: Feb 2007
Localização: São José do Rio Preto - SP
Mensagens: 747
Reputação: 18
![]() ![]() ![]() ![]() ![]() |
Oi, gente.
Tenho 2 HDs no meu PC. Gostaria de saber que programa do Linux eu posso usar para fazer um sincronismo de 2 pastas, que ficam uma em cada HD. Não quero backup. Programas de backup criam uma imagem compactada. Eu não quero que seja compactada e sim uma cópia utilizável dos arquivos. Quero um programa que identifique os arquivos da pasta A e da B, e mova os arquivos mais novos da A -> B e possa fazer também o inverso, ou seja, mover os arquivos mais novos da pasta B -> A. Algo como o Allway Sync: http://allwaysync.com/ ![]() Uma última pergunta: que sites devo usar para procurar programas para Linux? Fui! |
|
|
|
|
|
#2 (permalink) | |
|
Highlander
Registrado em: May 2002
Localização: Tijuca/RJ
Idade: 9
Mensagens: 87.724
Reputação: 778
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Se as duas máquinas tiverem acesso a rede, você pode usar o comando rsync, com ssh:
Citação:
__________________
Visite Quepolis (link de indicação) | "chmod 777 nunca ajudou ninguém" (c) 2002-2010 JQueiroz/FGdH
CCNP: √ ² CCSI: □ | Conheça o Novo Bebuns ![]() |
|
|
|
|
|
|
#3 (permalink) |
|
Super Participante
Registrado em: Feb 2007
Localização: São José do Rio Preto - SP
Mensagens: 747
Reputação: 18
![]() ![]() ![]() ![]() ![]() |
Oi, Jqueiroz.
É bastante interessante e instrutivo o uso do SSH para copiar em máquinas diferentes através da rede. Mas, no meu caso, é algo mais simples. A cópia seria feita entre 2 pastas na mesma máquina. Se possível, com sincronização nos dois sentidos, permitindo que o arquivo mais novo sobreescreva o mais antigo (independentemente da pasta de onde se encontra). O rsync faz isso? Fui! |
|
|
|
|
|
#4 (permalink) | |
|
Membro Senior
Registrado em: Mar 2006
Localização: Belo Horizonte
Mensagens: 220
Reputação: 12
![]() |
Faz sim.
Citação:
E o interessante é que depois de rodá-lo pela segunda vez, ele atualiza somente os arquivos que foram modificados, fazendo o sincronismo bem mais rápido. ![]() |
|
|
|
|
|
|
#5 (permalink) |
|
GeeK
Registrado em: Jan 2006
Localização: Rio de Janeiro
Mensagens: 2.299
Reputação: 45
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Acho que o nome do que o colega está tentando fazer é espelhamento.
Muito usado em servidores de missão crítica. Caso um HD pife, há outro exatamente igual (mesmo conteúdo) não interrompendo o serviço.
__________________
[Biostar TA890GXB][Athlon II X4 640 3.0GHz][4GB DDR3 1333][HD Seagate Barracuda 1TB][7Team ST-350 BKV][DVD-RW LG-H54N]
|
|
|
|
|
|
#6 (permalink) |
|
Super Participante
Registrado em: Jun 2006
Mensagens: 933
Reputação: 46
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
O rsync é unidirecional; caso queira que ocorra nos dois sentidos, deverá executar o comando 2 vezes, alternando a ordem das pastas (origem e destino). Veja mais com "man rsync".
|
|
|
|
|
|
#7 (permalink) | ||
|
Highlander
Registrado em: May 2002
Localização: Tijuca/RJ
Idade: 9
Mensagens: 87.724
Reputação: 778
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Citação:
![]() Citação:
__________________
Visite Quepolis (link de indicação) | "chmod 777 nunca ajudou ninguém" (c) 2002-2010 JQueiroz/FGdH
CCNP: √ ² CCSI: □ | Conheça o Novo Bebuns ![]() |
||
|
|
|
|
|
#8 (permalink) |
|
Super Participante
Registrado em: Feb 2007
Localização: São José do Rio Preto - SP
Mensagens: 747
Reputação: 18
![]() ![]() ![]() ![]() ![]() |
Olá.
Primeiramente, gostaria de agradecer a todos pelas respostas. Pelo que li no manual do rsync, devo usar 2 opções: -u: para que os arquivos mais velhos (da origem) não apaguem os mais novos (do destino) -r: para copiar todos os diretórios recursivamente. Assim, para fazer a sincronização nos 2 sentidos, eu precisaria dar os seguintes comandos: rsync -ru mnt/hdb1/Sincronizado mnt/hda1/Sincronizado rsync -ru mnt/hda1/Sincronizado mnt/hdb1/Sincronizado Estas pergunta são beeem mais básicas que a anterior, me desculpem, mas tenho que fazê-las: ![]() No MsDos (minhas origens), era possível fazer um arquivo de lote, onde eu poderia colocar estas 2 linhas em um arquivo de texto puro. Este arquivo poderia se chamar sincronizar.bat Assim, bastaria eu digitar sincronizar no terminal e pronto. Há um equivalente no Linux para arquivos de lote? Se houver, este arquivo poderá estar em quais pastas? Que comando devo dar para ver o PATH (local onde procurar os arquivos)? Como acrescentar uma variável de ambiente? (Ex: SUNRISE= /mnt/hda1/Sincronizado) Valeu! ![]() Última edição por advi : 08-03-2007 às 17:25. |
|
|
|
|
|
#9 (permalink) |
|
Newbie
|
Para ver o path digite: $ echo $PATH O "arquivo de lote" do linux eh o shell script (arquivos .sh), que porém podem ter qualquer extensao. Crie um e coloque dentro de uma das pastas do seu PATH. Para exportar uma variavel: $ export NOME_DA_VARIAVEL=VALOR Se o que você procura é redundância, talvez seja melhor investir em um sistema raid com hotplug, assim se um hd queimar basta retira-lo e colocar outro, sem desligar a maquina.
__________________
P4 3.0 HT s478 P4V800D-X Dual Ram 512x2 mb HD 80gb + 40gb VGA FX5200 (7600GT em breve) Monitor Samsung 17" www.securityinformatica.com.br Cascavel - PR |
|
|
|
|
|
#10 (permalink) |
|
Super Participante
Registrado em: Feb 2007
Localização: São José do Rio Preto - SP
Mensagens: 747
Reputação: 18
![]() ![]() ![]() ![]() ![]() |
Ok.
Como acrescentar uma nova pasta ao $PATH (além das já existentes)? No MsDos, seria algo como: $PATH = $PATH;/mnt/novodir Para criar uma nova variável de ambiente basta digitar export VARIAVEL=VALOR É isso? |
|
|
|
|
|
#11 (permalink) |
|
Newbie
|
Exatamente...
Essa variavel vai valer até voce reiniciar o PC. Se voce quiser usar uma variavel apenas para um comando, pode defini-la na propria linha de comando, exemplo: $ VAR=VALUE echo $VAR O resultado disso será VALUE.
__________________
P4 3.0 HT s478 P4V800D-X Dual Ram 512x2 mb HD 80gb + 40gb VGA FX5200 (7600GT em breve) Monitor Samsung 17" www.securityinformatica.com.br Cascavel - PR |
|
|
|
|
|
#12 (permalink) | |
|
Highlander
Registrado em: May 2002
Localização: Tijuca/RJ
Idade: 9
Mensagens: 87.724
Reputação: 778
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Citação:
export PATH=$PATH:/mnt/novodir Pra ficar permanente, coloque esse comando no arquivo ".bashrc" dentro de sua pasta HOME.
__________________
Visite Quepolis (link de indicação) | "chmod 777 nunca ajudou ninguém" (c) 2002-2010 JQueiroz/FGdH
CCNP: √ ² CCSI: □ | Conheça o Novo Bebuns ![]() |
|
|
|
|
|
|
#13 (permalink) | ||||
|
Super Participante
Registrado em: Aug 2006
Idade: 29
Mensagens: 860
Reputação: 13
![]() |
pegando uma carona:
Considerando o sistema montado abaixo: # mount /dev/hda1 on / type reiserfs (rw,noatime,notail) /dev/hda3 on /tmp type reiserfs (rw,nosuid,nodev) /dev/hda6 on /mnt/hda6 type reiserfs (rw,nosuid,nodev) /dev/hda7 on /mnt/hda7 type reiserfs (rw,nosuid,nodev) /dev/hda8 on /mnt/hda8 type reiserfs (rw,nosuid,nodev) /dev/hda9 on /mnt/hda9 type reiserfs (rw,nosuid,nodev) /dev/hda5 on /home type reiserfs (rw,notail) /dev/hdg1 on /hd2 type reiserfs (rw,nosuid,nodev) eu quero fazer um espelho de /dev/hda1 para /hd2 se eu digitar: Citação:
Eu tentei fazer o seguinte criei outro diretorio Citação:
isso quer dizer que posso fazer o seguinte: Citação:
ou em algum caso vou ter algum problema? Outra observação: sabendo que o rsync so transporta os dados alterados o arquivo e nao o arquivo inteiro, e quando o rsync esta trabalhando com o ssh, ele continua transportando apenas os dados alterados ao invez do arquivo inteiro? Mais outra detalhe, tentei usar: Citação:
grato!
__________________
----->HENRIQUE<----- Linux User #444017 - Linux Machine #350904 Ubuntu 10.04 - Pentium Dual-COre E5400 2.7Ghz - 2hdx500GB - 2x2GiB RAM - GeForce 9400 GT 1GiB compiz Última edição por emtudo : 28-05-2007 às 1:40. |
||||
|
|
|
|
|
#14 (permalink) | |||
|
Highlander
Registrado em: May 2002
Localização: Tijuca/RJ
Idade: 9
Mensagens: 87.724
Reputação: 778
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Citação:
rsync -avx / /hd2 Citação:
__________________
Visite Quepolis (link de indicação) | "chmod 777 nunca ajudou ninguém" (c) 2002-2010 JQueiroz/FGdH
CCNP: √ ² CCSI: □ | Conheça o Novo Bebuns ![]() |
|||
|
|
|
|
|
#15 (permalink) | |
|
Super Participante
Registrado em: Aug 2006
Idade: 29
Mensagens: 860
Reputação: 13
![]() |
Citação:
desde ja agradeco pela dica, mas eu gosto de saber o que ela faz, ao invez de apenas usar sem saber o sentido, acho que vc ne entendi ne? outra coisa, o rsync sempre usou o ssh? acho que lembro de ja usar ele alguns anos atraz sem o ssh, existe como usar sem usar nenhum programa, como são os parametros? grato!
__________________
----->HENRIQUE<----- Linux User #444017 - Linux Machine #350904 Ubuntu 10.04 - Pentium Dual-COre E5400 2.7Ghz - 2hdx500GB - 2x2GiB RAM - GeForce 9400 GT 1GiB compiz |
|
|
|
|
|
|
#16 (permalink) | ||
|
Highlander
Registrado em: May 2002
Localização: Tijuca/RJ
Idade: 9
Mensagens: 87.724
Reputação: 778
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Citação:
Citação:
man rsync ![]()
__________________
Visite Quepolis (link de indicação) | "chmod 777 nunca ajudou ninguém" (c) 2002-2010 JQueiroz/FGdH
CCNP: √ ² CCSI: □ | Conheça o Novo Bebuns ![]() |
||
|
|
|
|
|
#17 (permalink) | |
|
Super Participante
Registrado em: Aug 2006
Idade: 29
Mensagens: 860
Reputação: 13
![]() |
Citação:
a proposito "fantastico" a opcao "x", exatamente o que eu precisava obrigado!
__________________
----->HENRIQUE<----- Linux User #444017 - Linux Machine #350904 Ubuntu 10.04 - Pentium Dual-COre E5400 2.7Ghz - 2hdx500GB - 2x2GiB RAM - GeForce 9400 GT 1GiB compiz |
|
|
|
|
|
|
#18 (permalink) |
|
Membro Senior
|
ola amigo advi,
eu uso o krusader, vc pode instalar ele através do comando no konsole, "sudo apt-get install krusader" ele é muito bom, é gráfico e faz tudo oq vc precisa! por favor poste aqui o resultado, boa sorte! abcs
__________________
"A Mente que se abre a uma nova idéia jamais volta ao seu tamanho original." Einstein. placa mãe:Asus M2NPV-VM Socket AM2 GeForce 6150+nForce 430 processador:AMD 64 X2 DUAL CORE 4000+ memória: 2X Kingston KVR800D2N5/1G DDR2 800 (Dual Channel) Hd:Seagate SATA II 250 Gb Última edição por tbretzc : 29-05-2007 às 7:38. |
|
|
|
|
|
#19 (permalink) | |
|
Super Participante
Registrado em: Aug 2006
Idade: 29
Mensagens: 860
Reputação: 13
![]() |
Citação:
obrigado! vou instalar so para testar, mas eu amo digitar comandos, mas vamos tentar esta interface grafica a proposito se me permite fazer uma correção: "sudo apt-get install krusader" Editado: A interface parece com um "explorer da vida", mas ainda nao testei, vou dormi e assim que acorda vou testar... ![]()
__________________
----->HENRIQUE<----- Linux User #444017 - Linux Machine #350904 Ubuntu 10.04 - Pentium Dual-COre E5400 2.7Ghz - 2hdx500GB - 2x2GiB RAM - GeForce 9400 GT 1GiB compiz |
|
|
|
|
|
|
#20 (permalink) | |
|
Membro Senior
|
Citação:
ola amigo, tudo bem? na verdade a dica era para o advi mas se vc gostar tudo bem, eu uso ele e não tem falhas, pelo menos ate onde eu explorei... ah, obrigado pela correção, ja estava tarde ontem, me passou despercebido, hehehe vou editar... abcs
__________________
"A Mente que se abre a uma nova idéia jamais volta ao seu tamanho original." Einstein. placa mãe:Asus M2NPV-VM Socket AM2 GeForce 6150+nForce 430 processador:AMD 64 X2 DUAL CORE 4000+ memória: 2X Kingston KVR800D2N5/1G DDR2 800 (Dual Channel) Hd:Seagate SATA II 250 Gb |
|
|
|
|
![]() |
| Opções do Tópico | |
|
|