I Gnu / Linux finns det olika program för att säkerhetskopiera men personligen gillar jag enkla saker, långt ifrån grafiska gränssnitt (som naturligtvis inte har något fel, men om jag kan undvika att använda det, undviker jag).
I rsync-kommandot finns en formidabel allierad med säkerhetskopior som vi ofta glömmer att göra. Det har tillräckligt med alternativ för att göra en kopia med alla nödvändiga krav.
Följande python-skript gör säkerhetskopior för detta ändamål. Du kommer att se att det är extremt enkelt och till och med för dem som inte har någon aning om detta språk är det omedelbart att lägga till en rad för skriptet för att synkronisera en ny katalog.
I min maskin använder jag en extern hårddisk som jag har kallat IOmega_HDD, i ditt fall kan du byta namn på det i skriptet enligt ditt fall.
En annan sak är att lägga till eller ta bort kataloger från kopian. I samma skript som kommentarraden förklaras hur man gör det.
För att automatisera uppgiften kan du lägga till en rad i crontab som innehåller pythontolken och sökvägen där du vill placera skriptet. Jag hoppas att det är användbart för dig.
varning: WordPress-redigeraren tillåter inte ett avstånd i början av raden, så den nödvändiga fördjupningen i skriptet har gått förlorad, så jag har ersatt de tomma utrymmena med punkter (.) som du måste eliminera med en editor och ersätta med mellanslag .
-------------------------------
# -*- coding: utf-8 -*-
import os
ruta_usuario=os.getcwd()
ruta_volumen="/media/Iomega_HDD" #Modificar según nombre de disco externo
directorio_destino=ruta_volumen + "/" + "RsyncBackup"
try:
....if os.path.exists(directorio_destino):
........pass
....else:
........os.mkdir(directorio_destino,0777)
....directorios_origen=[]
....rutas_directorios_origen=[]
....#Se añaden los directorios para sincronizar
....directorios_origen.append("Documentos")
....directorios_origen.append("Imágenes")
....directorios_origen.append("Descargas")
....#Añadir aquí otros directorios que se deseen sincronizar
....#o eliminar de las líneas anteriores los que no se deseen
....for rutas in directorios_origen:
....rutas_directorios_origen.append(ruta_usuario + "/" + rutas)
....for rutas in rutas_directorios_origen:
....print "Sincronizando " + rutas + " con " + directorio_destino
....os.system("rsync -ahv --progress" + " " + rutas + " " + directorio_destino)
....print "Proceso terminado"
except OSError:
print "Ha ocurrido un error ¿está el disco externo listo?"
except:
print "Ha ocurrido un error"
---------------------------
Hej hur mår du?
Jag gillade manuset, väldigt enkelt.
Inget brott, jag gjorde några ändringar för att göra det enklare och mer läsbart, förutom att stödja Python 2 och 3 (för närvarande kan det bara köras i Python 2)
Jag lämnar länken till de två versionerna, om du är intresserad.
http://linkode.org/1np9l2bi8IiD5oEkPIUQb5/Yfa4900cA76BpcTpcf4nG1
Bra mods och jag är glad att du gillar manuset
Avsikten uppskattas, men resultatet är klibbigt och korv.
Min 4-åriga systerdotter kan göra ett mer intelligent och konfigurerbart manus än den här potatisen du har lagt här.
Förresten, koden är felaktig, kolla dina öglor och jag menar inte håren
Manuset fungerar perfekt, jag har använt det länge och faktiskt, på grund av antalet personer som delar det, borde det inte vara så skit som du säger. Du kanske borde ringa din systerdotter för att se om du har lagt allt på rätt sätt
Hej, lär dig att värdera och istället för att kritisera, rätta, om du skryter så mycket.
Exakt tr, Matias har gjort några bra modifieringar. Visst kan manuset förbättras och det är vad det handlar om i samarbetsvärlden och det är vad Matias har uttryckt. Det är synd att individer är här för att försurra den goda atmosfär som ska råda. Där de.
Tror du att en oförskämd kritik är användbar och att den inte lägger till något i skriptet? BÄTTRE INTE SKRIVER DU EN JÄVLIG SKRIFT OCH DELAR DET !!!!!!!
Här en annan version: https://gist.github.com/Itsuki4/5acc3d03f3650719b88d
Kommentera de fel jag har, jag kommer att rätta till det (nu är jag i windows och jag kunde inte testa det).
Tja, jag använder rsync direkt med ett skalskript utan att använda python.
Jag sätter en rad för varje käll- och målkatalog.
Jag har flera skript beroende på vilken enhet jag kopierar på, i mitt fall inkrementell.
Till exempel för att kopiera mina böcker till ett 128 MB USB-minne som är installerat som standard i
/ media / zetaka01 / Sandisk128 Jag lägger i skriptet LibrosAusb128.sh följande rad:
rsync -av –delete / home / zetaka01 / Böcker / media / zetaka01 / Sandisk128 /
Om målkatalogen inte finns skapar den den åt dig och raderar naturligtvis rekursivt det som inte finns i ursprunget.
En hälsning.
Ah, kopiera / klistra in - radera fel med två bindestreck.
hälsningar
Vill du skapa ett grafiskt gränssnitt? Jag har sett möjligheterna med Tkinter och Tix men för kontrollen av valet av kataloger kanske Wx är bättre
Det finns redan ett grafiskt gränssnitt baserat på GTK, det kallas grsync.
Jag lämnar länken till Wikipedia, https://en.wikipedia.org/wiki/Grsync
En hälsning.
Hej alla. Manuset kan vara ett under eller en enkelhet som jag inte känner eller bryr mig om men saker kan sägas på tusen sätt och när de kan sägas väl, varför säga dem fel? Med detta sagt måste jag säga att jag har varit Linux-användare sedan 2008 och trots hela den här tiden är jag långsam att lära mig och jag har svårt att förstå många saker inklusive hur man kör ett skript (jag vet att det är enkelt men det gör man inte ger inte mer). installera program genom att kompilera dem etc. etc. Det är därför när jag läser att det finns en version med ett grafiskt gränssnitt som jag har tittat på och jag hittade den här sidan där de ger dig allt tuggat. För de klumpiga som server lämnar jag det här. Hälsningar och tack för din ansträngning.
http://www.opbyte.it/grsync/download.html
fernando, utan någon svårighet och om du inte har något emot att svara är jag nyfiken på varför du använder Gnu / Linux. Tack och hälsningar
Tja, ett grafiskt gränssnitt är mycket vänligt men det ger dig inte de alternativ som ett fullständigt kommando ger dig.
Dessutom är det inte mitt fall att jag gör det för att mäta, ett skript, oavsett om det är skal eller python eller vad du än vill, låter dig programmera det att köra när du vill.
Ah, i din Linux-distro borde du ha rsync och grsync utan problem i förvaren.
En hälsning.
Ah Fernando, om du har använt linux sedan 2008 och du inte vet hur man kör ett skript har jag inga ord.
hälsningar
Pa är alla systemtekniker här som kritiserar skriptet som någon gör för att samarbeta, och om de ska använda konsol / skript eller vad som helst?
Hur mycket skit att fisa för Guds skull.
Jag har hanterat Linux-servrar i tio år, och sanningen är att den elektroniska upprättandet av att göra allt med skript passerade mig för ett tag sedan, till exempel för att administrera Bacula, jag föredrar att använda det grafiska gränssnittet än skalet för att låtsas vara viktigt, vilket verkligen är ett kriminellt medel.
Man måste vara produktiv, om någon känner sig mer bekväm med att göra det via gränssnitt, ja för honom, det som är viktigt är resultatet, inte hur du gör det.
I mitt tidigare jobb ledde jag IT-området för ett företag och de ansvariga frågade honom att göra något specifikt, jag var intresserad av resultatet, han sa inte «Konfigurera en annan värd i apache, med vi utan färg i en terminal 30 × 20 ”, att han gör det som han är bekvämast, om killen föredrog att göra det så, montera med SFTP och använda Windows anteckningsblock, eller ber vår far, jag brydde mig inte så länge han gjorde det rätt.
dandutrech, skriptet uppfyller sitt mål, vilket är det viktiga, nu vad jag skulle ändra är att istället för att åberopa kommandot från skalet skulle det plötsligt använda Python-librsync, vilket är ett bibliotek för att använda rsync-funktionerna i Python .
Med det får du portabilitet, skriptet körs i vilken miljö som helst, vare sig Linux, Windows eller OS X.
Tack, Gonzalo. Ditt förslag tycker jag är väldigt bra och jag kommer att lägga det i manuset. en hälsning