Auto - Upload FTP BKP - Clean V2

Iniciado por DanielDuRio, Maio 04, 2023, 10:23 AM

tópico anterior - próximo tópico

#!/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
sync; echo 3 > /proc/sys/vm/drop_caches

dirbkp=/media/BKPLOCAL/dump/
mkdir $dirbkp

vms=(101 504)

for vm in "${vms[@]}"
do
    nice -n20 vzdump $vm --mode snapshot --dumpdir $dirbkp/ --compress zstd
    sleep 2
done

find $dirbkp -mtime +3 | xargs -n1 rm

snapshots=(

  "SYNC2/vm-101-disk-0@UPLOCAL"
  "SYNC2/vm-504-disk-0@UPLOCAL"
  "SYNC2/vm-504-disk-1@UPLOCAL"

)

for snapshot in "${snapshots[@]}"; do

save=/media/BKPLOCAL/dump/$(echo $snapshot | awk -F/ '{print $2}' | awk -F@ '{print $1}').zfs.zstd.$(date +\%Y_\%m_\%d_\%H_\%M_\%S).

sleep 1
  zfs snap "$snapshot"
sleep 1
  zfs send -Rpvc -- "$snapshot" | mbuffer -m 1G | lzop -c | mbuffer -m 2G |split -x --bytes 25G - $save
sleep 1
zfs destroy "$snapshot"
done

#!/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

DIRETORIO_MONITORADO="/media/BKPLOCAL/dump"

inotifywait -m -e moved_to -e create -e close_write  --format '%w%f' --exclude '\.(tmp|log)$' "$DIRETORIO_MONITORADO" | while read ARQUIVO
do
ARQUIVO_COM_CAMINHO="$ARQUIVO"
NOME=$(echo $ARQUIVO | awk -F "/" '{print $NF}')

Very1=$(stat -c %s "$ARQUIVO_COM_CAMINHO")
sleep 6
echo Tamanho Atual $Very1

if [ $Very1 -eq $(stat -c %s "$ARQUIVO_COM_CAMINHO" ) ]
  then

curl -T $ARQUIVO_COM_CAMINHO ftp://ftp.1fichier.com/Sing_$NOME --user duriothecomp2:danieldurio2 --retry 999 --retry-max-time 0 --retry-delay 60&

find $DIRETORIO_MONITORADO -mtime +3 | xargs -n1 rm

  fi
done

#!/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

SCRIPT="/root/monitor.sh"

# Verifica se o script já está em execução
if pgrep -f "$SCRIPT" > /dev/null
then
  # O script já está em execução, não precisamos fazer nada
  exit 0
else
  # O script não está em execução, vamos iniciá-lo
  bash "$SCRIPT" &
  exit 0
fi