Criando uma rotina de backup no Mac através de script.

Ja temos várias maneiras de fazer backup dos nossos dados, cada um tem o seu jeito preferido, a sua ferramenta de confiança!

No Mac temos um aplicativo muito bom, a “Máquina do Tempo”, ou “Time Machine”.

Porém neste post vou dar um exemplo, usando o rsync, um software livre encontrado em qualquer distribuição UNIX.

Para instalá-lo, usar o Mac ports, Homebrew ou qualquer gerenciador de software de sua preferência! (Desculpe, não é o objetivo aqui mostrar sua instalação)

A grande vantagem do rsync é que voce pode fazer backup de forma incremental dos seus dados, e não precisa ficar apagando fotos backup antigo (snapshots), caso fique cheio seu HD Externo de backup.

Segue o script run-backup.sh.command :

* O .command é apenas para ficar como um atalho do desktop do meu mac e ser iterativo, pois se fosse apenas o shell script, se eu quisesse ver o resultado deveria executá-lo pelo terminal.


# Simple script for run an incremental backup using rsync unix command.
# autor: matafe
#!/bin/bash

echo "Running My Backup..."

SOURCE_FOLDER="/Users/matafe/"
TARGET_FOLDER="/Volumes/matafe-backup/MyBackup"

EXCLUDE_FILES=('*.class' '*.jasper' '*.log' '.Trash' '.grails' '.jenkins' '.gradle' '.m2' '.ivy2' '.nmp' '.dropbox' 'Library')

TMP_EXCLUDE=""

for i in "${EXCLUDE_FILES[@]}"
do
	TMP_EXCLUDE="$TMP_EXCLUDE --exclude=$i"
done

CMD="rsync -av --progress $TMP_EXCLUDE $SOURCE_FOLDER $TARGET_FOLDER"

echo "$CMD"

eval $CMD

read -p "Press any key to continue... " -n1 -s

echo "Done."

Já é bem auto explicativo, mas ai vai algumas observações:

– De: /Users/matafe/
– Para: /Volumes/matafe-backup/MyBackup
– Irá excluir alguns arquivos: .log, *.class, …. ( não quero copia-los )
– No final ira mostrar o resultado e aguardar por pressionar algum tecla para fechar.

E ai? Qual é a sua ferramenta preferida?

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s