Apesar de a PTServidor fazer backups diários a todas as contas é recomendável que também faça um principalmente se fizer dados na sua conta e quiser apenas recuperar alguns ficheiros pois quando nós restauramos um backup a conta toda é restaurada e não apenas alguns ficheiros.
Para isso pode usar o seguinte scritp php que deverá editar para receber os seus backups num servidor de FTP remoto:
<?php
// PHP script que faz backups do cPanel automaticamente para um servidor de ftp remoto.
// Este script contem passwords. MANTENHA O FICHEIRO EM SEGURANÇA! (coloque-o na home dir, não na /www/)
// ********* OS SEGUINTES CAMPOS NECESSITAM DE CONFIGURAÇÃO *********
// INFO PARA ACESSO AO CPANEL
$cpuser = “username”; // Username usado para o cPanel
$cppass = “password”; // Password usado para o cPanel
$domain = “examplo.com”; // Domaio usado no cPanel
$skin = “x3”; // Defina qual o theme do cPanel usado no cPanel. Pergunte ao seu serviço de alojamento caso não saiba qual usa.
// INFO PARA ACESSO AO FTP REMOTO
$ftpuser = “ftpusername”; // Username da conta FTP
$ftppass = “ftppassword”; // Password da conta FTP
$ftphost = “ftp.examplo.com”; // Hostname ou endereço ou ip do servidor de FTP
$ftpmode = “ftp”; // FTP mode (“ftp” se activado, “passiveftp” para modo passivo)
// EMAIL PARA NOTIFICAÇÃO
$notifyemail = “you@example.com”; // Endereço de email para envio do resultado do backup
// MODO SEGURO OU INSEGURO
$secure = 0; // Defina 1 para SSL (requer suporte SSL), ou use o padrão HTTP
// Defina 1 para ter os resultados na pagina de logs do CronJob
$debug = 0;
// *********** NÃO ALTERAR APÓS ESTA LINHA *********
if ($secure) {
$url = “ssl://”.$domain;
$port = 2083;
} else {
$url = $domain;
$port = 2082;
}
$socket = fsockopen($url,$port);
if (!$socket) { echo “Failed to open socket connection… Bailing out!\n”; exit; }
// Encode authentication string
$authstr = $cpuser.”:”.$cppass;
$pass = base64_encode($authstr);
$params = “dest=$ftpmode&email=$notifyemail&server=$ftphost&user=$ftpuser&pass=$ftppass&submit=Generate Backup”;
// Make POST to cPanel
fputs($socket,”POST /frontend/”.$skin.”/backup/dofullbackup.html?”.$params.” HTTP/1.0\r\n”);
fputs($socket,”Host: $domain\r\n”);
fputs($socket,”Authorization: Basic $pass\r\n”);
fputs($socket,”Connection: Close\r\n”);
fputs($socket,”\r\n”);
// Grab response even if we don’t do anything with it.
while (!feof($socket)) {
$response = fgets($socket,4096);
if ($debug) echo $response;
}
fclose($socket);
?>
Deverá guardar o código acima num ficheiro com a extensão .php ex: fullbackup.php
Após isto deverá criar uma cron job com o seguinte conteúdo:
15 5 * * 1 /usr/local/bin/php /home/youraccount/fullbackup.php
Corre todos os Domingos as 5 e 15H, recomendamos que mantenha esta hora para não causar conflitos no servidor.
Onde diz youraccount colocar o seu nome de utilizador.
Cumprimentos,