首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >20.33 构建文件分发系统

20.33 构建文件分发系统

作者头像
运维小白
发布于 2022-01-06 06:11:45
发布于 2022-01-06 06:11:45
1.1K02
代码可运行
举报
文章被收录于专栏:运维小白运维小白
运行总次数:2
代码可运行

构建文件分发系统

  • 需求背景
    • 对于大公司而言,肯定时不时会有网站或者配置文件更新,而且使用的机器肯定也是好多台,少则几台,多则几十甚至上百台。所以,自动同步文件是至关重要的。
  • 实现思路
    • 首先要有一台模板机器,把要分发的文件准备好,然后只要使用expect脚本批量把需要同步的文件分发到目标机器即可。
  • 核心命令
    • rsync -av --files-from=list.txt / root@host:/
    • 使用rsync 的 --files参数,可以实现调用文件里面的列表,进行多个文件远程传输,进而实现文件分发
    • 文件分发系统的实现

1、rsync.expect 内容

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#!/usr/bin/expect
set passwd "123123a"
set host [lindex $argv 0]
set file [lindex $argv 1]
spawn rsync -av --files-from=$file / root@$host:/   //这个地方定义了原目录和目标目录以跟目录开始
expect {
"yes/no" { send "yes\r"}
"password:" { send "$passwd\r" }
}
expect eof
  • 同步的路径,需要保证对方机器也有这个相同的路径,如果没有路径,需要使用 -R 创建路径
  1. 因为实现分发系统,肯定是因为需要分发的机器数量过大,所以,定义好了 文件 的 list 列表文件以后, 还需要配置 ip 的列表文件
  • 创建需要同步文件的列表文件
  • 创建需要同步IP地址的列表文件
  1. rsync.sh 内容

#!/bin/bash for ip in cat ip.list do echo ip./rsync.expectip list.txt done

  • 这个sh 的目的,就是遍历一下 ip列表文件中的 ip地址
  • 最重要的,expect脚本 必须加入执行权限
  • 文件不存在,会报错
  • 分发系统还有一个重要的关键是,确保同步的机器的密码一致,否则将不能实现同步;所以这就存在一个弊端,一旦脚本暴露,将会让别人知道如何登陆你机器;当然也有对应的解决办法,那就是使用密钥认证,这样的话,自然在命令行业省去“输入密码< password:" { send "$passwd\r" } >''”和“定义密码< set passwd "123123a" >”的命令了
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018/02/09 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
百度分享代码–一键分享Baidu Share BEGIN
百度分享代码已升级到2.0,本页将介绍新版百度分享的安装配置方法,请点击左侧列表查看相关章节。
全栈程序员站长
2022/11/10
1.9K0
自定义百度分享
网上教程太多,具体步骤不再一一叙述,仅提几个注意点,最后会提供源码下载,应该会很容易看懂。
WindCoder
2018/09/20
4170
百度分享解决https格式
现在的百度分享都是不支持https格式的,所以碰到https格式的就会没有效果,想要解决这个问题也很简单,只需要两步: 1.https://github.com/hrwhisper/baiduSha
全栈程序员站长
2022/11/08
5050
百度分享支持https的图文教程
又是一篇关于https的博文啊,貌似启用了https之后会遇到很多的问题啊,不过那又怎样?谁让我喜欢了,哈哈。
李洋博客
2021/06/15
6570
百度分享支持https的图文教程
网页一键分享按钮HTML代码
<div class="bdsharebuttonbox"> <a href="#" class="bds_more" data-cmd="more"></a> <a href="#" class="bds_qzone" data-cmd="qzone" title="分享到QQ空间"></a> <a href="#" class="bds_tsina" data-cmd="tsina" title="分享到新浪微博"></a> <a href="#" class="bds_tqq" data-cmd="t
闻语博客
2021/01/21
5.8K0
百度分享前端代码( js 本地版 )
https://xieboke.net/static/api/js/share.js
卓越笔记
2023/02/18
1.3K0
h5怎么做分享到QQ 、朋友圈、微信 、微博等功能
 微信已经成为我们日常聊天联系基本的必备工具,所以小菜我首先介绍一下如何调用微信的分享功能。其实除了可以在微信上分享到朋友圈和发送给好友,微信的分享接口还提供了分享到QQ和分享到腾讯微博等,就是在页面的config接口注入权限验证配置好就ok!
用户1518699
2018/12/25
7.8K1
支持https网站的分享解决方法
网站开启 https 之后,要求所有的请求都是https的,但是度娘了一下,目前基本没有分享代码支持https,怎么办,还是万能的百度帮忙解决了,具体方法如下
zhangdd
2018/08/01
7030
百度分享js代码_javascript基础代码
转自:http://www.internetke.com/effects/run/2013/1108/117.html
全栈程序员站长
2022/11/08
8890
使用 Hexo & GitPage 搭建博客
GitPage 是个什么东西?它和 GitHub 是什么关系?Hexo 又是什么?它和 GitPage 又是什么关系?为什么我要用 Hexo + GitPage 搭建博客?这些问题在我不了解 GitPage 之前都是一堆问号,想必大多数小白都和我一样很懵,现在网上关于搭建博客的教程一大堆,但是当初我在搭建的时候照着步骤一步一步搞感觉很不爽,直到最后博客搭完了才明白以上几个问题,所以这里我想先给大家回答一下上面几个问题,然后再逐步教大家使用 Hexo + GitPage 搭建属于你自己的博客。
SkyRiN
2018/11/20
7410
基于HTML美食餐饮文化项目的设计与实现 HTML学生网页设计作业 计算机毕业设计 HTML+CSS+JavaScript
👨‍🎓静态网站的编写主要是用HTML DIV+CSS JS等来完成页面的排版设计👩‍🎓,常用的网页设计软件有Dreamweaver、EditPlus、HBuilderX、VScode 、Webstorm、Animate等等,用的最多的还是DW,当然不同软件写出的前端Html5代码都是一致的,本网页适合修改成为各种类型的产品展示网页,比如美食、旅游、摄影、电影、音乐等等多种主题,希望对大家有所帮助。 🧡 【作者主页——🔥获取更多优质源码】 🧡 【web前端期末大作业——🔥🔥毕设项目精品实战案例(1000套)
IT司马青衫
2022/08/17
8800
基于HTML美食餐饮文化项目的设计与实现 HTML学生网页设计作业 计算机毕业设计 HTML+CSS+JavaScript
通过Adblock关闭网站上百度分享的方法「建议收藏」
在七禾网站上,只要左键选中一段文字,就会蹦出个百度分享,导致针对选中文字的右键操作,比如qq浏览器中的收藏选中文字功能无法正常工作(原因是百度分享先弹出后抢了焦点,再点右键后选中的文字被取消选中了),试了各种浏览器设置方法都去不掉这个烦人的百度分享弹屏。
全栈程序员站长
2022/11/09
5520
HTML5 学习总结(二)——HTML5新增属性与表单元素
张果
2018/01/04
3.8K0
HTML5 学习总结(二)——HTML5新增属性与表单元素
hexo next主题为博客添加分享功能
title: hexo next主题为博客添加分享功能 date: 2018-01-06 20:20:02 tags: [hexo博客, 博客配置] categories: hexo next主题配置 --- 今天心血来潮,决定给博客添加分享功能,百度上首先是找到了使用shareSDK的分享功能,最后在实践的过程中发现它添加时步骤比较多,添加完成后效果比较丑(就是一个长条的浅蓝色按钮),而且点击后想要退出分享比较麻烦(它的取消按钮实在太难找了,它在页面最下方的位置,呈现浅灰色,这个设计太反人类了,决定放弃它了)。在next主题的官方的文档中发现它自身集成了百度分享的功能,所以决定采用百度了。
Masimaro
2018/08/31
2.5K1
怎么给WordPress网站添加固定的百度分享按钮?
怎么给WordPress网站添加固定的百度分享按钮?WordPress固定在页面左侧的百度分享按钮,可方便读者分享自己喜欢的文章,本文教你把这个固定的分享按钮添加到其它主题中。
主机教程网2bcd.com
2022/11/28
7000
百度网站链接怎么分享_url的组成部分有哪些
百度分享默认分享的是当前页的url,但也可以在同一个页面中分享多个不同的url,仅需进行如下简单的配置。
全栈程序员站长
2022/11/10
4280
百度分享无法抓取图片及摘要的折中解决办法
前天,cy 在《仿异次元百度分享工具条张戈修改版》一文留言告知,部分百度分享无法抓取图片: 亲自试了下,发现还真是抓不到图片,而且分享的内容也很单调!就一个文章标题而已,反观多说评论点击喜欢后的分享,
张戈
2018/03/26
1.1K0
百度分享无法抓取图片及摘要的折中解决办法
仿异次元百度分享工具条张戈修改版
只要不是高度近视,就会发现张戈博客的文章最近加上了这个仿异次元百度分享工具条。增加这个跟随横条的初衷,其实是最近启用百度两侧漂浮广告后,发现博客左侧的分享条以及右侧的卷动按钮在 1280*800 分辨率下,会被广告遮盖,有点不爽。于是就想起了以前看到过的这个玩意儿。 前天,经过一番折腾后,如愿以偿的加上了这个功能,感觉挺不错的!当我回访重量网络博客时,发现他的工具条有个很棒的功能,那就是字体大小及侧边栏控制,可使用大字体,并开启宽屏浏览!感觉很棒! 于是,就给他留言,想他给下源码。第二天还是没回复我(应该是
张戈
2018/03/26
1.3K0
仿异次元百度分享工具条张戈修改版
Hexo 入门指南(七) - 评论 & 分享
首先到多说官网去注册一个账号。然后点击进入添加站点页面,填写所有信息。注意,多说域名的前缀就是站点的短网址,下面要用到,这里假设为short_name。
ApacheCN_飞龙
2019/02/15
4470
学生个人博客网页设计作品 学生个人网页模板 个人网页制作 HTML学生个人网站作业设计
✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业: 【📚毕设项目精品实战案例 (1000套) 】 🧡 程序员有趣的告白方式:【💌HTML七夕情人节表白网页制作 (110套) 】 🌎超炫酷的Echarts大屏可视化源码:【🔰 echarts大屏展示大数据平台可视化(150套) 】 🎁 免费且实用的WEB前端学习指南: 【📂web前端零基础到高级学习视频教程 120G干货分享】 🥇 关于作者: 💬历任研发工程
IT司马青衫
2022/08/24
2.1K0
学生个人博客网页设计作品 学生个人网页模板 个人网页制作 HTML学生个人网站作业设计
推荐阅读
相关推荐
百度分享代码–一键分享Baidu Share BEGIN
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档