Browse Source

Fix backup script

master
parent
commit
83d377f365
  1. 9
      Backup/2sync
  2. 12
      Backup/2sync_all
  3. 12
      Backup/MakeFirefoxBackup
  4. 26
      Backup/MakeHomeBackup
  5. 21
      Backup/MakeSystemBackup
  6. 3
      Backup/RestoreBackup

9
Backup/2sync

@ -2,13 +2,14 @@
# Двухсторонняя синхронизация
# Использование:
# 2sync src dest
# ./2sync src dest [opt1] [opt2]
src=$1
dest=$2
opt=$3
opt1=$3
opt2=$4
rsync -r -t -v $opt --progress -s --omit-dir-times $src $dest
rsync -r -t -v $opt --progress -s --omit-dir-times $dest $src
rsync -r -t -v $opt1 $opt2 --progress -s --omit-dir-times $src $dest
rsync -r -t -v $opt1 $opt2 --progress -s --omit-dir-times $dest $src

12
Backup/2sync_all

@ -2,14 +2,18 @@
# Двухсторонняя синхронизация с сервером всех объектов в текущей папке
# Использование:
# 2sync_all filter dest_base opt
# ./2sync_all filter dest_base opt1 opt2
# filter - маска по файлам
# dest_base - базовый путь для синхронизации, может содержать сервер, например: backup@www_server:/media/Backup
# opt - дополнительные опции rsync. Для теста можно использовать: opt = -n
# opt1,2 - дополнительные опции rsync.
# Примеры:
# 1. Опция "-n" для теста
# 2. Опция "--delete" для удаления файлов
filter=$1
dest_base=$2
opt=$3
opt1=$3
opt2=$4
files=`ls -p | grep / | grep ${filter} |sort`
@ -19,7 +23,7 @@ for file in $files; do
src="${cur_dir}/${file}/"
dest="${dest_base}/${file}/"
./2sync $src $dest $opt
./2sync $src $dest $opt1 $opt2
done

12
Backup/MakeFirefoxBackup

@ -1,10 +1,18 @@
#!/bin/bash
backup_dir="."
# Делает бэкап папки ~/.mozilla
# Использование:
# ./MakeFirefoxBackup backup_dir
backup_dir=$1
if [ "$backup_dir" == "" ]; then
backup_dir="."
fi
# Делаем бекап
cd ~
tar cvpzf "${backup_dir}/$(hostname)_mozilla_backup_$(date +%yy%mm%dd-%Hh%Mm%Ss).tgz" \
--exclude=.mozilla/firefox/*.default/Cache \
--exclude=.mozilla/firefox/*.*/Cache \
--exclude=.mozilla/firefox/*.*/storage \
.mozilla

26
Backup/MakeHomeBackup

@ -1,8 +1,15 @@
#!/bin/bash
maxFilesCount=3
backup_dir="/home"
# Делает бэкап папки /home
# Использование:
# ./MakeHomeBackup backup_dir
backup_dir=$1
if [ "$backup_dir" == "" ]; then
backup_dir="/home"
fi
maxFilesCount=3
# Выясняем, какие старые архивы нам нужно удалить
files=`find ${backup_dir}/*home_backup_*|sort`
delFiles=`./GetDelFileList $maxFilesCount "${files}"`
@ -12,21 +19,19 @@ cd /home
sudo tar cvpzf "${backup_dir}/$(hostname)_home_backup_$(date +%yy%mm%dd-%Hh%Mm%Ss).tgz" \
--exclude=*home_backup*.tgz \
--exclude=.thumbnails \
--exclude=.mozilla/firefox/*.default/Cache \
--exclude=.googleearth/Cache \
--exclude=.mozilla/firefox/*.*/storage \
--exclude=*/.cache/* \
--exclude=.cache \
--exclude=/.config/chromium/*/CacheStorage \
--exclude=*/.config/skypeforlinux/Cache \
--exclude=.local \
--exclude=.steam/config/htmlcache/ \
--exclude=.steam/appcache/ \
--exclude=.steam/package \
--exclude=.steam/ubuntu12_32 \
--exclude=.local/share/Steam \
--exclude=.var/app/app.organicmaps.desktop/data \
--exclude=media \
--exclude=.steam \
--exclude=.smartgit/updates \
--exclude=.wine*/*/windows/ \
--exclude=.googleearth \
--exclude=*/.Genymobile \
--exclude=*/.config/skypeforlinux/Cache \
--exclude=*/3D_Model/assets \
--exclude=private \
--exclude=MyProgs \
@ -35,7 +40,6 @@ sudo tar cvpzf "${backup_dir}/$(hostname)_home_backup_$(date +%yy%mm%dd-%Hh%Mm%S
--exclude=.npm \
.
# Удаляем старые архивы
for i in $delFiles
do

21
Backup/MakeSystemBackup

@ -1,25 +1,40 @@
#!/bin/bash
maxFilesCount=3
backup_dir=""
# Делает бэкап папки /
# Использование:
# ./MakeSysBackup backup_dir
backup_dir=$1
if [ "$backup_dir" == "" ]; then
backup_dir="/"
fi
maxFilesCount=3
# Выясняем, какие старые архивы нам нужно удалить
files=`find ${backup_dir}/*sysbackup_*|sort`
delFiles=`./GetDelFileList $maxFilesCount "${files}"`
cd /
sudo tar cvpzf "${backup_dir}/$(hostname)_sys_etc_backup_$(date +%yy%mm%dd-%Hh%Mm%Ss).tgz" \
/etc
sudo tar cvpzf "${backup_dir}/$(hostname)_sysbackup_$(date +%yy%mm%dd-%Hh%Mm%Ss).tgz" \
--exclude=/proc \
--exclude=/dev \
--exclude=/lost+found \
--exclude=/*sysbackup*.tgz \
--exclude=/mnt \
--exclude=/sys \
--exclude=/home \
--exclude=/media \
--exclude=/var/log \
--exclude=/var/cache \
--exclude=/var/lib/flatpak \
--exclude=/var/tmp \
--exclude=/usr/share/games \
--exclude=/usr/share \
--exclude=/tmp \
--exclude=/opt \
/
# Удаляем старые архивы

3
Backup/RestoreBackup

@ -1,2 +1,3 @@
#!/bin/bash
sudo tar xvpzf %1 -C /
sudo tar xvpzf $1 -C /

Loading…
Cancel
Save