您的位置:首页 > 运维架构 > Linux

linux-------定时备份文件

2014-02-17 21:18 239 查看
本文主要解决如何在linux debian系统下 定时的 通过lftp命令
备份文件到ftp服务器上面的问题

条件:

1、linux debian6系统,网络连接良好。

2、/etc/apt/sources.list里面的网址正确。

3、ftp服务器的账号和密码正确。

思想:

1、备份文件的操作由一个脚本执行。

2、在linux系统下定时的执行脚本。

内容:

第一步:了解如何在linux系统下定时的执行脚本

方法一、用crontab命令编辑

a.
crontab -u //设定某个用户的cron服务,一般root用户在执行这个命令的时候需要此参数

crontab -l //列出某个用户cron服务的详细内容

crontab -r //删除没个用户的cron服务

crontab -e //编辑某个用户的cron服务

b. 在编辑cron服务时,编辑的内容有一些格式和约定,输入:crontab-u root -e

c. 进入vi编辑模式,编辑的内容一定要符合下面的格式:*/1 * * * * command

d. 除了数字还有几个个特殊的符号就是"*"、"/"和"-"、",",*代表所有的取值范围内的数字,"/"代表每的意思,"*/5"表示每5个单位,"-"代表从某个数字到某个数字,","分开几个离散的数字。

e.举例:

每天早上6点

0 6 * * * echo "Goodmorning."

每两个小时

0 */2 * * * echo "Have abreak now." >> /tmp/test.txt

方法二、编辑/etc/crontab

a. SHELL=/bin/bash

PATH=/sbin:/bin:/usr/sbin:/usr/bin

MAILTO=root //如果出现错误,或者有数据输出,数据作为邮件发给这个帐号

HOME=/ //使用者运行的路径,这里是根目录

b. 在末尾添加一行如方法一的格式的定时+命令

第二步:写备份文件的脚本

1、通过zip命令压缩文件

a、apt-get install zip //安装zip软件

b、zip –r 压缩文件名.zip file file

2、通过lftp登陆ftp服务器

a、apt-get install lftp //下载lftp软件

b、lftp ftp://User:Passwd@IP:PORT
lftp ftp://用户:密码@IP地址:端口号
3、通过mput命令上传文件

mput 需要上传的文件名

4、整体的脚本举例

1 #!/bin/bash

2

3 mysqldump -uroot -pdebianc2013_database > /root/c2013_database.sql

//这是导出数据库文件

4 zip -r backup.zip /home/data /root/c2013_database.sql

//压缩文件

5

6 lftp ftp://heqiunong:heqiunong@172.16.232.37:21 <<EOF

//登陆ftp

7 mput /root/backup.zip

//执行上传命令

8 EOF

//退出

9

10 rm c2013_database.sql

//删除中间文件

11 rm backup.zip

第三步、将第一步和第二步结合起来
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: