mirror of
https://codeberg.org/ACM/Backup-System.git
synced 2025-12-17 20:54:55 -05:00
Add source
Add initial source files.
This commit is contained in:
parent
f0d5dc2303
commit
19fa0a13b6
7 changed files with 213 additions and 0 deletions
86
BACKUP/BACKUP.SH
Normal file
86
BACKUP/BACKUP.SH
Normal file
|
|
@ -0,0 +1,86 @@
|
|||
#!/bin/bash
|
||||
# Primary backup script containing incremental backup commands.
|
||||
|
||||
# More comments will be added in the future.
|
||||
|
||||
# Backup Script
|
||||
|
||||
version="v0.1.0-a.1"
|
||||
|
||||
# Add "-a" flag between "--bwlimit=1000" and "--backup" for async (higher CPU usage).
|
||||
|
||||
# Color-Coding
|
||||
|
||||
white='\e[0;37m'
|
||||
green='\e[0;32m'
|
||||
yellow='\e[0;33m'
|
||||
red='\e[0;31m'
|
||||
|
||||
echo -e "${white}"
|
||||
|
||||
echo -e "${yellow}Running ${green}${version}${white}\n"
|
||||
|
||||
# Remove Existing Archives
|
||||
|
||||
echo -e "${yellow}Removing old archives.${white}\n"
|
||||
|
||||
sudo rm /path/to/service/services.7z
|
||||
sudo rm /path/to/service/services.7z.*
|
||||
|
||||
sudo rm /var/www/html.7z
|
||||
sudo rm /var/www/html.7z.*
|
||||
|
||||
sudo rm /opt/opt.7z
|
||||
sudo rm /opt/opt.7z.*
|
||||
|
||||
echo -e "\n${green}Finished.${white}\n"
|
||||
|
||||
# Incremental Backups
|
||||
|
||||
echo -e "${yellow}Creating backup archives.${white}\n"
|
||||
|
||||
cd /path/to/service
|
||||
sudo nice -n11 ionice --class 2 7zz a services
|
||||
|
||||
sudo nice -n11 ionice --class 2 rsync --bwlimit=1000 -a --backup --whole-file --suffix=`date +'.%F_%H-%M'` /path/to/service/services.7z /path/to/backups/path/to/service.7z
|
||||
|
||||
#cd /var/www/html
|
||||
#sudo nice -n11 ionice --class 2 sudo 7zz a html
|
||||
#sudo nice -n11 ionice --class 2 rsync --bwlimit=1000 -a --backup --whole-file --suffix=`date +'.%F_%H-%M'` /var/www/html/html.7z /path/to/backups/var/www/html.7z
|
||||
|
||||
cd /opt
|
||||
sudo nice -n11 ionice --class 2 7zz a opt
|
||||
sudo nice -n11 ionice --class 2 rsync --bwlimit=1000 -a --backup --whole-file --suffix=`date +'.%F_%H-%M'` /opt/opt.7z /path/to/backups/opt.7z
|
||||
|
||||
sudo nice -n11 ionice --class 2 sudo rsync -rtDvz /var/spool/cron root/backup/var/spool/cron
|
||||
sudo nice -n11 ionice --class 2 sudo rsync -rtDvz /etc/fstab root/backup/etc/fstab
|
||||
sudo nice -n11 ionice --class 2 sudo rsync -rtDvz /etc/sudoers root/backup/etc/sudoers
|
||||
sudo nice -n11 ionice --class 2 sudo rsync -rtDvz /etc/apt/sources.list /path/to/backups/etc/apt
|
||||
|
||||
# Full Backups
|
||||
|
||||
sudo nice -n11 ionice --class 2 rsync --bwlimit=1000 -a --backup --whole-file --suffix=`date +'.%F_%H-%M'` /path/to/service/services.7z /path/to/full-backups/path/to/service.7z
|
||||
sudo nice -n11 ionice --class 2 rsync --bwlimit=1000 -a --backup --whole-file --suffix=`date +'.%F_%H-%M'` /var/www/html/html.7z /path/to/full-backups/var/www/html.7z
|
||||
sudo nice -n11 ionice --class 2 rsync --bwlimit=1000 -a --backup --whole-file --suffix=`date +'.%F_%H-%M'` /opt/opt.7z /path/to/backups/opt.7z
|
||||
|
||||
sudo nice -n11 ionice --class 2 sudo rsync -rtDvz /var/spool/cron /path/to/full-backups/var/spool/cron
|
||||
sudo nice -n11 ionice --class 2 sudo rsync -rtDvz /etc/fstab /path/to/full-backups/etc/fstab
|
||||
sudo nice -n11 ionice --class 2 sudo rsync -rtDvz /etc/sudoers /path/to/full-backups/etc/sudoers
|
||||
sudo nice -n11 ionice --class 2 sudo rsync -rtDvz /etc/apt/sources.list /path/to/full-backups/etc/apt
|
||||
|
||||
echo -e "\n${green}Complete.${white}\n"
|
||||
|
||||
# Remove Leftovers
|
||||
|
||||
echo -e "${yellow}Removing leftovers.${white}\n"
|
||||
|
||||
sudo rm /path/to/service/services.7z
|
||||
sudo rm /path/to/service/services.7z.*
|
||||
|
||||
sudo rm /var/www/html.7z
|
||||
sudo rm /var/www/html.7z.*
|
||||
|
||||
sudo rm /opt/opt.7z
|
||||
sudo rm /opt/opt.7z.*
|
||||
|
||||
echo -e "\n${green}Complete.${white}\n"
|
||||
11
BACKUP/ROOT.SH
Normal file
11
BACKUP/ROOT.SH
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
#!/bin/bash
|
||||
# Full system backup script.
|
||||
|
||||
# More comments will be added in the future.
|
||||
|
||||
# Full Backup
|
||||
|
||||
cd ../../../
|
||||
sudo 7zz a root-backup
|
||||
sudo rsync -a --backup --suffix=`date +'.%F_%H-%M'` root-backup.7z /path/to/backups/root-backup.7z
|
||||
sudo rm root-backup.7z
|
||||
6
BACKUP/SCOPE.SH
Normal file
6
BACKUP/SCOPE.SH
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
#!/bin/bash
|
||||
# Startup script for backups.
|
||||
|
||||
# More comments will be added in the future.
|
||||
|
||||
sudo systemd-run --scope --uid=0 -p CPUQuota=10% -p MemoryMax=512M bash /path/to/BACKUP.SH
|
||||
Loading…
Add table
Add a link
Reference in a new issue