zoukankan      html  css  js  c++  java
  • 使用cpanel后台的“时钟守护作业”功能完成空间的定时全备份

    现在不少虚拟主机都是使用的cpanel控制面板,由于空间商选用的cpanel版本不同,有的带有定时备份功能,而有的就没有这项功能,需要手动备份。不过,还在绝大部分的cpanel后台都有“时钟守护作业”这个功能——这个功能可以实现定时执行某些指令,对空间进行定时全备份,自然也是可以的。下面,我们就介绍下如何利用cpanel后台的“时钟守护作业”功能巧妙地完成空间定时备份!

     

    首先,创建功能文件

    要想进行定时备份,只有定时功能是不够的,还需要有备份功能,而这个备份功能就需要我们自己添加了,好在,可以使用php代码实现。

    1、登陆空间后台,文件–>文件管理,进入根目录下,创建“backup.php”文件。(案例路径是:/home/bhld/backup.php)切记,千万不要在public_html下创建此文件,不然,很可能会被他人恶意执行。

    2、打开“backup.php”,复制如下代码,修改后保存

    <?php
    // PHP script to allow periodic cPanel backups automatically.
    // Based on script posted by max.hedroom in cpanel.net forums
    // This script contains passwords. KEEP ACCESS TO THIS FILE SECURE!

    // ********* 下面项目请大家根据自己的情况设定 *********

    // cPanel登录信息,必须要如实填写
    $cpuser = “bhld”;             // CPanel帐号
    $cppass = “bluehost”;     // CPanel密码
    $domain = “12.14.7.1”;  // cPanel所在域名或IP
    $skin = “x3″;                      // 正在使用的cPanel风格,默认”x3″,可以在cpanel后台查看。

    /************** 备份目的地 ***************
    *”homedir” – 本地主目录
    *”ftp” – 远程FTP备份(主动模式)
    *”passiveftp” – 远程FTP备份(被动模式)
    *”scp” – 加密传输(需服务器支持)
    ****************************************/
    $savedir = “homedir”; // 备份目的地,默认”ftp”,直接将备份传至FTP空间;此处我设置为保存到本服务器。

    // 远程FTP上传的信息(备份目的地为本地“homedir”的,可不填)

    $ftpuser = “”; // FTP帐号
    $ftppass = “”; // FTP密码
    $ftphost = “*.*.*.*”; // FTP服务器IP
    $ftpport = “21”; // FTP端口,默认21
    $ftprdir = “/”; // 远程FTP目录,默认”/”

    // 邮箱通知信息
    $notifyemail = “1209461019@qq.com”; // 信息反馈邮件地址,自行修改

    // 安全模式
    $secure = 0; // 0为标准http, 1为ssl(需要主机支持ssl)

    // 设定值为1时会在排程记录中产生网页报告
    $debug = 0;

    // *********** 以下内容请勿更改! *********

    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! ”; exit; }

    // Encode authentication string
    $authstr = $cpuser.”:”.$cppass;
    $pass = base64_encode($authstr);

    $params = “dest=$savedir&email=$notifyemail&server=$ftphost&user=$ftpuser&pass=$ftppass&port=$ftpport&rdir=$ftprdir&submit=Generate Backup”;

    // Make POST to cPanel
    fputs($socket,”POST /frontend/”.$skin.”/backup/dofullbackup.html?”.$params.” HTTP/1.0 ”);
    fputs($socket,”Host: $domain ”);
    fputs($socket,”Authorization: Basic $pass ”);
    fputs($socket,”Connection: Close ”);
    fputs($socket,” ”);

    // Grab response even if we don’t do anything with it.
    while (!feof($socket)) {
    $response = fgets($socket,4096);
    if ($debug) echo $response;
    }

    fclose($socket);

    ?>

    其次,测试功能文件

    根据要求修改保存后,如果你的空间已经开通ssh,可以执行linux指令测试备份效果。

    使用putty软件登陆ssh,进入“backup.php”所在目录,执行linux指令:php -f backup.php。空间便开始正常备份,备份结束后还会邮件通知你。

    最后,设置时钟守护

    1、登陆cpanel后台,高级–>时钟守护作业,在电子邮箱处填写常用邮箱并更新。每次定时全备份的情况都会通过此邮件通知你。

    2、在“添加新计时程序作业”把时间设置为“1号和15号”或者“每月一次”。全备份不要太频繁,否则会增加服务器压力。

    3、在命令处,填写如下命令:php -f 绝对路径/文件名。如:php -f /home/bhld/backup.php。

    4、点击“添加”,添加此时钟守护作业。

    至此,设置已经完成。要注意的是:具体时间以服务器时间为准,与用户所在地有一定的时间差(包括时区差),不过影响不是很大。

    来自:http://www.lidetao.com/cpanel-all-backup.html

  • 相关阅读:
    poj 2528 Mayor's posters (线段树+离散化)
    poj 1201 Intervals (差分约束)
    hdu 4109 Instrction Arrangement (差分约束)
    poj 1195 Mobile phones (二维 树状数组)
    poj 2983 Is the Information Reliable? (差分约束)
    树状数组 讲解
    poj 2828 Buy Tickets (线段树)
    hdu 1166 敌兵布阵 (树状数组)
    Ubuntu网络配置
    Button控制窗体变量(开关控制灯的状态)
  • 原文地址:https://www.cnblogs.com/zytrue/p/8496921.html
Copyright © 2011-2022 走看看