将文件备份到FTP服务器上

来源:互联网 发布:怎么做好社团知乎 编辑:程序博客网 时间:2024/06/05 22:52

我们在日常工作中经常会将重要的文件备份,而且会将某些更为重要的文件进行不同介质的备份。不同介质的备份的方式有很多种,包括备份到其他硬盘、U盘、光盘等等。这里介绍一种将文件备份到FTP服务器的方法。
可以编写一个shell脚本,并命名为ftpbackup.sh,内容如下:

#!/bin/bash
# backup file to ftp server
# 给备份的文件加个时间戳
DATEEXT=$(date +%Y%m%d%H%M%S)
# FTP服务器IP地址
FTPSERVERIP="192.168.1.192"
# ftp用户名
FTPUSER="zs"
# ftp用户密码
FTPPASSWD="zhangsan"
# 要备份的源文件
SRC="/home/zs/abc.tgz"
# 备份后的文件
DST="abc$DATEEXT.tgz"

ftp -nvi << open $FTPSERVERIP
user $FTPUSER $FTPPASSWD
put $SRC $DST
bin
prompt
close
bye

保存之后要将该文件修改为可执行的。
chmod 755 ftpbackup.sh
执行该文件可以看到如下所示内容:


Connected to 192.168.1.192.
220 (vsFTPd 2.0.5)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
331 Please specify the password.
230 Login successful.
local: /home/zs/abc.tgz remote: /home/zs/abc20100831091220.tgz
227 Entering Passive Mode (192,168,1,192,207,22)
150 Ok to send data.
226 File receive OK.
49396 bytes sent in 0.034 seconds (1.4e+03 Kbytes/s)
200 Switching to Binary mode.
Interactive mode on.
221 Goodbye.

 

这表明备份成功,不妨登录到ftp服务器上查看一番。
另外,若某些文件需要每天备份,可将该文件放置到/etc/cron.daily目录下即可,系统会在每天的某个时间(在/etc/crontab中指定)对其进行备份。