-
Notifications
You must be signed in to change notification settings - Fork 65
/
Copy pathbackblaze-backups
136 lines (96 loc) · 3.86 KB
/
backblaze-backups
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
#!/bin/bash
# Aurthor: Muhammad Asim
# Purpose: Backblaze Automated Backups for OS Windows/Linux
# Contact: <[email protected]> https://www.youtube.com/c/AWSLinuxWindows
# Put the Directory/File Name in the variable FILENAME
FILENAME="power"
BACKUP="$FILENAME"
DATE=`date +'%d-%m-%Y'`
# Blackblaze Setup
B2_ACC_ID="PUT Your Account ID"
B2_APP_KEY="Put Your KeY"
B2_BUCKET_NAME="Buckey Name"
# Compression Setup, creating a tar
tar -czvf "$BACKUP"."$DATE".tar.gz "$BACKUP"
# Local Retention Setup
IGNORE_1=`ls -lthr | tail -n2 | awk '{print $NF}' | head -n1`
IGNORE_2=`ls -lthr | tail -n2 | awk '{print $NF}' | tail -n1`
if [ -d "$PWD/Backblaze" ]
then
echo -e "\nDirectory "$PWD/Backblaze" already exists\n"
else
echo -e "\n Creating a Directory "$PWD/Backblaze" \n"
mkdir $PWD/Backblaze
fi
mv "$BACKUP"."$DATE".tar.gz $PWD/Backblaze
cd $PWD/Backblaze
ls --ignore="$IGNORE_1" --ignore="$IGNORE_2" | xargs rm -rf
# Upload to Blackblaze
echo "starting upload "$BACKUP"."$DATE".tar.gz to b2 at $(date +'%d-%m-%Y %H:%M:%S')"
b2 authorize-account $B2_ACC_ID $B2_APP_KEY
b2 upload_file $B2_BUCKET_NAME "$BACKUP"."$DATE".tar.gz "$BACKUP"."$DATE".tar.gz
echo "finished uploading "$BACKUP"."$DATE".tar.gz to b2 at $(date +'%d-%m-%Y %H:%M:%S')"
exit 0
#END
# ref:https://medium.com/@aslamhadi/daily-backup-database-to-backblaze-cloud-storage-f6659d0e2f53
# ref: https://www.youtube.com/watch?v=GOkAy2RqRQk
# ref: https://www.youtube.com/watch?v=xzgwDbe7foQ
# Installations
https://chocolatey.org/docs/installation
Powershell command ---> run as administrator
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
choco install python ---> (5 Times Yes)
https://www.backblaze.com/b2/docs/quick_command_line.html
pip install --upgrade --ignore-installed b2
# Git Bash Setup
https://git-scm.com/downloads
# Git Bash Task Schedular Setup
"C:\Program Files\Git\git-bash.exe"
--cd-to-home /c/Users/Administrator/Desktop/backup.sh
# Backblaze CLI Installation
https://www.backblaze.com/b2/docs/quick_command_line.html
---> pip install --upgrade b2
# Best open source tool is Cyberduck
https://cyberduck.io/
##############################################################
#!/bin/bash
# Aurthor: Muhammad Asim
# Purpose: Backblaze Automated Backups for OS Windows/Linux
# Contact: <[email protected]> https://www.youtube.com/c/AWSLinuxWindows
# Adding Directories to the backups, tip create a new directory manually & put the script inside the MANUAL directory created by yourself.
cd /c/Users/Administrator/MANUAL
mkdir backup
cp -rv /c/TARGET /c/Users/Administrator/MANUAL/backup
# Put the Directory/File Name in the variable FILENAME
FILENAME="backup"
BACKUP="$FILENAME"
DATE=`date +'%d-%m-%Y'`
# Blackblaze Setup
B2_ACC_ID="YOURID"
B2_APP_KEY="YOURKEY"
B2_BUCKET_NAME="cloudgeeks-prod"
# Compression Setup, creating a tar
tar -czvf "$BACKUP"."$DATE".tar.gz "$BACKUP"
# Local Retention Setup
IGNORE_1=`ls -lthr | tail -n2 | awk '{print $NF}' | head -n1`
IGNORE_2=`ls -lthr | tail -n2 | awk '{print $NF}' | tail -n1`
if [ -d "$PWD/Backblaze" ]
then
echo -e "\nDirectory "$PWD/Backblaze" already exists\n"
else
echo -e "\n Creating a Directory "$PWD/Backblaze" \n"
mkdir $PWD/Backblaze
fi
mv "$BACKUP"."$DATE".tar.gz $PWD/Backblaze
cd $PWD/Backblaze
ls --ignore="$IGNORE_1" --ignore="$IGNORE_2" | xargs rm -rf
# Upload to Blackblaze
echo "starting upload "$BACKUP"."$DATE".tar.gz to b2 at $(date +'%d-%m-%Y %H:%M:%S')"
b2 authorize-account $B2_ACC_ID $B2_APP_KEY
b2 upload_file $B2_BUCKET_NAME "$BACKUP"."$DATE".tar.gz "$BACKUP"."$DATE".tar.gz
echo "finished uploading "$BACKUP"."$DATE".tar.gz to b2 at $(date +'%d-%m-%Y %H:%M:%S')"
echo "Now removing the directory backup"
cd ..
rm -rf backup
exit 0
#END