CronJob BackUp: запускать каждый день, неделю, месяц

1

Я сделал для этого поиск Google, но все, что я могу найти, это разные вещи, а интерфейс cPanel немного запутан, чтобы быть честным. Изображение 174551

В принципе, у меня есть этот скрипт для создания файлов + mysql backup:

<?php

$auth = base64_encode(":");
$domain = "";
$theme = "";
$secure = false;
$ftp = false;
$ftpserver = "";
$ftpusername = "";
$ftppassword = "";
$ftpport = "21";
$ftpdirectory = "/";

if ($secure) {
    $url = "ssl://" . $domain;
    $port = 2083;
} else {
    $url = $domain;
    $port = 2082;
}

$socket = fsockopen($url, $port);
if (!$socket) {
    exit("Failed to open socket connection.");
}

if ($ftp) {
    $params = "dest=ftp&server=$ftpserver&user=$ftpusername&pass=$ftppassword&port=$ftpport&rdir=$ftpdirectory&submit=Generate Backup";
} else {
    $params = "submit=Generate Backup";
}

fputs($socket, "POST /frontend/" . $theme . "/backup/dofullbackup.html?" . $params . " HTTP/1.0\r\n");
fputs($socket, "Host: $domain\r\n");
fputs($socket, "Authorization: Basic $auth\r\n");
fputs($socket, "Connection: Close\r\n");
fputs($socket, "\r\n");

while (!feof($socket)) {
    $response = fgets($socket, 4096);
    echo $response;
}

fclose($socket);

?>

Я хотел бы запустить этот PHP файл, чтобы он загружал мои вещи точно так же, как и cPanel для любого обычного плана совместного размещения: ежедневно, еженедельно и ежемесячно. Я хочу сделать это из-за того, что мой веб-сайт был запутан, потому что резервная копия хостинговой компании не работает должным образом.

  1. Нужно ли создавать отдельные задания cron ежедневно, еженедельно, ежемесячно или я могу сделать все сразу?
  2. Если я введу команду в поле Command, достаточно ли ее заставить работать, или мне нужно настроить другие поля ввода?
  3. Какая правильная команда для запуска моих резервных копий, как описано выше?

Благодарю!

Теги:
cron
cpanel

1 ответ

1
Лучший ответ

В этом интерфейсе у вас есть несколько различных параметров для команды,

php -q /path/to/your/script.php

должно сработать.

Если вы добавите #!/usr/bin/php -q в начало своего PHP-скрипта, вы можете просто вызвать его прямо из cron:

/path/to/your/script.php

Общие ответы на ваши вопросы (не связанные с этим веб-интерфейсом) рассматриваются здесь:

Как выполнять скрипт php каждый день

Это также может быть полезно, случайная, но довольно приличная ссылка на синтаксис crontab:

http://www.thegeekstuff.com/2009/06/15-practical-crontab-examples/

  • 0
    Итак, мне нужно создать работу cron для ежедневной работы, другую работу cron для еженедельной и другую для ежемесячной?
  • 0
    Я бы сказал, что основным преимуществом разделения задач в резервной копии на ежедневные, еженедельные, ежемесячные и т. Д. Является то, что вы можете выполнять разные задачи с разными заданиями и использовать разные хуки для установки политики хранения резервных копий. Например, вы можете оставить только последние 10 дней, но иметь 12 месячных, чтобы покрыть примерно последний год. И т. Д. И т. Д. Способ бедняка заключается в том, чтобы просто делать это ежедневно, а затем вручную удалять старые, прежде чем закончится свободное место на жестком диске. Также rsnapshot заказ rsnapshot .

Ещё вопросы

Сообщество Overcoder
Наверх
Меню