Назад | Перейти на главную страницу

Cronjob - Godaddy

Я пытаюсь создать резервную копию из среды общего хостинга Godaddy для друга. Весь файл сайта составляет около 2 ГБ, и Godaddy не поддерживает архивирование файлов размером более 20 МБ. Единственный вариант - использовать tar на стороне сервера.

В основном я сталкиваюсь с проблемой, когда Cron выполняет только половину своей работы, только сжимая до 300 МБ из 1 ГБ +.

Вот сценарий, который я использую,

#!/bin/bash
/bin/tar -cvzf $HOME/html/fullsite_test.tgz $HOME/html > $HOME/html/Out.log 2>&1

И вот что я заполнил команду Godaddy,

"$HOME/html/backup.sh"

Кто-нибудь знает, почему не работает как задумано? Я даже имел дело с stderr и stdout, поэтому я до сих пор не уверен, что происходит ...

Примечание. $ HOME - это абсолютный путь к каталогу учетной записи.

Прежде всего следует отметить, что путь, который вы поддерживаете включает сам бэкап !!!!

Предполагая, что это GNU-версия tar .... Вместо

tar -cvzf $HOME/html/fullsite_test.tgz $HOME/html > $HOME/html/Out.log

Пытаться

tar -cvzf $HOME/html/backup.tgz $HOME/html --exclude backup > $HOME/html/backup.log

Не уверен, откуда исходит ограничение в 300 МБ (вы уверены, что это размер созданного файла или размер файла, который вы загрузили?), Но (опять же, предполагая, что это Gnu tar), вы могли бы сделать что-то вроде:

tar -Mcvzf $HOME/html/backup.tgz $HOME/html \
   $HOME/html/backup.tgz $HOME/html \
   -L 200M -F backup_rotate.sh

Где backup_rotate.sh содержит что-то вроде:

#!/bin/sh

mv -f $HOME/html/backup_vol4.tgz $HOME/html/backup_vol1.tgz
mv -f $HOME/html/backup_vol2.tgz $HOME/html/backup_vol3.tgz
mv -f $HOME/html/backup_vol1.tgz $HOME/html/backup_vol2.tgz
mv -f $HOME/html/backup.tgz      $HOME/html/backup_vol1.tgz

(можно было бы немного доработать - но вы уловили идею?)