当前位置: 首页 > news >正文

网站建设设计基础网站建设感想

网站建设设计基础,网站建设感想,高端建筑设计公司,vancl官网OCC服务器到BCC服务器文件正向同步 需求:编写shell脚本,使用rsync命令来同步目录,把全部需要同步的目录放在配置文件中,设置定时任务自动同步 服务器IP: 服务器类型IP地址OCC服务器192.168.1.188BCC服务器192.168.1…

OCC服务器到BCC服务器文件正向同步

需求:编写shell脚本,使用rsync命令来同步目录,把全部需要同步的目录放在配置文件中,设置定时任务自动同步

服务器IP:

服务器类型IP地址
OCC服务器192.168.1.188
BCC服务器192.168.1.88
第一步:配置SSH免密登录
  1. 生成SSH密钥(如果尚未生成):
    在192.168.1.88上执行:

    ssh-keygen -t rsa
    

    按提示操作,不要输入密码,这样就会在~/.ssh/id_rsa.pub生成公钥。

  2. 复制公钥到192.168.1.188
    在192.168.1.88上执行:

    ssh-copy-id -i ~/.ssh/id_rsa.pub mml3@192.168.1.188
    

    输入密码XXXXXX,完成后应能免密码登录到192.168.1.188

  3. 反向操作
    同样的步骤也需要在192.168.1.188上执行,复制其公钥到192.168.1.88上。

    ssh-copy-id -i ~/.ssh/id_rsa.pub mml3@192.168.1.88
    
第二步:编写Shell脚本

在BCC服务器1.88上新建一个脚本sync_dirs.sh,将使用rsync命令从1.188上同步指定的目录到1.88的本地目录。请确保两台服务器上都安装了rsync。将需要同步的文件夹全部填写到配置文件/home/mml3/sync_dirs.conf中。

#!/bin/bash# 定义源服务器的地址
SOURCE_SERVER="mml3@192.168.1.188"# 配置文件路径
CONF_FILE="/home/mml3/sync_dirs.conf"# 日志文件路径
LOG_FILE="/home/mml3/app/sync_dirs.log"# 检查配置文件是否存在
if [ ! -f "$CONF_FILE" ]; thenecho "配置文件不存在: $CONF_FILE" | tee -a "$LOG_FILE"exit 1
fi# 读取配置文件并同步每个目录
while IFS= read -r dir; do# 跳过空行if [ -z "$dir" ]; thencontinuefi# 如果目录不存在,则创建if [ ! -d "$dir" ]; thenecho "目录不存在,正在创建: $dir" | tee -a "$LOG_FILE"mkdir -p "$dir"fi# 开始同步echo "开始同步目录: $dir - $(date)" | tee -a "$LOG_FILE"rsync -avz --delete "$SOURCE_SERVER:$dir/" "$dir" >> "$LOG_FILE" 2>&1echo "完成同步目录: $dir - $(date)" | tee -a "$LOG_FILE"
done < "$CONF_FILE"
第三步:设置定时任务
  1. 保存脚本:将上述脚本保存为sync_dirs.sh,并赋予执行权限:

    chmod +x sync_dirs.sh
    
  2. 首次需要手动执行,执行完以后配置定时任务

    ./sync_dirs.sh
    
  3. 编辑Crontab
    使用crontab -e命令编辑定时任务,使其同时记录标准输出和错误输出。

    */5 * * * * /home/mml3/sync_dirs.sh >> /tmp/cron.log 2>&1
    

    这会将脚本执行的所有输出(包括错误)重定向到指定的cron.log日志文件中。可以在/home/mml3/app/sync_dirs.log/tmp/cron.log中查看同步操作和定时任务的详细日志。目前上面这个脚本是单向的,文件只从188的目录同步到88。 如果188出问题了,那么我们就需要把88上面的文件同步到188上面 以下是执行的步骤:


OCC服务器到BCC服务器文件反向同步

第一步:修改脚本以反转同步方向

在上面现有脚本中,只需将rsync命令的源和目标地址调换即可:然后在1.188上新建脚本并执行。

并且需要把同步的文件夹全部填写到配置文件/home/mml3/sync_dirs.conf中。

#!/bin/bash# 定义源服务器的地址
SOURCE_SERVER="mml3@192.168.1.88"# 配置文件路径
CONF_FILE="/home/mml3/sync_dirs.conf"# 日志文件路径
LOG_FILE="/home/mml3/app/sync_dirs.log"# 检查配置文件是否存在
if [ ! -f "$CONF_FILE" ]; thenecho "配置文件不存在: $CONF_FILE" | tee -a "$LOG_FILE"exit 1
fi# 读取配置文件并同步每个目录
while IFS= read -r dir; do# 跳过空行if [ -z "$dir" ]; thencontinuefi# 如果目录不存在,则创建if [ ! -d "$dir" ]; thenecho "目录不存在,正在创建: $dir" | tee -a "$LOG_FILE"mkdir -p "$dir"fi# 开始同步echo "开始同步目录: $dir - $(date)" | tee -a "$LOG_FILE"rsync -avz --delete "$SOURCE_SERVER:$dir/" "$dir" >> "$LOG_FILE" 2>&1echo "完成同步目录: $dir - $(date)" | tee -a "$LOG_FILE"
done < "$CONF_FILE"
第二步:设置定时任务
  1. 保存脚本:将上述脚本保存为sync_dirs.sh,并赋予执行权限:

    chmod +x sync_dirs.sh
    
  2. 首次需要手动执行,执行完以后配置定时任务

    ./sync_dirs.sh
    
  3. 编辑Crontab
    使用crontab -e命令编辑定时任务,使其同时记录标准输出和错误输出。

    */5 * * * * /path/to/sync_dirs.sh >> /tmp/cron.log 2>&1
    
http://www.yayakq.cn/news/599480/

相关文章:

  • 做伤残鉴约号网站微商城运营方案
  • 网站开发与运营方向长春制作网站哪家好
  • 一个网站建设流程图精密导航
  • 建设网站都需要哪些内容山东闪电建站网
  • 百度搜索一下百度无锡seo
  • 咸宁公司做网站医院网站云服务器配置
  • 毕业设计 做网站wordpress 密码加密
  • 网站鼠标悬停动态效果在网上做效果图的网站
  • 网站图片等比缩小邢台贴吧最新消息
  • 青岛做网站建设价格低厦门建设执业资格注册管理中心网站
  • 网站建设前端和后端的区别网站策划需要什么
  • 网站建设找邓金平.net 网站模板下载地址
  • 贵阳花溪建设村镇银行官方网站深圳网站开发哪家公司好
  • 建设生鲜网站价格地方电商门户网站如何建设
  • 网站建设除了中企动力wordpress编辑器不要用5.0
  • 网站优化比较好的公司wordpress如何改默认后台地址
  • 私人做网站费用做一套二级域名网站怎么做
  • 返利的网站怎么做做网站的公司叫什么软件
  • 途牛网站大数据建设网站建设教程.
  • 网站正在建设中英文表述wordpress主题访问慢
  • wordpress api 音乐泰州网站优化公司
  • 哪个网站可以做视频外链一般开发一个app需要多少钱
  • 宛城区网站制作做农村电子商务的网站有哪些内容
  • wordpress死链提交seo专员是指什么意思
  • 财务部官方网站经济建设司灵犀科技网站建设
  • 网站建设询价邀请函江门关键词优化广告
  • 在线做初中题网站oa系统使用教程
  • 网页界面设计视觉空间的三维可视化网站相册优化
  • 陕西省建设招投标网站小企业建站系统
  • 用vue框架做的网站互联网+创业项目计划书