linux 远程备份脚本,Linux FTP远程备份shell脚本命令(示例代码)

定期备份各服务器的动摇资料,到ftp服务器,注意主动模式和被动模式区别#!/bin/bash

#主动FTP对服务端有利,客户端iptables关闭,客户端需要执行passsiveh后上传数据

#被动FTP对客户端有利,服务端iptables关闭,Linux客户端ftp登陆后不需要执行passive命令,可上传

#

#vim /etc/sysconfig/iptables

#开放防火墙端口主动模式下,客户端防火墙需要关闭

#-A INPUT -p tcp --dport 20 -j ACCEPT

#-A INPUT -p tcp --dport 21 -j ACCEPT

yum install vsftpd

vsftprun(){chkconfig vsftpd on

service vsftpd start

chkconfig iptables off

}

vsftprun

vim /etc/vsftpd/vsftpd.conf

#添加匿名用户上传权限

#anonymous_enable=YES

#anon_upload_enable=YES

#anon_mkdir_write_enable=YES

#anon_root=/var/ftproot

#anon_umask=022

#anon_other_write_enable=YES

local_enable=YES

write_enable=YES

local_umask=022

dirmessage_enable=YES

xferlog_enable=YES

connect_from_port_20=YES

xferlog_std_format=YES

listen=YES

pam_service_name=vsftpd

userlist_enable=YES

tcp_wrappers=YES

mkdir -p /var/ftproot/{upload,download}

chmod 777 /var/ftproot/upload

vsftprun

#客户端配置

yum install -y ftp

#FTP远程备份文件

#!/bin/bash

host="172.16.16.23"

id="zhang"

pw="password"

basedir="/etc"

ip_addr=`ifconfig | grep  ‘inet addr:‘ | grep -v ‘127.0.0.1‘ | cut -d: -f 2 | awk ‘{print $1}‘`

current_date=`date +%Y-%m-%d`

remotedir="/var/ftproot/upload"

backupfile="`date +%Y-%m-%d`.etc.tar.gz"

cd /tmp

tar -zcvf "$ip_addr"-"$backupfile" $basedir

if [ $? -eq 0 ]; then

ftp -n "$host" >/tmp/$ip_addr-etc-$current_date.log 2>&1 <

user zhang password

binary

cd "$remotedir"

put "$ip_addr"-"$backupfile"

put "$ip_addr"-etc-"$current_date".log

bye

EOF

else

echo "tar false"

fi

还可以开启使用匿名登录上传文件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值