Как я сжимаю каталог на веб-сервере Unix и посылаю его по электронной почте на запланированной основе?

После слушания о различных высоких создателях веб-сайта профиля, добирающихся stiffed недавно после отказов оборудования на их серверах, я хотел бы реализовать стратегию резервного копирования относительно своих веб-сайтов.

Я имею cPanel в наличии для меня, но нет никакого средства для меня, чтобы запланировать резервные копии и послать их по электронной почте мне. Существует средство к "crontab", но я не опытный пользователь UNIX, так не знайте, как использовать это.

То, что я хотел бы смочь сделать, создают резервное копирование моего всего корневого каталога, сжимая его одновременно и затем отправки электронного письма, уведомляющего меня, такое резервное копирование было сделано, и я могу загрузить и заархивировать.

Кто-то может предоставить мне какие-либо указатели о том, как я сделал бы такую вещь?

С наилучшими пожеланиями, Ian.

2
задан 14.12.2009, 14:16

1 ответ

Для запуска Вас от команд, Вы хотите изучить, как использовать; 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 / 0:33.

Если Вы хотите узнать больше выезда страницы справочника для tar, mail и crontab. Они необходимы при контакте с администрированием UNIX в любой форме. С uuencode Вы могли даже послать целый сайт по электронной почте себе, если бы это было достаточно маленьким.

2
ответ дан 11.12.2019, 22:43

Теги

Похожие вопросы