Para iniciar os comandos que você deseja aprender a usar; tar
, mail
e scripts básicos de shell.
O script da shell
Um exemplo muito rápido e sujo de como fazer isso seria o seguinte:
#! /bin/sh
# The following command creates a GZIP'd version of your folder. -c = create
# -z = use gzip, -f = file name of backup file
# You can use j instead of z to use bzip2. It's slightly slower but compresses
# more. Beware that images, videos and such do not compress well.
cd /PATH/NOT/IN/HOME/FOLDER; tar czf backup.tgz /PATH/TO/HOME/FOLDER
# If you only have access to your home folder you can modify the command to
# look like so, regular expressions are your friend here.
tar czf backup.tgz FOLDER1 FOLDER2 FILE3
# The mail program may be disabled and uses the local SMTP server so depending
# on your mail setup it may never even get to your inbox because it is flagged
# as unverified mail (Spam). For example, Gmail or a domain not hosted on that
# same server will almost most certainly not work. If this fails to work you
# can create a PHP or Python script that actually allows you to set the SMTP
# server. An alternative is to have this script echo some output and have cron
# send the output to you instead. It's dependent on your setup.
# -s Subject
#
mail -s "Backup Done!" "[email protected]"
Defina o script como executável ( chmod 755 nameOfScript.sh
) e anote onde você o salvou no seu
Obtendo o Crontab para executar o Script da Shell
Para configurar seu crontab a partir da linha de comando, digite crontab -e
para editar seu arquivo crontab. O layout do arquivo é o seguinte:
* * * * * command to be executed
- - - - -
| | | | |
| | | | +----- day of week (0 - 6) (Sunday=0)
| | | +------- month (1 - 12)
| | +--------- day of month (1 - 31)
| +----------- hour (0 - 23)
+------------- min (0 - 59)
Fonte do diagrama: Escolha do administrador
Neste caso, adicione uma linha como:
33 0 * * * /PATH/TO/HOME/FOLDER/nameOfScript.sh
executará o script todos os dias às 0:33 / 12:33.
Se você quiser saber mais, confira as man pages de tar
, mail
e crontab
. Eles são indispensáveis ao lidar com a administração do UNIX de qualquer forma. Com uuencode
você poderia até mesmo enviar um e-mail para o site inteiro, se fosse pequeno o suficiente.