Eu fui para Yadis! Backup é
- grátis
- pequeno
- fácil de usar
e faz o que eu quero: -)
Eu quero fazer backup de algumas pastas regularmente no Windows XP. O melhor seria o backup automático após qualquer alteração nos arquivos.
alguma sugestão? Fico feliz em ter algum utilitário de taxa (mesmo para uso comercial) que copiaria os arquivos de um diretório para o diretório do dropbox ....
Para o rastreamento do código-fonte, eu recomendaria algo como Git ( tortoisegit ), Mercurial , tortoiseSVN , rdiff-backup ou até fechando coisas (escolha sua versão favorita WinZip , 7-Zip . .).
O Robocopy pode monitorar um diretório para alteração ( /MON:n
/MOT:m
) e fazer uma cópia em algum lugar, mas não há histórico. Use a opção /MIR
para duplicar o destino.
A parte de toque disso é a automática e a mudança.
Existe um programa de pagamento chamado Histórico Explorer (US $ 20) que economizará por mudar e uma vez configurado você realmente não precisa pensar sobre isso. Eu tenho e parece funcionar como anunciado.
Ouvi que o DocShield é semelhante ao History Explorer, verifica em intervalos e alguns reclamam disso seja buggy . Ouvi dizer que era gratuito para uso pessoal, mas o site do Docshield não está mais ativo e em algum site ele é listado como freeware. Não tenho certeza se confiaria se eles não estão mais no negócio.
rdiff-backup Eu corri para um problema tentando fazer backup de dados em um único tiro (um alguns GB). Em pequenos arquivos de projeto, não tive problemas.
Espero que um deles ajude você.
Genie Timeline edição gratuita.
O robocopy pode espelhar duas pastas.
Viceversa Pro é bastante robusto, estou fazendo backup de cerca de dois milhões de arquivos por mês sem nenhum problema, e com o VVEngine você pode monitorar as alterações para fazer backup deles. O único problema é que não é livre. Mas é pequeno e rápido. (você também pode agendar backups, scripts e resultados de e-mail automaticamente)
No linux, preparei o script de backup abaixo para copiar apenas os arquivos alterados para uma pasta de backup predefinida com estrutura inteira. Eu defini "alterado" se qualquer uma das alterações de tamanho de arquivo ou data de modificação. Usando estado ativo, você pode implementar isso também no Windows:
import os
import os.path
import sys
import time
from datetime import datetime
import shutil
backup_loc = '/media/prahlad/terabyte/backup'
locations = ['/home/prahlad/docs',
'/home/prahlad/source',
'/home/prahlad/scripts',
'/home/prahlad/library',
'/home/prahlad/programs',
'/home/prahlad/staging',
'/home/prahlad/soft',
'/home/prahlad/Desktop',
'/home/prahlad/Downloads',
'/home/prahlad/Pictures',
'/home/prahlad/videos',
'/home/prahlad/movies',
'/home/prahlad/songs',
]
if __name__ == "__main__":
#loop thru the folders
start = time.clock()
num=0
for s in locations: #[0:1]:
#print s + "\n"
#files = os.listdir(s)
print 'listing for ' + s
for (root, dirs, files) in os.walk(s):
#CON_LEN = 120
#print root, " contains"
#subpath = root[len(s)+1:]
subpath = root.replace('/home/prahlad','')
#~ for d in dirs:
#~ #create corresponding structure on backup if it doesn't exist
#~ print 'backup loc:',backup_loc
#~ print 'subpath:',subpath
#~ print 'd:',d
#~ print 's:',s
#~ #os.sepchar
#~ #destdir = os.path.join(backup_loc, subpath, d) #some how backup_loc is not being considered
#~ destdir = backup_loc + subpath + os.sep + d
#~ if not os.path.exists(destdir):
#~ print 'creating directory ' + destdir
#~ #print 'creating directory ' + destdir
#~ os.makedirs(destdir)
for f in files:
#print 'root: ' + root
#print 'file: ' + f
#print 'split: ' + root[len(s)+1:], len(root[len(s)+1:])
#message = os.path.join(root,f) + '~~~~' + os.path.join(backup_loc,subpath,f)
filename = os.path.join(root, f)
#dfilename = os.path.join(backup_loc,subpath,f)
dfilename = backup_loc + subpath + os.sep + f
link = ''
if os.path.islink(filename):
link = os.readlink(filename)
if not os.path.exists(dfilename):
#check dirs
if not os.path.exists(backup_loc + subpath):
os.makedirs(backup_loc + subpath)
print 'creating directory: ' + backup_loc + subpath
#just copy the files
print 'copying from: ' + filename
print 'to: ' + dfilename
if link == '':
shutil.copy2(filename, dfilename)
else:
os.symlink(link, dfilename)
num+=1
else:
sz = os.path.getsize(filename); lm = datetime.fromtimestamp(os.path.getmtime(filename)).timetuple()
dsz = os.path.getsize(dfilename); dlm = datetime.fromtimestamp(os.path.getmtime(dfilename)).timetuple()
if (sz == dsz and lm == dlm):
print 'skipped: ' + dfilename
#time.sleep(3)
else:
#copy the files
print 'copying from: ' + filename
print 'to: ' + dfilename
if link == '':
shutil.copy2(filename, dfilename)
else:
os.symlink(link, dfilename)
num+=1
mins = (time.clock() - start)
#print "All files copied in %d minutes" % mins
print "{0} files copied in {1} minutes".format(int(num), round(mins))
É preciso tentar Resilio . Pessoalmente eu encontrei o aplicativo melhor ainda disponível para o trabalho de backup sobre Wi-Fi, LAN, etc Livre para uso individual. Em suas palavras: impulsionado pela principal tecnologia peer-to-peer da BitTorrent.
Tags backup automation