Questions tagged «rsync»

Rsync是Unix和Windows系统的开源命令行工具,它提供快速的增量文件传输,以复制文件并在本地或远程主机之间同步目录。它广泛用于镜像和备份。

1
正确的rsync标志,用于从ext4备份到ZFS
我有一台带有ext4文件系统的运行Ubuntu 14.04.3 LTS的家庭服务器,我定期从各种设备向其中备份数据。 现在,我已经设置了带有ZFS文件系统的外部USB HDD,并希望将所有数据从家庭服务器备份到该USB驱动器上。并且由于我ZFS在外部驱动器上使用,所以我也想使用ZFS的快照功能。 因为我将文件从复制ext4到ZFS,所以无法使用该zfs send命令。因此,我坚持rsync。 我已经使用rsync了一段时间,所以我对此非常熟悉。但是,由于我将在目标文件系统上执行快照,因此我想浪费尽可能少的空间。 我碰到了这篇博客文章,它使用以下命令: /usr/bin/rsync -axH --no-whole-file --inplace --delete / /$backup_target/root/ 除了常见的标记(如-a,)外-x,--delete它还使用: -H (硬链接), --no-whole-file (强制启用delta-xfer算法),以及 --inplace (更新文件夹而不是进行新备份)。 我的问题:这些标志是否足够?还是应该添加或删除一些标志? 备份流程如下: 每次使用rsync备份到同一目录 使用以下命令创建该目录的快照 zfs snapshot backup@'date +%Y%m%d' 我猜这--inplace是必须的(因为每次都备份到同一目录)。可能也是如此,--no-whole-file因为它仅复制更改的数据块。但是呢-H?我应该添加其他标志吗?
1 ubuntu  backup  rsync  ext4  zfs 

0
rsync,符号未解析但找到了库
在嵌入式系统中,我无法运行rsync: $ rsync /usr/bin/rsync: symbol 'poptHelpOptions': can't resolve symbol /usr/bin/rsync: symbol '_poptBitsN': can't resolve symbol /usr/bin/rsync: symbol '_poptArgMask': can't resolve symbol /usr/bin/rsync: symbol '_poptBitsK': can't resolve symbol /usr/bin/rsync: symbol '_poptBitsM': can't resolve symbol /usr/bin/rsync: symbol 'poptAliasOptions': can't resolve symbol /usr/bin/rsync: symbol 'poptHelpOptionsI18N': can't resolve symbol 但似乎找到了依赖关系: $ ldd /usr/bin/rsync libz.so.1 …

1
如何设置/保留目录权限?
我正在使用CwRsync从我的Windows开发机器连接到linux网络服务器: rsync -avuz -e ./ssh --exclude=".svn" /cygdrive/c/xampp/htdocs/project123/ user123@project123.com:/home/user123/public_html 这使我的开发项目目录很快地与服务器同步。 但执行此操作后,所有目录属性都将重置为本地用户 user123 只是,所以该网站不再可用。我需要手动重置这些属性。 为什么会发生这种情况,以及如何预防? PS。来自Windows环境我很难理解rsync。我从一些例子中复制了上面的命令......只需要让这个小东西工作......

0
使用网络时,Io会降得很低
你好我从一些mounth使用manjaro linux。我的电脑工作得很好但是当我下载的东西时,即使我有ssd和光纤,它也开始变得很慢。 Yesteday我尝试使用rsync和RJ45 cat 5e电缆从我朋友的电脑上下载51GB文件。在开始时它以65MB / s的速度运行良好但在几秒钟之后我的速度降至每秒KB。在观看iotop和iptraf时,我可以看到我的io非常低。使用scp或其他工具时,我有相同的issu。 感谢您阅读我的问题。

1
network old mac用作rsync备份
目标: 能够在我的本地计算机“X”(Ubuntu 13.1)上运行我的rsync备份到远程计算机,即当前未联网的mac“Y”(OSX 10.2.8)。 到目前为止我做了什么: 飞向旧的mac 连接到互联网(有线连接到 路由器) 关闭防火墙以进行ssh的远程登录 建立港口# 设置静态IP 192.YYY.Y.Y 重建机器“Y” 将本地机器“X”连接到wifi Linux终端上“X”的连接测试: ping Y.local ping: unknown host Y.local ping 192.YYY.Y.Y From 66.xx.xx.xx icmp_seq=1 Time to live exceeded 我需要帮助的是: 我希望能够首先ssh到这台旧机器,然后rsync到它。我控制了rsync部分,只是这个网络问题我很难排除故障。

1
如何使用rsync恢复中断传输
我需要中断并重启Linux复制操作。做这个的最好方式是什么? 我目前正在将数据从一台Debian PC复制到另一台。我是从这开始的 sshfs 和 tar 如下,但没有要求使用 sshfs 也不 tar 如果另一种可靠的方式就足够了: local$ mkdir /path/to/remote-sdb1 local$ sshfs root@remote:/mnt/sdb1 /path/to/remote-sdb1 local$ tar cf - /path/to/local/data/to/copy | tar xf - -C /path/to/remote-sdb1 & 远程盒子是System Rescue CD的一次性启动,没有本地操作系统,在我的防火墙内,所以我不太关心以root身份登录,直到有人发表评论。 这比我原先预期的要花费更长的时间,所以我需要中断操作以关闭远程盒子几分钟。 当我重新上电时,我知道我无法恢复焦油操作;相反,是否有类似的东西 rsync 这个命令可以让我从我离开的地方轻松恢复并完成传输,包括在我中断操作时完成正在进行的文件的拙劣传输? 完成后,我计划运行 rsync 命令输入 这个 回答验证传输是否成功完成,除非有人建议这是多余的: local$ rsync -niaHc /path/to/local/data/to/copy/ /path/to/remote-sdb1/path/to/local/data/to/copy (如帖子所述,我需要小心结束第一个文件夹名称 /。)

1
使用rsync编写脚本,提取超过返回状态
我有一个脚本来备份我的图像并提醒我每5分钟运行一次的脚本状态。但是,我想弄清楚如何识别rsync何时成功,但没有做任何事情(没有文件传输),所以当发生这种情况时我无法通知。因此,只有在实际传输文件时才应打印第37行。
bash  rsync 

2
将备份文件夹设为只读,但保留权限?
在Linux中我使用 rsync -a --delete /some-path/source/ /some-path2/destination/ 备份文件夹 source/ 至 destination/。我当然希望保留所有文件的权限 source/这就是我使用的原因 -a 旗。但是,离开是危险的 destination 具有读写访问权限。不知何故,我想要所有文件 destination 保留的权限 source,但我想让普通用户只有读访问权限(这样我就可以避免任何意外修改)。我怎样才能做到这一点?

0
Rsync mkstemp失败:资源不可用
我正在我的Windows 8.1 64机器上开发一个laravel项目,安装了最新的Vagrant VituralBox Homestead盒子。 我的yaml文件中有以下内容 授权:〜/ .ssh / id_rsa.pub键: - 〜/ .ssh / id_rsa folders: - map: ~/Projects to: /home/vagrant/Code type: "smb" mount_options: ["vers=2.1","mfsymlinks"] #options: # rsync__args: ["--verbose", "--archive", "-zz"] # rsync__exclude: ["node_modules","vendor"] 以及我的Vagrantfile中的以下内容 def Homestead.configure(config, settings) # Set The VM Provider ENV['VAGRANT_DEFAULT_PROVIDER'] = settings["provider"] ||= "virtualbox" ENV["VAGRANT_DETECTED_OS"] = …

1
连锁几个ssh隧道
我是这个论坛的新人。 我有以下配置: my_computer gateway1 gateway2 host_to_reach. 我只能使用ssh隧道访问gateway1,该隧道由我无法访问的服务器创建(我只能使用ssh -p 4022 localhost来访问gateway1)。然后,我可以自由创建一个隧道,从gateway1到gateway2访问host_to_reach。 我的问题:我可以直接从my_computer访问host_to_reach吗?这背后的需求之一是rsyncmy_computer和host_to_reach。 谢谢你的帮助。LM
ssh  rsync  tunnel 

0
在子文件夹中使用没有dotfiles的rysnc进行复制
我正在尝试备份Plex,我有很多音乐,但Plex使用点和下划线创建文件。喜欢Music/Rock/The Artist/._trackname.mp3 rsync -nvr --ignore-existing --exclude-from='rsync_exclude.txt' --stats source destination 我把它放在我的rsync_exclude.txt。我尝试了很多东西。 .* \..*.mp3 \..*.jpeg \..*.jpg ._.DS_Store .DS_Store .[a-z]* 正则表达式不起作用。我必须具体。 没有任何成功。干运行仍然显示我的文件: Friends/._Acid Cave.mp3
backup  sync  rsync 

0
WordPress上传rsync文件所有权问题
我正在运行LEMP堆栈。Nginx以www-data用户身份运行。 它正在运行WordPress安装。每次上传内容时,上传的文件都www-data符合预期。 我正在尝试将我的uploads文件夹rsync到服务器sshing in deploy用户。 但是,除非我sudo chown -R deploy:deploy uploads在服务器上运行以更改所有权,否则我有所有权问题并且rsync失败。 有没有办法避免这种问题?我一直都遇到它!这两个用户都可以添加到同一个组中吗?在理解用户和群组时,我绝对是新手。任何帮助,将不胜感激。

0
我可以在每行的一个rsync过滤规则文件中检查多个文件扩展名吗?
我有一个工作rsync脚本,它递归遍历我们的目录结构并.publish为每个目录加载一个文件。每个文件都包含要发布的文件列表。发布意味着将文件从内部(而非完全开源)git存储库复制到完整的开源存储库。然后将目标文件夹(称为导出)推送到GitHub。选择这种方式,因为要么我们没有文件的所有权利来发布它们,要么某些文件在上市之前需要返工:)。 一个.publish文件看起来像这样的: # git files .gitempty # Documentation README.md # Package sync.pkg.vhdl # Clock-Domain-Crossing (CDC) circuits sync_Bits.files sync_Bits.vhdl sync_Reset.files sync_Reset.vhdl sync_Strobe.files sync_Strobe.vhdl sync_Vector.files sync_Vector.vhdl sync_Command.files sync_Command.vhdl # Altera specific implementations sync_Bits_Altera.vhdl sync_Reset_Altera.vhdl # Xilinx specific implementations sync_Bits_Xilinx.vhdl sync_Reset_Xilinx.vhdl 我正在寻找一种可能性,通过使用类似:(regexp语法)的方法将行*.vhdl和*.files行合并为一行sync_Command\.(vhdl|files)。 我搜索了rsync手册页,但我刚刚找到了*通配符,这似乎有点笼统。 是否有可能为每行指定多个文件扩展名? 这是我的rsync命令行: rsyncOptions=( \ --archive \ --itemize-changes \ --human-readable \ …

1
源主机无法访问Internet,但可以通过SSH连接到主机; 我如何rsync到第三个,互联网主机?
这是我用来从我的SOURCE机器运行的命令 rsync -Rrlt --progress --delay-updates ./my_folder root@machine-on-same-network:/home/me/. 现在我需要将同一个文件夹复制到Internet上的TARGET机器上。 我的SOURCE机器无法访问Internet,但是,SOURCE机器可以通过SSH连接到可以访问互联网的机器。 有办法实现吗?
linux  ssh  rsync 

1
如何编辑一个文件,但要在两个位置进行更新?
我想做的是让我的计算机在编辑本地文件时自动更新备份文件。例如。我有一个正在工作的网站目录。每个站点都是其自己的目录。我在本地处理这些文件,但是公司政策规定它们必须位于服务器上,以防万一我们的编码员发生了某些事情(例如,大脑从思考变为艰苦)。 我需要做的是以某种方式将我的本地目录链接到远程目录。 要考虑的一件事是,远程目录与本地目录的结构不同。远程目录包含公司文件,其中包含网站文件夹,而我的本地目录只是一个充满网站文件夹的htdocs文件夹。我需要更新本地文件夹,例如 htdocs> cool-website 到远程服务器,例如 公司>酷公司>网站 远程服务器只是网络上的硬盘驱动器,因此它实际上并未上传到Internet上的某个位置,而只是在另一个驱动器上进行复制。 我想我可以为此使用rsync吗?只需在每个要备份的站点上运行命令?如果可能的话,我想使它自动化。 最后一件事,我不能仅将文件存储在网络服务器上并将它们链接到我的本地驱动器,因为我将计算机带回家进行处理,实际上需要文件存在于硬盘中。
linux  bash  rsync 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.