AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 1150184
Accepted
Senior Geek
Senior Geek
Asked: 2023-12-21 13:25:03 +0800 CST2023-12-21 13:25:03 +0800 CST 2023-12-21 13:25:03 +0800 CST

如何配置多播以在批处理模式下与 rsync 一起使用

  • 772

rsync 手册页显示“多播传输协议可用于同时将批量更新文件并行传输到许多主机,而不是单独向每个主机发送相同的数据。” 但我找不到任何有关如何做到这一点的信息。任何人都可以回复一个如何执行此操作的示例或提供该信息的 URL?

rsync
  • 1 1 个回答
  • 44 Views

1 个回答

  • Voted
  1. Best Answer
    A.B
    2023-12-22T00:26:11+08:002023-12-22T00:26:11+08:00

    rsync本身不支持多播,它只是建议将多播作为传输批处理(增量)文件的方法:

    批处理模式

    批处理模式可用于将同一组更新应用到许多相同的系统。假设有一棵树被复制到许多主机上。现在假设对此源树进行了一些更改,并且这些更改需要传播到其他主机。为了使用批处理模式执行此操作,rsync 使用 write-batch 选项运行,将对源树所做的更改应用到目标树之一。write-batch 选项使 rsync 客户端将针对其他相同目标树重复此操作所需的所有信息存储在“批处理文件”中。

    生成一次批处理文件可以避免在更新多个目标树时多次执行文件状态、校验和和数据块生成。多播传输协议可用于同时将批量更新文件并行传输到许多主机,而不是单独将相同的数据发送到每个主机。

    使用多播的一种方法是使用带有实验性多播选项的 TFTP。

    在 Linux 上,支持多播选项的此类工具之一是atftp(客户端)/ atftpd(服务器)。

    例如,在 IP 地址为 192.0.2.2 的主机上手动启动服务器,如下所示:

    /usr/sbin/atftpd --daemon --no-fork --port 69 --tftpd-timeout 300 --retry-timeout 5 --mcast-port 1758 --mcast-addr 239.255.0.0-255 --mcast-ttl 1 --maxthread 100 /srv/tftp
    

    将允许它使用多播来提供文件/srv/tftp。

    命令可以包含通过 TFTP 服务器提供批处理的rsync选项,然后多个客户端可以使用多播同时下载文件(如):--only-write-batch=/srv/tftp/foofoo/srv/tftp/foo

    atftp --option multicast --get --remote-file foo 192.0.2.2
    

    如果满足条件,服务器将一次性将文件发送给多个多播对等体。rsync然后可以使用该选项将下载的文件应用到客户端系统上--read-batch=foo(或者如果仍然适用,则复制并使用foo.sh沿 创建的脚本foo,如BATCH MODE中所述。)


    注意:systemd的默认 Linux 设置可能会阻止多播工作。systemd 套接字必须仅侦听 IPv4 0.0.0.0:69,而不是侦听双栈 IPv6 端口 69,这就是为什么我提供了一个手动启动它的示例(可能应该在前面加上systemctl stop atftpd.service atftpd.socket)。atftpd不支持 IPv6 组播。

    • 2

相关问题

  • 强制 rsync 进入非交互模式

  • 比较(diff)完整目录结构的最佳方法?

  • 如何使用 rsync 保持完整路径?

  • Rsyncing到USB驱动器时不时地失败

  • 使用 rsync 维护名称更改的目录的副本

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve