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
第三步、将第一步和第二步结合起来
备份文件到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
第三步、将第一步和第二步结合起来
相关文章推荐
- linux定时备份MySQL数据库并删除七天前的备份文件
- Linux定时备份文件系统,并删除7天前的备份文件
- linux定时备份mysql数据库,及解决crontab执行时生成数据库文件为空的问题
- Linux命令之文件同步、定时备份 -rsync,cron,crontab
- linux上利用crontab定时备份postgres数据库及文件到windows系统
- linux定时备份MySQL数据库并删除七天前的备份文件
- linux定时备份mysql数据库,及解决crontab执行时生成数据库文件为空的问题
- 在Linux中定时备份文件
- Linux命令之文件同步、定时备份 -rsync,cron,crontab
- linux定时备份MySQL数据库并删除七天前的备份文件
- Linux shell crontab expdp 定时任务逻辑备份 定时删除旧文件
- linux 定时备份指定的配置文件 shell
- LINUX 定时备份文件
- LINUX 定时备份文件
- linux svn定时备份文件 + 文件上传
- linux上利用crontab定时备份postgres数据库及文件到windows系统
- Linux下MYSQL定时备份、定时清理几天前文件
- 让linux每天定时备份MySQL数据库并删除五天前的备份文件
- linux实现crontab定时任务计划并删除之前的文件备份
- linux定时备份mysql数据库文件