IT运维的365天--017 如何在两台Linux服务器之间快速批量传输文件夹(同时设置免密)

embedded/2024/10/23 22:36:23/

前情提要(两台Linux服务器之间传输批量文件夹):

两台都是外网服务器,都是Linux系统(CentOS),都安装了宝塔,用于搭建巨量的静态网站,由于A服务器准备不要了,所以要在A服务器转移几百个静态网站到B服务器

Linux下scp单命令传输文件夹测试:

准备工作,先测试转移一个文件夹看看,传输文件正常就首选自带的scp程序了,老牌、安全、稳定。命令如下(A服务器下运行):

scp -CrpP 12345 -i id_rsa /www/wwwroot/www.xxx.com/* root@123.123.1.1:/www/wwwroot/www.xxx.com

解析:

        C 是压缩传输

        r 是递归子文件夹

        p 是连权限等文件属性一起传输

        P 大写P后面跟着空格加目标服务器SSH端口号,如果ssh是默认的22端口,可以省略

        i 则是指定免密链接的私钥文件,文章后面再顺便讲解怎么生成这免密链接的私钥文件

        加v可以看到传输的具体过程,但我实际实践发现,这所谓的具体过程是很细碎的通讯过程,没必要也晦涩难懂,不加v就有详细的文件传输列表,够了~

注意:第一次链接需要保存访问指纹fingerprint,如下图,输入yes即可。

2e65da0dea994b74abdb705280bcdd7e.png

用Shell脚本批量传输文件夹到另一个Linux服务器

好了,单个文件夹的传输测试成功了。接下来就是批量传输了,由于域名没有规律,那么就只好通过域名清单的文本文件来提供给脚本运行,替代Shell命令的参数了。

文件名weblist.txt

格式: 

abc100.com
abc101.com
abc102.com

Shell文件copy2_new.sh内容如下:

1,宝塔系统里网站的保存位置都是/www/wwwroot/下,都是www.开头的文件夹

2,scp命令前加time是计算每个域名复制的合计时间,但缺点就是没有滚动的文件名清单了

3,time命令后面我试了重定向输出>>/root/webtrans.log 没成功,不知道为啥,后面有兴趣再研究。有懂的可以留言告知,万分感谢~    

#!/bin/bash                                                                                                                                       
while read rows                                                              

http://www.ppmy.cn/embedded/129924.html

相关文章

Cursor零基础小白教程系列 - 开卷有益

最适合小白零基础的Cursor教程 网站lookai.top相同作者,最新文章会在网站更新,欢迎收藏书签 写在前面的话 Cursor在我看来 我认为当下AI时代,Cursor能够极大赋能每个普通人,帮助每个普通人实现自己的创意和想法。 例子&#xff…

Flink时间窗口程序骨架结构

前言 Flink 作业的基本骨架结构包含三部分:创建执行环境、定义数据处理逻辑、提交并执行Flink作业。 日常大部分 Flink 作业是基于时间窗口计算模型的,同样的,开发一个Flink时间窗口作业也有一套基本的骨架结构,了解这套结构有助…

【C++刷题】力扣-#268-丢失的数字

题目描述 给定一个包含从 1 到 n 的整数的数组 nums,其中 n 是数组的长度。数组中的元素都不相同,但是缺失了一个数字,导致数组和为 n*(n1)/2 减去的某个数字。找出这个缺失的数字。 示例 示例 1 输入: nums [3,0,1] 输出: 2示例 2 输入:…

Vivado - Aurora 8B/10B IP

目录 1. 简介 2. 设计调试 2.1 Physical Layer 2.2 Link Layer 2.3 Receiver 2.4 IP 接口 2.5 调试过程 2.5.1 Block Design 2.5.2 释放 gt_reset 2.5.3 观察数据 3. 实用技巧 3.1 GT 坐标与布局 3.1.1 选择器件并进行RTL分析 3.1.2 进入平面设计 3.1.3 收发器布…

git提交信息写错处理方式

在Git中,你可以通过使用rebase命令来合并提交记录。以下是一个简单的步骤来合并一系列提交: 使用git rebase -i开始交互式变基。在打开的编辑器中,你会看到一个提交列表。若要合并提交,将要合并的提交前面的pick改为squash或s。保…

【计算机网络 - 基础问题】每日 3 题(四十二)

✍个人博客:https://blog.csdn.net/Newin2020?typeblog 📣专栏地址:http://t.csdnimg.cn/fYaBd 📚专栏简介:在这个专栏中,我将会分享 C 面试中常见的面试题给大家~ ❤️如果有收获的话,欢迎点赞…

ESP32 S3 语音识别 语音唤醒程序流程

ESP32 S3 语音识别 语音唤醒程序流程 参考例程首先进行esp_periph_set_init 初始化之后执行setup_player,之后执行start_recorder,识别的主处理voice_read_task 参考例程 D:\Espressif\esp-adf\examples\speech_recognition\wwe\ 首先进行esp_periph_se…

Molmo和PixMo:为最先进的多模态模型提供开放权重和开放数据

摘要 https://arxiv.org/pdf/2409.17146 当今最先进的多模态模型仍然是专有的。性能最强的开源模型严重依赖专有视觉语言模型(Vision-Language Model,简称VLM)的合成数据来获得良好性能,有效地将这些封闭模型提炼为开放模型。因此,业界仍然缺少关于如何从零开始构建高性能…