schuhpereira
(usa Ubuntu)
Enviado em 10/06/2016 - 18:46h
Boa noite galera
Criei um script que faz backup da pasta /home do usuário. A cópia está funcionando bem copia tudo bem certinho.
Mas fica muito ruim porque tenho que apagar os backups anteriores manualmente, as vezes eu me esqueço de apagar.
Abaixo mostro como está o script
1)
ORIGEM2="/home/$USER"
ORIGEM3="/etc/NetworkManager/system-connections"
DESTINO="/media/$USER/BACKUP/Backup/backup-`date`"
DIAS=1
EXCDESTINO="/media/$USER/BACKUP/Backup/"
#echo
#Backup da pasta /home/$user
echo "Copiando a pasta /home do usuário" && sleep 1
total=$(du -s "$ORIGEM2" | awk '{print $1}')
cp -r "$ORIGEM2" "$DESTINO" &>/dev/null &
while true
do
[[ -z $(pidof cp) ]] && break
copiado=$(du -s "$DESTINO" | awk '{print $1}')
echo "# Copiando arquivos....$((copiado*100/total))%"
done | yad --progress --value=0 --auto-close --no-cancel --auto-kill
echo
# Salva as senhas da rede wifi
echo "Copiando a pasta contendo as redes wifi salvas!" && sleep 1
total=$(du -s "$ORIGEM3" | awk '{print $1}')
cp -r "$ORIGEM3" "$DESTINO" &>/dev/null &
while true
do
[[ -z $(pidof cp) ]] && break
copiado=$(du -s "$DESTINO" | awk '{print $1}')
echo "# Copiando arquivos....$((copiado*100/total))%"
done | yad --progress --value=0 --auto-close --no-cancel --auto-kill
echo
echo "Backup realizado com sucesso." && sleep 5
# Exclusão dos arquivos com mais de 1 dia
echo "Excluindo arquivos com mais de $DIAS dia..."
find $EXCDESTINO -ctime +$DIAS -type f -exec rm -rvf {} \;
echo "Saindo e voltando para o menu" && sleep 5
break ;;
O problema é que ele não apaga os arquivos anteriores, dizendo que o diretório não foi encontrado.
Alguém pode dar um help?