Por Eduardo Silva para o Pplware
Tal como já apresentado em artigos anteriores, onde mostrámos como o Automator pode ser um mundo de possibilidades dentro do OS X, ou como podemos usar o Automator para Renomear ficheiros, ou ainda como podemos definir períodos de concentração com o Automator e iCal, o Automator é uma ferramenta que permite a automatização de inúmeros processos no Mac OS. Estas automatizações são particularmente interessantes no contexto de processos recorrentes.
Um desses processos é o de fazer backup de diferentes dados. É o que vos propomos hoje, Backups Automáticos com Automator, rsync e iCal.
Hoje em dia o processo de backup mais tradicional (onde guardamos cópias dos nossos dados num disco externo ou um servidor próprio) começa a ser questionado por muitos, dada a crescente adopção de soluções que usam a “Cloud” (e.g.: o Dropbox, Google Drive, Microsoft SkyDrive, etc.). Pessoalmente uso várias dessas soluções, e não irei aqui discutir nem compará-las com as formas “mais tradicionais” de fazer backups. Acho que é ainda uma prática bastante comum fazer backups num disco externo ou num servidor próprio, principalmente quando queremos fazer backups de fotografias, filmes, ou dados mais sensíveis que não queremos guardar na Cloud.
O Mac OS tem uma ferramenta integrada de backup: o Time Machine. Este é sem dúvida uma ferramenta muito interessante, no entanto nem todas as pessoas usam esta ferramenta. Neste artigo irei apresentar uma forma alternativa de fazer backups no Mac OS usando o Automator e outras duas aplicações:
- iCal: para definir os momentos em que os backups devem de ser feitos
- rsync: para copiar/sincronizar os ficheiros a fazer backup
No exemplo seguinte iremos assumir que o backup é feito num disco externo, no entanto o rsync permite da mesma forma fazer backup para um servidor.
Criar o workflow no Automator
Criar Workflow como “iCal Alarm”
1 – abrir o Automator e seleccionar “iCal Alarm”.
2 – adicionar uma mensagem de confirmação (opcional, eu prefiro ter esta opção para confirmar o backup, mas podem optar por fazer sempre o backup sem pedir confirmação).
Isto consegue-se usando o bloco “Ask Confirmation” do Automator.
3 – adicionar um bloco “Run Shell Scrip”, no qual colocaremos o seguinte “comando”:
rsync -aE –ignore-existing /Users/silva/photos-videos/ “/Volumes/BackupDisk/photos-videos/”
- Este comando irá “sincronizar uni-direccionalmente” da directoria local (/Users/silva/photos-videos/) para o BackupDisk (/Volumes/BackupDisk/photos-videos). Estas opções irão: copiar se não existir, actualizar se houver mudanças, e nunca apagar no destino (BackupDisk) se tiver sido apagado na origem.
- O rsync supporta outras opções de uso, no entanto aconselha-se uma leitura cuidadosa do manual e outros exemplos para evitar perda de dados.
Adicionar uma segunda mensagem de “aviso” para notificar que o processo de backup foi terminado com sucesso.
4 – Guardar o workflow como: “backup-videos-fotos”
- isto faz com que se gere um novo evento no iCal chamado “backup-video-fotos”
- podemos programar este evento para todas as sextas-feiras às 20:00
Se tudo correr bem, deveremos receber este diálogo todas as sextas-feiras as 20:00.
5 – Criar uma nova aplicação para fazer o backup definido explicitamente a qualquer momento:
- O automator gera uma “app” por cada um destes ical workflows. Estes são colocados na diretoria: “~/Library/Workflows/Applications/iCal/“ (que normalmente não é visível no Finder, mas que podemos tornar visível executando o seguinte comando no terminal: “chflags nohidden ~/Library/”).
- Podemos copiar essa app para qualquer lugar, e executá-la quando desejamos fazer um backup – mesmo que ainda não é sexta-feira :).
Notas finais
Neste artigo foi apresentada uma nova forma de usar o Automator, que em conjunto com o iCal e rsync permitem criar uma forma de automatizar o nosso processo de criar backups. No exemplo dado criámos um workflow para fazer backups de fotos e vídeos, poderão ser criados outros para outros dados, ou mesmo fazer o backup de todos os dados num só workflow.
Este tipo de técnica pode igualmente ser criada noutros OSs, por exemplo no Linux usando o crontab que corre o comando rsync a um determinado momento. Uma vez mais espero que vejam utilidade nesta aplicação do Automator, eu acho muito interessante poder “sistematizar” este processo de backup, para evitar que me esqueça de fazer backups regularmente. Até a próximo artigo!