Shell ubuntu FTP脚本-hetzner

Shell ubuntu FTP脚本-hetzner,shell,ftp,backup,ubuntu-12.04,robot,Shell,Ftp,Backup,Ubuntu 12.04,Robot,嗨 我正在尝试备份我的应用程序目录、数据库备份,然后使用下面的脚本将其发送到我位于hetzner的ftp服务器,但几乎没有出现错误 我的服务器详细信息:ubuntu12-04(在hetzner中) 数据库:postgresql8.4 我的ftp服务器:hetzner 正在尝试在ubuntu12.04服务器上进行备份并在ftp我的服务器中进行复制 在以下位置获得了一个示例脚本 bakupscript.sh site=ftp://u***.your-backup.de username=u*** p

嗨 我正在尝试备份我的应用程序目录、数据库备份,然后使用下面的脚本将其发送到我位于hetzner的ftp服务器,但几乎没有出现错误

我的服务器详细信息:ubuntu12-04(在hetzner中) 数据库:postgresql8.4 我的ftp服务器:hetzner 正在尝试在ubuntu12.04服务器上进行备份并在ftp我的服务器中进行复制 在以下位置获得了一个示例脚本

bakupscript.sh

site=ftp://u***.your-backup.de
username=u***
passwd=*******************
backupdir=/opt/openbravo-erp
filenameob="openbravo-erp.tar.gz"

echo "Creating a ob backup file $filenameob of $backupdir."

# Make a tar gzipped backup file
tar -cvzf /home/hetznerftp/"$filenameob" "$backupdir"

echo "creating a db backup file $filenamedb of ob database."
export PGPASSWORD="*my db password*"
backup_dir="/home/manideep/hetzner/"
#String to append to the name of the backup files
pg_dump -h localhost -U tad openbravo -Fc $i > $backup_dir$i\rajedb.backup

#login into ftp server
ftp -in <<EOF
open $ftp_site
user $username $passwd
bin
put /home/manideep/hetzner$filenameob 
put /home/manideep/hetznerftp/pgdump.backup
close 
bye
EOF
如何通过脚本发送这些文件

当我在
ftp
ftp服务器中使用命令
put
in

如果不是,我该怎么做?谢谢你获得lftp


您编写的脚本可能会与此配合使用。

我支持petrus4的建议,lftp比ftp更适合编写脚本

使用打开的主机名。。。错误和下面的错误是因为您使用的变量$site_ftp为空。您设置的变量是$site。如果使用open命令执行此操作,则必须删除ftp://前缀


关于第21行的警告是因为您使用了here文档,为什么不使用
rsync
?这样你就只需要复制你需要的文件,而不必乱搞陈旧的FTP。请参阅rsync手册页:我刚刚尝试了这个命令rsync-avz--progress/home/manideep/hetznertp/u********@u*****.your-backup.de/,我得到了这个输出“发送增量文件列表创建目录”u77751@u77751.your-backup.de./openbravo-erp.tar.gz 1097923138 100%43.68MB/s 0:00:23(xfer#1,检查=1/3)rajedb.backup 1969128727 100%48.57MB/s 0:00:38(xfer#2,检查=0/3)发送3068081636字节接收53字节48316247.07字节/秒总大小为3067051865加速比为1.00当我登录ftp时我找不到我的文件如果我尝试此rsync:
rsync-avzhe ssh/home/manideep/hetznertp u******@u*****。您的备份.de
正在本地创建一个文件并与之同步。。我的ftp服务器不需要在远程主机名后面加一个
,所以应该是:
rsync-av/home/manideep/hetznertp/u*****@u*****。你的备份。de://
我已经做了必要的更改。。但这不是沃克林。。错误消失了。。但它仍然说
(to)用法:打开主机名[端口]未连接。没有连接。没有连接。未连接。
Creating a backup file openbravo-erp.tar.gz of /opt/openbravo-erp.
creating a db backup file  of ob database.
(to) usage: open host-name [port]
Not connected.
Not connected.
Not connected.
Not connected.