Portál AbcLinuxu, 2. května 2025 08:35

Zálohování

10.9.2007 10:28 | Přečteno: 1526× | Linux

Tento script používám pro zálohování, doufám, že to třeba někomu pomůže a poslouží jako inspirace

#!/bin/bash
#BACKUP_DEVICE=""
BACKUP_POINT="/data"
BACKUP_PATH="$BACKUP_POINT/backup"

datum=`/bin/date +"%Y-%m-%d"`
BACKUP_DIR="$BACKUP_PATH/$datum"
BACKUP_FULL_DATE="$BACKUP_PATH/full-backup"
BACKUP_NEWER=""
DAY_OF_WEEK=`/bin/date +%u`
DO_FULL_BACKUP=""

if [ "$1" = "full" ]; then
  DO_FULL_BACKUP="-full"
else
  if [ "$DAY_OF_WEEK" = "7" ]; then
    DO_FULL_BACKUP="-full"
  else
    if [ -f $BACKUP_FULL_DATE ]; then
      DO_FULL_BACKUP=""
    else
      DO_FULL_BACKUP="-full"
    fi
  fi
fi 

if [ "$DO_FULL_BACKUP" = "-full" ]; then
  /bin/date +%D > $BACKUP_FULL_DATE
else
  DATE=`/bin/cat $BACKUP_FULL_DATE`
  BACKUP_NEWER="--newer "$DATE""
fi

/bin/mkdir $BACKUP_DIR$DO_FULL_BACKUP
/bin/tar -czv $BACKUP_NEWER -f $BACKUP_DIR$DO_FULL_BACKUP/root.tgz --exclude=/data/* --exclude=/proc/* / > $BACKUP_DIR$DO_FULL_BACKUP/root.filelist 2> $BACKUP_DIR$DO_FULL_BACKUP/ro
ot.errors

#clean old backups
cd $BACKUP_PATH
#delete incremental backups older than 14 days
/usr/bin/find -maxdepth 1 -ctime +14 -type d ! -iname '*-full' -exec rm -rf '{}' \;
#delete full backups older than 2 months
/usr/bin/find -maxdepth 1 -ctime +62 -type d   -iname '*-full' -exec rm -rf '{}' \;
#rsync to casablanca
/usr/bin/rsync -rltzu4v --delete  --delete-excluded --rsh="/usr/bin/ssh -l backup" /data/backup/* backup-machine:~/backup

       

Hodnocení: 80 %

        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

10.9.2007 11:48 helemesecotonese
Rozbalit Rozbalit vše Re: Zálohování
Odpovědět | Sbalit | Link | Blokovat | Admin
nejstarsi script na svete, v ruznych podobach je na internetu snad vsude...
10.9.2007 11:54 tired joe | skóre: 17 | blog: rootlet | Trenčín/Bratislava
Rozbalit Rozbalit vše Re: Zálohování
Vynájsť vlastné koleso je najlepší spôsob učenia sa. Ja v tom problém nevidím :)
Človek sa riadi zdravým rozumom, až keď už nezostáva žiadne iné riešenie.

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.