ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Linux ftp 自动上传备份文件脚本

Linux ftp 自动上传备份文件脚本

原创 Linux操作系统 作者:roominess 时间:2012-05-08 14:27:24 0 删除 编辑

三步实现:

1查找符合要求的文件,放到一个临时文件夹。

2ftp中使用mput 上传,上传完从临时文件夹中删除。

3在备份服务器上做好删除策略。不然空间会撑满掉。

 

三点说明:

1如果说只保留2天的话倒简单,在mput 之前用mdelete 把文件全部删除掉,在上传就可以了,因为我这里要保留多天的记录。 所以就只能在备份服务器上在弄个批处理的计划任务来删除了。

2. mput 的时候有个问题,它会要求按下回车后在上传, 这对自动脚本来说是非常麻烦的。 我们需要关闭这个指令。

 

ftp>prompt

切换交谈式指令,使用mput/mget 时不用每个文件皆询问yes/no

ftp> help prompt

prompt          force interactive prompting on multiple commands

ftp> prompt

Interactive mode off.

ftp> prompt

Interactive mode on.

ftp> prompt

Interactive mode off.

ftp>

      

不加任何参数就可以进行开发或关闭的设备,每执行一次,状态就会改变。

 

3 find -mtime 参数说明

find /u01/backup/backupsets -mtime +1 -name "*" +号 表示 1天前的文件

find /u01/backup/backupsets -mtime -1 -name "*" :表示1天内的文件

 

 

完整脚本:

 

Linux上传脚本:

[xezf@localhost scripts]$ cat uploadbackup.sh

#!/bin/sh

find /u01/backup/backupsets -mtime -1 -name "*" -exec cp -f {} /u01/backup/backuptmp /;

ftp -n 192.168.88.251 << EOF

user user password

bin

lcd /u01/backup/backuptmp

prompt

mput *

bye

EOF

cd /u01/backup/backuptmp

rm -rf /u01/backup/backuptmp/*

 

uploadbackup.sh脚本添加到crontab,定时执行。 关于crontab,参考我的Blog

     

 

备份服务器删除脚本:

 

deletebackupfile.bat

forfiles /p E:/db_backup_history/xezf /m * /d -10 /c "cmd /c del @file"

 

将这个bat 文件添加到计划任务,定时执行即可。我这里保留的是10天。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/15880878/viewspace-723026/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-02-24

  • 博文量
    118
  • 访问量
    186291