mirror of
https://github.com/brunofontes/linuxShortcuts.git
synced 2025-04-20 07:37:11 +00:00
Compare commits
No commits in common. "790e5f0d9b224cfbd051c6ea5f32c96d57af0853" and "8f19bc32d786688cbf107a37cc4f249922e5f5cc" have entirely different histories.
790e5f0d9b
...
8f19bc32d7
@ -5,6 +5,7 @@ function backup () {
|
|||||||
#--stats = show stats at end
|
#--stats = show stats at end
|
||||||
#--progress = show each file being processed
|
#--progress = show each file being processed
|
||||||
nice -n 19 borg create --compression auto,zstd,9 --exclude-from=./exclude $*
|
nice -n 19 borg create --compression auto,zstd,9 --exclude-from=./exclude $*
|
||||||
|
checkBackup "$1"
|
||||||
}
|
}
|
||||||
|
|
||||||
function checkBackup() {
|
function checkBackup() {
|
||||||
@ -19,11 +20,23 @@ function checkBackup() {
|
|||||||
echo
|
echo
|
||||||
}
|
}
|
||||||
|
|
||||||
function pruneBackup() {
|
function verifyBackup() {
|
||||||
echo -e "\e[97m`date +%r` - Prune old backups...\e[39m"
|
# Verify all data - takes long time
|
||||||
borg prune -v --list --dry-run --keep-weekly=8 --keep-monthly=12 --keep-yearly=3 $1
|
echo -n "`date +%r`- Checking the backup..."
|
||||||
|
borg check --verify-data "$1" > "$1"_status
|
||||||
|
if [[ $(cat "$1"_status) != "" ]]; then
|
||||||
|
echo -e "\n\033[1;31m ERROR UNPACKING $1 \033[0m"
|
||||||
|
else
|
||||||
|
echo ".OK!"
|
||||||
|
rm "$1"_status
|
||||||
|
fi
|
||||||
|
echo
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function pruneBackup() {
|
||||||
|
echo -e "\e[97m`date +%r` - Prune old backups...\e[39m"
|
||||||
|
borg prune -v --list --dry-run --keep-within=1m --keep-monthly=3
|
||||||
|
}
|
||||||
|
|
||||||
cd /home/bruno/Apps/linuxShortcuts/Backup/
|
cd /home/bruno/Apps/linuxShortcuts/Backup/
|
||||||
|
|
||||||
@ -34,18 +47,11 @@ else
|
|||||||
ActiveDisk=1
|
ActiveDisk=1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
LastBackupSet=$(< .lastBackupSetDisk_$lastDisk)
|
|
||||||
if [ "$LastBackupSet" = '1' ]; then
|
|
||||||
ActiveBackupSet=2
|
|
||||||
else
|
|
||||||
ActiveBackupSet=1
|
|
||||||
fi
|
|
||||||
|
|
||||||
YEAR=`date +%Y`
|
YEAR=`date +%Y`
|
||||||
HDPath="/run/media/bruno/Backup_$ActiveDisk"
|
HDPath="/run/media/bruno/Backup_$ActiveDisk"
|
||||||
|
|
||||||
BACKUPPATH="$HDPath/Repository_$ActiveBackupSet"
|
BACKUPPATH="$HDPath/`date +%Y-Q%q`"
|
||||||
YEARMONTH=`date +%Y-%m-%d`
|
YEARMONTH=`date +%m_%b-%d`
|
||||||
HDYEARMONTH="$BACKUPPATH::$YEARMONTH"
|
HDYEARMONTH="$BACKUPPATH::$YEARMONTH"
|
||||||
|
|
||||||
echo
|
echo
|
||||||
@ -76,8 +82,15 @@ if [ ! -d "$BACKUPPATH" ]; then
|
|||||||
mkdir -p "$BACKUPPATH"
|
mkdir -p "$BACKUPPATH"
|
||||||
borg init --encryption=none $BACKUPPATH
|
borg init --encryption=none $BACKUPPATH
|
||||||
|
|
||||||
#Prune old backups
|
#If diskSpace less than ~100GB...
|
||||||
pruneBackup $BACKUPPATH
|
diskSpace=$(df --local --output=avail,target | grep "$HDPath\$" | awk '{ print $1}')
|
||||||
|
if [[ "$diskSpace" < 100000000 ]]; then
|
||||||
|
# delete oldest backup folder
|
||||||
|
oldestFolder=$(/bin/ls -dt "$HDPath"/????-Q? | tail -n 1)
|
||||||
|
echo
|
||||||
|
echo "$HDPath/$oldestFolder"
|
||||||
|
rm --recursive --interactive=once "$HDPath/$oldestFolder"
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo -e "\e[97m`date +%r` - Copying Linux Home folder (1/7)...\e[39m"
|
echo -e "\e[97m`date +%r` - Copying Linux Home folder (1/7)...\e[39m"
|
||||||
@ -96,7 +109,7 @@ backup "$HDYEARMONTH-Multimedia-MyDocuments" "/run/media/bruno/Multimedia/MyDocu
|
|||||||
echo -e "\e[97m`date +%r` - Copying Música folder (4/7)...\e[39m"
|
echo -e "\e[97m`date +%r` - Copying Música folder (4/7)...\e[39m"
|
||||||
backup "$HDYEARMONTH-Multimedia-musica" "/run/media/bruno/Multimedia/Música/" || echo ""
|
backup "$HDYEARMONTH-Multimedia-musica" "/run/media/bruno/Multimedia/Música/" || echo ""
|
||||||
|
|
||||||
checkBackup "$BACKUPPATH"
|
verifyBackup "$BACKUPPATH"
|
||||||
|
|
||||||
# Rsync Fotos e VMs
|
# Rsync Fotos e VMs
|
||||||
echo -e "\e[97m`date +%r` - Copying Fotos folder (5/7)...\e[39m"
|
echo -e "\e[97m`date +%r` - Copying Fotos folder (5/7)...\e[39m"
|
||||||
@ -112,7 +125,6 @@ nice -n 19 rsync -a "/run/media/bruno/Multimedia/Virtual Machines" "$HDPath/$YEA
|
|||||||
echo -e "\e[97m`date +%r` - Backup finished. Please, verify your log files.\e[39m"
|
echo -e "\e[97m`date +%r` - Backup finished. Please, verify your log files.\e[39m"
|
||||||
|
|
||||||
echo "$ActiveDisk" > .lastDisk
|
echo "$ActiveDisk" > .lastDisk
|
||||||
echo "$ActiveBackupSet" > ".lastBackupSetDisk_$lastDisk"
|
|
||||||
|
|
||||||
kdialog --title "Backup Complete" --msgbox "Backup finished successfully"
|
kdialog --title "Backup Complete" --msgbox "Backup finished successfully"
|
||||||
echo
|
echo
|
||||||
|
@ -1,10 +1,9 @@
|
|||||||
/home/bruno/.AndroidStudio3.1
|
/home/bruno/.AndroidStudio3.1
|
||||||
/home/bruno/.cache/
|
/home/bruno/.cache/
|
||||||
/home/bruno/.electron
|
/home/bruno/.electron
|
||||||
/home/bruno/.local/share/dino/files
|
|
||||||
/home/bruno/.local/share/gajim/downloads
|
|
||||||
/home/bruno/.minecraft/
|
/home/bruno/.minecraft/
|
||||||
/home/bruno/.netbeans
|
/home/bruno/.netbeans
|
||||||
|
/home/bruno/.nixnote
|
||||||
/home/bruno/.node-gyp
|
/home/bruno/.node-gyp
|
||||||
/home/bruno/.npm
|
/home/bruno/.npm
|
||||||
/home/bruno/.npm-global
|
/home/bruno/.npm-global
|
||||||
@ -15,7 +14,6 @@
|
|||||||
/home/bruno/.wine/
|
/home/bruno/.wine/
|
||||||
/home/bruno/Android/
|
/home/bruno/Android/
|
||||||
/home/bruno/Apps/Minecraft/Backups/
|
/home/bruno/Apps/Minecraft/Backups/
|
||||||
/home/bruno/Emulation/
|
|
||||||
/home/bruno/Videos/
|
/home/bruno/Videos/
|
||||||
/home/bruno/VirtualBox VMs/
|
/home/bruno/VirtualBox VMs/
|
||||||
/home/bruno/bin/
|
/home/bruno/bin/
|
||||||
|
@ -1,7 +0,0 @@
|
|||||||
if [ $1 ]; then
|
|
||||||
sudo borg list $1
|
|
||||||
else
|
|
||||||
echo
|
|
||||||
echo "ERROR: Backup folder argument is missing. Use folder name to display backup set or FOLDER_NAME::BACKUP_SET to display files."
|
|
||||||
echo
|
|
||||||
fi
|
|
Loading…
Reference in New Issue
Block a user