
Bom dia
Eu uso este script para fazer backup do meu PC doméstico em um PC remoto
#!/bin/bash
#Todays date in ISO-8601 format:
DAY0=`date -I`
#Yesterdays date in ISO-8601 format:
DAY1=`date -I -d "1 day ago"`
#The source directory:
SRC="/home/honza/Downloads/"
#The target directory:
TRG="[email protected]:/media/zaloha/$DAY0"
#The link destination directory:
LNK="[email protected]:/media/zaloha/$DAY1"
#The rsync options:
OPT="-avh --delete --link-dest=$LNK
#Execute the backup
rsync $OPT $SRC $TRG
#3 days ago in ISO-8601 format
DAY3=`date -I -d "3 days ago"`
#Delete the backup from 3 days ago, if it exists
if [ -d /[email protected]:/media/zaloha/$DAY3 ]
then rm -R /[email protected]:/media/zaloha/$DAY3
fi
Não sei como excluir backup antigo com mais de 3 dias. O script funciona bem quando faço backup no mesmo PC, mas não em um controle remoto.
--link-dest arg does not exist: /[email protected]:/media/zaloha/2013-03-15
e backups antigos não são excluídos.
Também funciona bem quando um script está sendo executado no PC remoto. Um SRC é
SRC = "[email protected]:/home/hunts/Downloads"
Mas não sei se é a solução de gestão? obrigado
Responder1
Não creio que este comando de exclusão funcione. Talvez tente usar um comando SSH direto para excluir o arquivo, como:
ssh [email protected] rm -rf /media/zaloha/$DAY3
Desculpe, mas não posso dizer por que o argumento "link-dest" não está funcionando.