0

我正在使用 nzsql 从 netezza 服务器生成文件。现在要求的下一部分是将文件压缩并移动到另一个盒子(第二个 unix 盒子)。我可以在第一个盒子里实现这一点(坐在第一个盒子里,我先做 gzip,然后使用 scp 移动文件)。但我的问题是,这可以直接从第二个盒子完成吗?意味着在第一个框中将有将生成 nzsql 的文件,在第二个框中,该文件将被拉取,并且在拉取时将被压缩(使用 mkfifo 或通过任何其他方式)。在第一个框中,我不希望创建或驻留 zip 文件。请让我知道如何实现这一目标。

4

1 回答 1

0

您可以在框 2 中定期运行它:

rsync -azP user@box1:/path/to/your/sync/folder /dst/folder

参数说明直接从手册页复制:

-a, --archive 归档模式;等于 -rlptgoD(无 -H、-A、-X)

-r, --recursive 递归到目录

-l, --links 将符号链接复制为符号链接

-p, --perms 保留权限

-D 与 --devices --specials 相同

--devices 保留设备文件(仅限超级用户)

--specials 保留特殊文件

-t, --times 保留修改时间

-o, --owner 保留所有者(仅限超级用户)

-g, --group 保留组

-z, --compress 在传输过程中压缩文件数据

-P 与 --partial --progress 相同

--partial 保留部分传输的文件

但我怀疑它是否正确。您应该从 box1 推送它以最大限度地减少带宽使用。拉动几乎与轮询相同。

这里的参考是一个非常完整的教程:https ://www.digitalocean.com/community/tutorials/how-to-use-rsync-to-sync-local-and-remote-directories-on-a-vps

于 2015-05-12T15:50:03.437 回答