现在不少虚拟主机都是使用的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!\n”; 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\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);

?>

其次,测试功能文件

根据要求修改保存后,如果你的空间已经开通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

使用cpanel后台的“时钟守护作业”功能完成空间的定时全备份的更多相关文章

  1. Tasks Queues and Cron Jobs(任务队列和时钟守护作业)

    一个网络应用必须迅速响应网络请求,一般要小于1s,最好是几十微秒,以便为坐在浏览器前面的用户提供一个流畅的体验.这就给不了应用太多的时间来处理工作.有时会是有更多的工作要做而不是有时间来做它.< ...

  2. 与众不同 windows phone (40) - 8.0 媒体: 音乐中心的新增功能, 图片中心的新增功能, 后台音乐播放的新增功能

    [源码下载] 与众不同 windows phone (40) - 8.0 媒体: 音乐中心的新增功能, 图片中心的新增功能, 后台音乐播放的新增功能 作者:webabcd 介绍与众不同 windows ...

  3. (后台)SQL Server 数据库定时自动备份(转)

    转自博客园: SQL Server 数据库定时自动备份[转]   在SQL Server中出于数据安全的考虑,所以需要定期的备份数据库.而备份数据库一般又是在凌晨时间基本没有数据库操作的时候进行,所以 ...

  4. Syncovery 是目前功能最为强大的实时自动备份工具

    Syncovery Pro(原名叫做Super Flexible Synchronizer) 是目前功能最为强大的实时自动备份工具,连FTP.WebDAV等全部支持! 最近从V6开始改用比较好记.易懂 ...

  5. WordPress后台添加友情链接管理功能

    其实很早之前WordPress是有这个功能的,但是伴随着wordpress的经常升级和主题的升级以及更换,有时候后台会发现没有链接管理的入口,不过还是可以通过代码还原这个功能. 将以下代码添加到您当前 ...

  6. biweb后台添加上传下载功能

    1.数据库对应表添加字段 file       varchar(100) 2.对应的后台 模块名/admin/addinfo.php里添加如下代码: //文件上传 if ((($_FILES[&quo ...

  7. (转)ecshop 后台商品分类添加图片的功能

    转之--http://blog.sina.com.cn/s/blog_4696b3760100n5ee.html   1 .首先找到数据表 ecs_category (商品分类表) 添加一 cat_i ...

  8. java 后台线层也叫守护线层

    import java.util.concurrent.locks.*; class Do9 { public static void main(String[] args) { Ds d=new D ...

  9. 潭州课堂25班:Ph201805201 django 项目 第四十一课 后台 轮播图管理功能讲解,文档管理功能 实现 (课堂笔记)

    在进入轮播图管理页面时,要把轮播图显示在页面上,所以后台要向前台返回: 图片路由,:image_url 优先级: priority def get(self, request): # priority ...

随机推荐

  1. Fedora LVM磁盘大小调整

    umount /dev/fedora/swap e2fsck -f /dev/fedora/swap

  2. 开发效率优化之Git分布式版本控制系统(一)

    阿里P7移动互联网架构师进阶视频(每日更新中)免费学习请点击:https://space.bilibili.com/474380680本篇文章将先从Git分布式版本控制系统来阐述开发效率优化 一,企业 ...

  3. Hibernate入门教程(一):入门示例(Myeclipse)

    ●项目结构 ●本项目所用Hibernate版本为5.4.5.Final,导入jar只需lib目录下的required和MySQL所需的jar驱动 1.导入相关jar包(配置构建路径) 说明:本人已将所 ...

  4. Vue-cli中的静态资源管理(src/assets和static/的区别)

    资源打包 为了回答这个问题,我们需要了解webpack是如何处理静态资源的.在所有的*.vue文件中你所有的templates 和CSS 都被vue-html-loader 和css-loader 查 ...

  5. C#中的元组对象Tuple

    原文:C#中的元组对象Tuple 一.什么是元组 元组就是一些对象的集合,在我们编程时,比如一个人的信息,我们常常创建一个Person类去描述一个人,传统的做法如下: public class Per ...

  6. moment.js 快捷查询

    格式化日期 当前时间: moment().format('YYYY-MM-DD HH:mm:ss'); //2014-09-24 23:36:09 今天是星期几: moment().format('d ...

  7. 三、hibernate中持久化类的使用

    hibernate的持久化类 持久化:将内存中的一个对象持久化到数据库中的过程,hibernate就是一个用来进行持久化的框架 持久化类:一个Java对象与数据库中表建立了关系映射,那么这个类在hib ...

  8. JS综合面试题1

    function foo(){ getName = function () { alert(1); }; return this; } Foo.getName = function(){ alert( ...

  9. dubbo-源码阅读之服务发布

    原理 dubbo根据spring 2.0的schma实现 解析xml并初始化相关bean 初始化dubbo:service为ServiceBean实例  通过spring的生命周期相应回调实现服务发布 ...

  10. vue 通过插槽分发内容

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...