Browse Source

Add max backup files

master
Alexei 13 years ago
parent
commit
f35fc1ff0f
  1. 42
      Backup/GetDelFileList
  2. 13
      Backup/MakeHomeBackup
  3. 12
      Backup/MakeSystemBackup

42
Backup/GetDelFileList

@ -0,0 +1,42 @@
#!/bin/bash
# -------------Входные параметры---------------
# Максимальное колличество файлов, которое должно остаться
maxFilesCount=$1
# Набор файлов, первые из которых будут удалены
files=$2
# -------------Выходной параметр---------------
# Файлы, которые нужно удалить
delFiles=""
# ---------------------------------------------
# Вычисляем колличество файлов
filesCount=0
for i in $files
do
let filesCount++
done
# Записываем файлы для удаления в переменную delFiles
if [ $maxFilesCount -lt $filesCount ]
then
delFilesIndex=0
let delFilesCount=filesCount-maxFilesCount
for i in $files
do
if [ $delFilesIndex -lt $delFilesCount ]
then
delFiles=`echo -en "${delFiles}\n${i}"`
fi
let delFilesIndex++
done
fi
echo $delFiles

13
Backup/MakeHomeBackup

@ -1,4 +1,11 @@
#!/bin/bash #!/bin/bash
# Выясняем, какие старые архивы нам нужно удалить
maxFilesCount=3
files=`find /home/home_backup_*|sort`
delFiles=`./GetDelFileList $maxFilesCount "${files}"`
# Делаем бекап
cd /home cd /home
sudo tar cvpzf home_backup_$(date +%yy%mm%dd-%Hh%Mm%Ss).tgz \ sudo tar cvpzf home_backup_$(date +%yy%mm%dd-%Hh%Mm%Ss).tgz \
--exclude=home_backup*.tgz \ --exclude=home_backup*.tgz \
@ -6,3 +13,9 @@ sudo tar cvpzf home_backup_$(date +%yy%mm%dd-%Hh%Mm%Ss).tgz \
--exclude=.mozilla/firefox/*.default/Cache \ --exclude=.mozilla/firefox/*.default/Cache \
--exclude=.googleearth/Cache \ --exclude=.googleearth/Cache \
. .
# Удаляем старые архивы
for i in $delFiles
do
sudo rm $i
done

12
Backup/MakeSystemBackup

@ -1,4 +1,10 @@
#!/bin/bash #!/bin/bash
# Выясняем, какие старые архивы нам нужно удалить
maxFilesCount=3
files=`find /sysbackup_*|sort`
delFiles=`./GetDelFileList $maxFilesCount "${files}"`
cd / cd /
sudo tar cvpzf sysbackup_$(date +%yy%mm%dd-%Hh%Mm%Ss).tgz \ sudo tar cvpzf sysbackup_$(date +%yy%mm%dd-%Hh%Mm%Ss).tgz \
--exclude=/proc \ --exclude=/proc \
@ -10,3 +16,9 @@ sudo tar cvpzf sysbackup_$(date +%yy%mm%dd-%Hh%Mm%Ss).tgz \
--exclude=/media \ --exclude=/media \
--exclude=/tmp \ --exclude=/tmp \
/ /
# Удаляем старые архивы
for i in $delFiles
do
sudo rm $i
done

Loading…
Cancel
Save