将服务器的数据定时压缩并scp到跳板机

这篇博客介绍了如何使用shell脚本配合expect库,实现将服务器数据定时压缩并免密scp到跳板机。脚本分为压缩、传输和定时运行三个部分,涉及crontab定时任务和日志记录。最后,通过sendmail发送邮件通知。
摘要由CSDN通过智能技术生成

shell脚本将服务器的数据定时压缩并scp到跳板机(无需输入密码)

这已经是去年还是前年的工作了,一直写了整理文档没有发,今天有空发一下啦。
运维有个新需求,是要将一个服务器的数据,传到另一台服务器,但中间还需要登录跳板机。因为这样传过于麻烦,所以我们最终商量决定在跳板机上加一个10T的硬盘用于存储数据,这样就减少了第二步的传输。所以我开始看linux命令的书。由于我是大白菜,所以我用了很久才写出来55555
首先这个脚本分成三部分,1:压缩;2:传数据;3:自动定时运行脚本。数据一共有三部分,将自动生成在当天日期的文件夹下,但是capture_image下文件夹是2019-12-01类型,而facedetectionrangetest下文件夹是2019-12-1类型,所以需要去分开判断压缩。

压缩代码比较简单:

#!/bin/bash  
#取前一天年月日  
y=`date --date='1 days ago' "+%Y"`
m=`date --date='1 days ago' "+%m"`
d=`date --date='1 days ago' "+%d"`
#取前一天年月日去0
day=`expr $d + 0`
mon=`expr $m + 0`
echo "$y-$mon-$day"
filename1="$y-$m-$d.zip" ###命名方式1
filename2="$y-$mom-$day.zip
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要备份 MySQL 数据并将备份文件上传到远程服务器,你可以使用 Shell 脚本结合 mysqldump 和 scp 命令来实现。以下是一个示例脚本: ```bash #!/bin/bash # MySQL设置 db_user="your_username" db_password="your_password" db_name="your_database_name" # 备份配置 backup_directory="/path/to/backup/directory" backup_filename="backup_$(date +%Y%m%d%H%M%S).sql" remote_user="remote_user" remote_host="remote_host" remote_directory="/path/to/remote/directory" # 创建备份目录 mkdir -p $backup_directory # 使用mysqldump备份MySQL数据库 mysqldump -u $db_user -p$db_password $db_name > $backup_directory/$backup_filename # 将备份文件上传到远程服务器 scp $backup_directory/$backup_filename $remote_user@$remote_host:$remote_directory # 清理本地备份文件 rm $backup_directory/$backup_filename ``` 在上面的脚本中,你需要根据实际情况配置以下变量: - `your_username`:MySQL 用户名 - `your_password`:MySQL 密码 - `your_database_name`:要备份的数据库名称 - `/path/to/backup/directory`:本地备份文件存储目录 - `remote_user`:远程服务器用户名 - `remote_host`:远程服务器主机名或 IP 地址 - `/path/to/remote/directory`:远程服务器存储备份文件的目录 脚本首先创建一个用于存储备份文件的目录,然后使用 `mysqldump` 命令将 MySQL 数据库备份到指定的文件中。接下来,使用 `scp` 命令将备份文件上传到远程服务器。最后,脚本清理本地备份文件。 你可以将以上脚本保存为一个文件(例如 `backup_mysql.sh`),然后使用 `chmod +x backup_mysql.sh` 命令赋予脚本执行权限。运行脚本时,它将备份 MySQL 数据并将备份文件上传到远程服务器上指定的目录。 请确保在使用脚本之前进行测试,并注意脚本执行的权限和安全性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值