backup your files as a programmer

Δωρεάν πρόγραμμα συγχρονισμού αρχείων με email notification.

Η διατήρηση τοπικών αντιγράφων ασφαλείας καθημερινά επικαιροποιούμενων, είναι αναπόσπαστο κομμάτι μιας στιβαρής backup στρατηγικής. Η εγκατάσταση των windows στον υπολογιστή σας, για να μπορεί να φέρει εις πέρας τις τοπικές διαδικασίες backup, περιέχει ήδη το απαραίτητο λογισμικό.

Παρακάτω θα σας δείξουμε πώς θα το ενεργοποιήσετε και θα το προσαρμόσετε στις δικές σας ανάγκες, σε όσους υπολογιστές θέλετε, στην εταιρεία ή το σπίτι και για όσο χρόνο θέλετε δωρεάν.

Δυνατότητες:


  • Επικαιροποίηση των αντιγράφων ασφαλείας μόνο με τις αλλαγές
  • Υποστήριξη τοπικών και USB προορισμών αποθήκευσης
  • Υποστήριξη δικτυακών προορισμών αποθήκευσης
  • Έναρξη σε προγραμματισμένο επαναλαμβανόμενο χρόνο
  • E-mail notification μέσω SSL κατά την έναρξη
  • E-mail notification μέσω SSL κατά τη λήξη με καταγραφή λαθών εφόσον υπάρχουν
  • Αναλυτικό log file με λεπτομερείς πληροφορίες για κάθε συγχρονισμό

Χρόνος Υλοποίησης: 10 λεπτά.

Βήμα 1ο: Δημιουργία λογαριασμού Gmail για την αποστολή των E-mail notifications.

Δημιουργήστε έναν λογαριασμό Gmail και σημειώστε τον κωδικό πρόσβασης. Αφού εισέλθετε στον λογαριασμό που μόλις δημιουργήσατε, κάντε κλικ ΕΔΩ και ενεργοποιήστε την επιλογή Να επιτρέπονται οι λιγότερο ασφαλείς εφαρμογές. Πρόκειται για μια τυπική ρύθμιση που συνήθως υποχρεούται να κάνει κάποιος που επιθυμεί να χρησιμοποιήσει την υπηρεσία Gmail μέσα από εφαρμογή που δεν ανήκει στη Google.

gmail security

Βήμα 2ο: Δημιουργία folder που θα περιέχει τον κώδικα του backup προγράμματος.

Δημιουργήστε ένα νέο φάκελο με το όνομα της επιλογής σας, π.χ. fileSync σε σημείο της επιλογής σας π.χ. Desktop.

create folder
create folder

Βήμα 3ο: Αντιγραφή και αποθήκευση του κώδικα του backup προγράμματος.

Ανοίξτε τον φάκελο που μόλις δημιουργήσατε και πατήστε δεξί κλικ και επιλέξτε δημιουργία / εγγράφο κειμένου (New / Text Document), επιλέξτε για όνομα αρχείου 1 λέξη και λατινικούς χαρακτήρες, π.χ. sync, αλλάξτε την επέκταση από .txt σε .bat και πατήστε το ENTER για αποθήκευση (τελικό όνομα αρχείου: sync.bat). Στην ερώτηση αν συμφωνείτε με την αλλαγή της επέκτασης απαντήστε ΝΑΙ.

create text
change extension

Έπειτα ανοίξτε το έγγραφο με το Notepad (σημειωματάριο) και κάντε Αντιγραφή / Επικόλληση το περιεχόμενο του Box 1 παρακάτω:

Box 1

::START CONFIGURATION
SET usn=mygmailaccount@gmail.com
SET pwd=myGmailPassword
SET emailTo=myaccount@mydomain.gr
SET sourcePath="C:\path\toMy\Important\files"
SET destPath="E:\path\toMy\backup\destination"
::END OF CONFIGURATION
SET msg="Local sync proccess started"
SET msgMore=""
SET currentDir=%~dp0
powershell -ExecutionPolicy ByPass -File %currentDir%/1.ps1 %msg% %usn% %pwd% %emailTo%
robocopy "%sourcePath%" "%destPath%" /MIR /COPY:DT /FFT /LOG+:%SYSTEMDRIVE%/log.txt"
    if %ERRORLEVEL% EQU 16 SET msgMore='***FATAL ERROR***'
    if %ERRORLEVEL% EQU 15 SET msgMore='OKCOPY + FAIL + MISMATCHES + XTRA'
    if %ERRORLEVEL% EQU 14 SET msgMore='FAIL + MISMATCHES + XTRA'
    if %ERRORLEVEL% EQU 13 SET msgMore='OKCOPY + FAIL + MISMATCHES'
    if %ERRORLEVEL% EQU 12 SET msgMore='FAIL + MISMATCHES'
    if %ERRORLEVEL% EQU 11 SET msgMore='OKCOPY + FAIL + XTRA'
    if %ERRORLEVEL% EQU 10 SET msgMore='FAIL + XTRA'
    if %ERRORLEVEL% EQU 9 SET msgMore='OKCOPY + FAIL'
    if %ERRORLEVEL% EQU 8 SET msgMore='FAIL'
    if %ERRORLEVEL% EQU 7 SET msgMore='OKCOPY + MISMATCHES + XTRA'
    if %ERRORLEVEL% EQU 6 SET msgMore='MISMATCHES + XTRA'
    if %ERRORLEVEL% EQU 5 SET msgMore='OKCOPY + MISMATCHES'
    if %ERRORLEVEL% EQU 4 SET msgMore='MISMATCHES'
    if %ERRORLEVEL% EQU 3 SET msgMore='OKCOPY + XTRA'
    if %ERRORLEVEL% EQU 2 SET msgMore='XTRA'
    if %ERRORLEVEL% EQU 1 SET msgMore='OKCOPY'
    if %ERRORLEVEL% EQU 0 SET msgMore='No Change'
SET msg="Sync proccess finished with %msgMore%"
powershell -ExecutionPolicy ByPass -File %currentDir%/1.ps1 %msg% %usn% %pwd% %emailTo% %SYSTEMDRIVE%
del %SYSTEMDRIVE%\log.txt

Βήμα 4ο: Ρύθμιση του κώδικα του backup προγράμματος.

Ο κώδικάς σας στο πάνω μέρος περιέχει 5 μεταβλητές: usn, pwd, emailTo, sourcePath & destPath στις οποίες πρέπει να αλλαχθούν οι τιμές ως ακολούθως:

Αντικαταστήστε το mygmailaccount@gmail.com με τη Gmail διεύθυνση που δημιουργήσατε:

change gmail email

Αντικαταστήστε το myGmailPassword με τον Gmail κωδικό πρόσβασης της παραπάνω διεύθυνσης:

change gmail password

Αντικαταστήστε το myaccount@mydomain.gr με τον προσωπικό ή εταιρικό email λογαριασμό στον οποίο θα λαμβάνετε τα E-mail notifications:

change recipient email

Αντικαταστήστε το C:\path\toMy\Important\files με το σημείο όπου έχετε αποθηκευμένα τα προς δημιουργία αντιγράφων backup αρχεία σας και το E:\path\toMy\backup\destination με τον προορισμό όπου θα αποθηκευτούν τα backup αντίγραφα των αρχείων σας.

change source
change destination

Είναι σημαντικό και οι 2 παραπάνω τιμές να περιέχονται εντός εισαγωγικών. Προς αποφυγή λαθών, κάντε το με τον τρόπο που δείχνουν η παρακάτω εικόνες:

select path
copy path

Βήμα 5ο: Αντιγραφή του κώδικα αποστολής E-mail notification.

Μέσα στον ίδιο φάκελο πατήστε δεξί κλικ και επιλέξτε δημιουργία / εγγράφο κειμένου (New / Text Document) όπως κάνατε προηγουμένως. Επιλέξτε για όνομα αρχείου τον αριθμό 1 και αλλάξτε την επέκταση από .txt σε .ps1 (τελικό όνομα αρχείου: 1.ps1) και πατήστε το ENTER για αποθήκευση. Στην ερώτηση αν συμφωνείτε με την αλλαγή της επέκτασης απαντήστε ΝΑΙ. Έπειτα ανοίξτε το έγγραφο με το Notepad (σημειωματάριο) και κάντε Αντιγραφή / Επικόλληση το περιεχόμενο του Box 2 παρακάτω:

Box 2

param([string]$sub="",
[string]$usn="",
[string]$pwd="",
[string]$EmailTo="",
[string]$logPath=""
)
$happened = $(get-date).ToString("dd/MM/yyyy HH:mm:ss")
$Body = "$sub at $happened"
$More=""
$SMTPServer = "smtp.gmail.com"
$message = new-object System.Net.Mail.MailMessage 
$message.From = $usn
$message.To.Add($EmailTo) 
$message.IsBodyHtml = $True 
$message.Subject = $sub
if ($logPath)
{
$attach = new-object Net.Mail.Attachment("$logPath\log.txt") 
$message.Attachments.Add($attach) 
$More="Check log.txt for details."
}
$message.body = "$Body $More<p><img src='https://www.backup-experts.gr/assets/images/backup-experts.jpg'>
<br></p><p>
Tel: 210-8069114<br>
Email: info@backup-experts.gr<br>
Web Site: https://www.backup-experts.gr</p>"
$smtp = new-object Net.Mail.SmtpClient($SMTPServer) 
$smtp.EnableSsl = $true
$smtp.Credentials = New-Object System.Net.NetworkCredential($usn, $pwd);
$smtp.Send($message)

Συγχαρητήρια, έχετε τελειώσει! Αρκεί ένα δεξί κλικ και Εκτέλεση ως Διαχειριστής - Run as Administrator επάνω στο αρχείο με την επέκταση .bat και η διαδικασία αντιγράφων backup θα ξεκινήσει! Με την εκτέλεση του προγράμματος θα λάβετε e-mail notification με τον ακριβή χρόνο έναρξης της διαδικασίας, ενώ μόλις η διαδικασία ολοκληρωθεί, θα λάβετε και δεύτερο e-mail notification που θα περιέχει αναφορά για τα αποτελέσματα της backup διαδικασίας μαζί με τον ακριβή χρόνο ολοκλήρωσης και ένα attachment με αναλυτικό αρχείο καταγραφής log file.

ΠΕΡΙΣΣΟΤΕΡΑ:

Εφόσον επιθυμείτε ο προορισμός των αντιγράφων ασφαλείας να είναι κάποιο network share σε κάποιον άλλο υπολογιστή στο δίκτυό σας ή σε κάποιον NAS Server, το μόνο που θα χρειαστείτε είναι να δημιουργήσετε στο ίδιο folder ένα νέο .bat αρχείο με τα περιεχόμενα του Box 3 παρακάτω και να κάνετε τις απαραίτητες αλλαγές στις extra μεταβλητές netIP, destPath, netUserName & netPassword. Σιγουρευτείτε ότι έχετε κλειστά οποιαδήποτε παράθυρα του file explorer προς τον δικτυακό προορισμό αποθήκευσης. Διαφορετικά ενδέχεται να λάβετε error.

Box 3

::START CONFIGURATION
SET usn=mygmailaccount@gmail.com
SET pwd=myGmailPassword
SET emailTo=myaccount@mydomain.gr
SET sourcePath="C:\path\toMy\Important\files"
SET netIP=192.168.1.72
SET destPath="\\192.168.1.72\Net\destination"
SET netUserName=myLocalShareUserName
SET netPassword=myLocalSharePassword
::END OF CONFIGURATION
SET msg="Net sync proccess started"
SET msgMore=""
SET currentDir=%~dp0
net use *  /del  /yes
net use s: %destPath% /USER:%netIP%\%netUserName% %netPassword%
powershell -ExecutionPolicy ByPass -File %currentDir%/1.ps1 %msg% %usn% %pwd% %emailTo%
robocopy "%sourcePath%" s:\ /MIR /COPY:DT /FFT /LOG+:%SYSTEMDRIVE%/log.txt"
    if %ERRORLEVEL% EQU 16 SET msgMore='***FATAL ERROR***'
    if %ERRORLEVEL% EQU 15 SET msgMore='OKCOPY + FAIL + MISMATCHES + XTRA'
    if %ERRORLEVEL% EQU 14 SET msgMore='FAIL + MISMATCHES + XTRA'
    if %ERRORLEVEL% EQU 13 SET msgMore='OKCOPY + FAIL + MISMATCHES'
    if %ERRORLEVEL% EQU 12 SET msgMore='FAIL + MISMATCHES'
    if %ERRORLEVEL% EQU 11 SET msgMore='OKCOPY + FAIL + XTRA'
    if %ERRORLEVEL% EQU 10 SET msgMore='FAIL + XTRA'
    if %ERRORLEVEL% EQU 9 SET msgMore='OKCOPY + FAIL'
    if %ERRORLEVEL% EQU 8 SET msgMore='FAIL'
    if %ERRORLEVEL% EQU 7 SET msgMore='OKCOPY + MISMATCHES + XTRA'
    if %ERRORLEVEL% EQU 6 SET msgMore='MISMATCHES + XTRA'
    if %ERRORLEVEL% EQU 5 SET msgMore='OKCOPY + MISMATCHES'
    if %ERRORLEVEL% EQU 4 SET msgMore='MISMATCHES'
    if %ERRORLEVEL% EQU 3 SET msgMore='OKCOPY + XTRA'
    if %ERRORLEVEL% EQU 2 SET msgMore='XTRA'
    if %ERRORLEVEL% EQU 1 SET msgMore='OKCOPY'
    if %ERRORLEVEL% EQU 0 SET msgMore='No Change'
SET msg="Net sync proccess finished with %msgMore%"
powershell -ExecutionPolicy ByPass -File %currentDir%/1.ps1 %msg% %usn% %pwd% %emailTo% %SYSTEMDRIVE%
net use s: /delete
del %SYSTEMDRIVE%\log.txt

Τα αντίγραφα ασφαλείας που παράγονται στον backup προορισμό αποτελούν σε κάθε περίπτωση ακριβή αντίγραφα του φακέλου αφετηρίας. Αυτό σημαίνει ότι όταν ένα αρχείο, ένας φάκελος, πολλά αρχεία ή φάκελοι πάψουν να υπάρχουν στην αφετηρία, θα διαγραφούν και από τον προορισμό κατά την εκτέλεση της backup διαδικασίας. Πάντως, μπορείτε αρχικά να δοκιμάσετε το πρόγραμμα σε test αφετηρία και προορισμό backup για να σιγουρευτείτε ως προς τον τρόπο λειτουργίας του.

ΣΗΜΑΝΤΙΚΟ: Η αποστολή των email notifications γίνεται μέσω SSL (Secure Sockets Layer) το οποίο εξασφαλίζει την ασφάλεια μέσω κρυπτογράφησης της σύνδεσης μεταξύ του υπολογιστή σας και του Gmail SMTP Server. Η Google δεν υποστηρίζει άλλον τρόπο σύνδεσης, οπότε οποιαδήποτε εναλλακτική λύση για την αποστολή των email notifications θα ήταν εκ των προτέρων ανέφικτη.

Επεξήγηση κωδ. λαθών:

►"No Change": Δεν βρέθηκαν αλλαγές μεταξύ πηγής και προορισμού.
►"OKCOPY": Τα αντίγραφα ασφαλείας επικαιροποιήθηκαν με επιτυχία.
►"XTRA": Βρέθηκαν αρχεία στον προορισμό που δεν υπάρχουν στην πηγή.
►"MISMATCHES": Δεν προσπελάστηκαν οι λεπτομέρειες ορισμένων αρχείων σε πηγή ή/και προορισμό.
►"FAIL": Αποτυχία στην δημιουργία αντιγράφων ασφαλείας.
►"FATAL ERROR": Η διαδικασία δημιουργίας αντιγράφων ασφαλείας δεν μπόρεσε να ξεκινήσει.

Για οποιαδήποτε απορία οι τεχνικοί μας απαντάνε στο e-mail support@backup-experts.gr

Με το πρόγραμμα που μόλις δημιουργήσατε μπορείτε να διατηρείτε τοπικά αντίγραφα ασφαλείας των αρχείων σας με τον πιο αποτελεσματικό και γρήγορο τρόπο που το λειτουργικό σύστημα των Windows μπορούν να προσφέρουν.

Να έχετε υπόψιν σας ότι η διατήρηση και η καθημερινή επικαιροποίηση αντιγράφων ασφαλείας backup είναι πολύ σημαντική, όμως μια στιβαρή backup στρατηγική προϋποθέτει και την ταυτόχρονη διατήρηση cloud αντιγράφων ασφαλείας, όπως η υπηρεσία Backup Experts Cloud Backup.

ΑΥΤΟΜΑΤΗ ΠΡΟΓΡΑΜΜΑΤΙΣΜΕΝΗ ΕΚΤΕΛΕΣΗ:

Διαβάστε αναλυτικές οδηγίες ΕΔΩ για το πώς θα θέσετε την εκτέλεση δημιουργίας αντιγράφων ασφαλείας σε τακτά χρονικά διαστήματα.

Το ως άνω πρόγραμμα παρέχεται "όπως είναι" και η Backup Experts δεν προσφέρει εγγύηση ούτε φέρει ευθύνη για τη λειτουργία ή την καταλληλότητά του.

Επιστροφή