Чтобы начать с команд, которые вы хотите научиться использовать; tar
, mail
и базовые сценарии оболочки.
Скрипт оболочки
Очень быстрый и грязный пример того, как это сделать, может быть следующим:
#! /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!" "youremailaddress@wherever.com"
Установите исполняемый скрипт (chmod 755 nameOfScript.sh
) и запишите, где вы сохранили его на своем
Получение Crontab для запуска сценария оболочки
Чтобы настроить свой crontab из командной строки, введите crontab -e
для редактирования файла crontab. Расположение файла выглядит следующим образом:
* * * * * 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)
Источник диаграммы: выбор администратора
В этом случае добавьте строку, например:
33 0 * * * /PATH/TO/HOME/FOLDER/nameOfScript.sh
будет запускать сценарий каждый день в 0:33 / 00:33.
Если вы хотите узнать больше, посмотрите справочные страницы по tar
, mail
и crontab
. Они незаменимы при работе с администрацией UNIX в любой форме. С помощью uuencode
вы можете даже отправить себе по электронной почте весь сайт, если он будет достаточно маленьким.