我想使用 rsync 将目录从生产服务器备份到备份服务器。
我当前的解决方案:
我对此解决方案的问题是:没有足够的空间来创建 tar 文件+创建 tar 文件时需要大量资源。它应该尽可能减少对生产服务器资源的影响。
我想将文件发送到远程服务器上的 tar 文件中。我只需发送文件并将其 tar 到备份服务器上,但在我看来,这不是一个好的解决方案。
我想授予某人在我的 Ubuntu 网络服务器上托管一些简单文件的权限。这是针对 IRC 日志记录机器人的。我想给他们无密码的 ssh/scp/rsync/sftp 访问权限。但是我希望能够限制他们可以做什么,换句话说,我不想给他们一个完整的 ssh shell。我还希望能够限制他们可以占用的磁盘空间量,因此他们总共不能使用超过(比如)200MB 的我的磁盘。
不需要但可能很好的奖励选项:限制他们可以上传的文件类型?(可能是 Mime 类型?)当他们上传文件时记录?限制他们的带宽?
我有哪些选择?
我正在运行以下 rsync 命令
rsync --times -v --recursive --compress --exclude "*.svn" --rsh=/usr/bin/ssh source/folder/ user@ip:httpdocs/
Run Code Online (Sandbox Code Playgroud)
运行时排除 *.svn 文件。我的问题是如何将要排除的文件类型列表传递给它。我们的开发副本中有很多不必要的隐藏文件(IDE 项目文件和 osx 特定文件)
我需要传入 5 或 6 个文件扩展名的列表,以便 rsync 忽略。
谢谢
我服务器上的每个端口都被阻止,除了端口 222 也是 ssh 连接。这台服务器几乎是一个备份服务器,我的客户端 rsync 到它。
我通过使用 ssh 的端口转发 ( -P 222 -L 873:myserver.com:873) 来做到这一点,但是,我只想使用 rsync 命令来做到这一点。那可能吗?
这是我一直在尝试的:
sudo rsync -avv --progress --inplace --rsh='ssh -p 222 -L 873:myserver.com:873' . rsync://bt-backup@localhost/backup-bt-backup
Run Code Online (Sandbox Code Playgroud)
但它不起作用,因为我尝试登录本地主机,而不是 myserver.com。
正在做:
sudo rsync -avv --progress --inplace --rsh='ssh -p 222 -L 873:myserver.com:873' . rsync://bt-backup@myserver.com/backup-bt-backup
Run Code Online (Sandbox Code Playgroud)
让我通过 ssh 登录,但 rsync 尝试远程主机而不是端口已转发的本地主机
我有几台运行 rsyncd 的服务器。我不使用 ssh 隧道,而是使用本机 rsync 协议。同步文件的一个文件夹包含应形成 ISO 映像的文件。每当该文件夹中的文件上传(从远程推送到此服务器)时,它应自动重新创建 iso 文件。理想情况下,只有文件内容或大小更改才能触发此操作,因为我想在用户可以下载和刻录它的网页中显示上次更改 iso 的日期。
因为iso很大,如果只有一个文件更改,我想在每台服务器上创建它。我不想同步iso本身
在我们的 Cisco 路由器上,我们启用了 RCP。现在我们想用我们的 Ubuntu 服务器复制所有运行配置,但我找不到任何合适的命令。
我尝试使用 rsync 和 cp 进行复制,但是没有用。
我试过的命令:
cp (IP):running-config
rsync (IP):running-config ./
rsync rcp://10.18.253.1/running-config ./
Run Code Online (Sandbox Code Playgroud) 我正在两台服务器之间启动一个 rsync 简单命令。两台服务器在绑定上都有两个 eth 接口。当我使用 rsync 从一台服务器向另一台服务器发送一个大文件时,我达到了 130M/s 的传输速率。
但是,这就是问题所在,当我发送一个包含大量小文件的目录时,传输速度最好是 1M/s。
我已经检查了两个 CPU 负载(8cpu i7),它们最大为 10%。
知道使所有传输变慢的原因是文件的打开/关闭,并且“理论上”会在 cpu 上运行,我知道这可以轻松调整。但我不知道如何调整。
关于如何使 rsync 使用所有 CPU 的任何提示?
我正在编写一个 bash 脚本,该脚本将从 cron 调用以每天一次从远程服务器中提取文件。我正在使用 SSH,因此我需要自动提供密码,因为它在无人值守的情况下运行。到目前为止,这是我想出的:
1:通过创建DSA密钥对ssh-keygen
2:将公钥复制到远程服务器
3:配置ssh-agent处理密钥密码
我的问题是:这一切都是必要的吗?这是最简单/最好的方法吗?这是一项非常简单的任务,因此我希望在保持合理安全级别的同时使配置尽可能简单。
附加信息:
- 未运行 rsync 守护进程
- 两台机器都是 Ubuntu linux
我是 rsync 的新手。
很多人说 rsync 在所有方面都很出色
一次复制超过 10 GB 的大量文件,大量目录怎么样?
rsync 是否足够强大?
我有一个 VPS 生产服务器,它为我为客户制作的 Web 应用程序提供服务。我有一个 rsync cron 作业在我的开发服务器上运行,它每天对整个生产服务器进行备份。
#!/bin/sh
RSYNC=/usr/bin/rsync
SSH=/usr/bin/ssh
KEY=/root/backup-rsync-key
RUSER=root
RHOST=xxx.xxx.xxx.xxx
LPATH=/home/backup
RPATH=/
$RSYNC -avz -e "$SSH -i $KEY" $RUSER@$RHOST:$RPATH $LPATH
Run Code Online (Sandbox Code Playgroud)
它工作正常,但会出现以下类型的错误:
...
rsync: read errors mapping "/sys/module/yenta_socket/parameters/disable_clkrun": No data available (61)
ERROR: sys/module/yenta_socket/parameters/isa_probe failed verification -- update discarded.
rsync: read errors mapping "/sys/module/yenta_socket/parameters/isa_probe": No data available (61)
ERROR: sys/module/yenta_socket/parameters/pwr_irqs_off failed verification -- update discarded.
rsync: read errors mapping "/sys/module/yenta_socket/parameters/pwr_irqs_off": No data available (61)
ERROR: sys/power/state failed verification -- update discarded.
rsync: read errors mapping "/sys/power/state": No …Run Code Online (Sandbox Code Playgroud)