我是从的印象是这里在其他研究中,rsync的是用于同步的目录和他们有任何内容的命令。
我尝试了以下命令:
rsync -avzr ~/testing123 ~/Desktop/apartment
sudo rsync -avzr ~/testing123 ~/Desktop/apartment
Run Code Online (Sandbox Code Playgroud)
它们都不保留图标,它们都产生相同的结果:
sent 544 bytes received 92 bytes 1272.00 bytes/sec
total size is 6148 speedup is 9.67
building file list ... done
created directory /Users/null/Desktop/apartment
testing123/
testing123/.DS_Store
testing123/Icon\#015
testing123/info.txt
sent 566 bytes received 92 bytes 1316.00 bytes/sec
total size is 6166 speedup is 9.37
Run Code Online (Sandbox Code Playgroud)
它们都正确同步文件,但不保留原始文件或目录中的图标。对于目录,这两个命令都不会在文件夹上保留图标,而是在名为“Icon”的目标目录中创建一个没有扩展名的“0 KB”文件。对于文件,它什么都不做,没有神秘的“图标”文件,也没有实际的图标。
是我使用了错误的论点吗?这里有什么问题?为什么rsync实际上不会在目标文件上创建与源文件上相同的图标?
我有 3 个驱动器。为此,我们将分别称它们为 A、B 和 C。
A 是 2 TB
B 是 1 TB
C 是 500 GB
我已经跑了
rsync -avz -progress A B
Run Code Online (Sandbox Code Playgroud)
现在,B是充分和我想要移动/复制的内容是不是已经在B,从A到C
对我来说,A 上的内容会发生什么并不重要,因为无论如何我都会重新格式化。
我正在设置一个每晚的 cron 作业来运行 rsync(使用 --delete)以将网络共享与其各自的备份卷同步。
如果在 rsync 进程运行期间源驱动器上有很多活动,我会遇到任何麻烦吗?
例如,可能有一个长时间运行的复制命令传输与 rsync cron 作业重叠的 GB 数据。会不会有并发问题?
这是事情,
我的服务器上有一个 50 GB 大小的文件夹,其中包含超过 60000 个文件。我使用rsync将它传输到镜像服务器,几乎一半的文件已经传输。现在我想删除主服务器上传输的文件。
这可以用 rsync 完成吗?我确实阅读了帮助并找到了 --delete 选项,但这些文件非常重要,所以我想获得专家意见,谢谢。
所有的主题,我遇到参与rsync过ssh或rsync使用限制访问的用户。
我以 root 身份收到权限被拒绝 (13) 错误。这是我的配置文件:
/etc/rsyncd.conf:
auth users = backup, root
secrets file = /etc/rsyncd.secrets
[backupdir]
path = /backupdir
Run Code Online (Sandbox Code Playgroud)
/etc/rsyncd.secrets(文件模式600,所有者根,组根):
backup:backuppassword
root:rootpassword
Run Code Online (Sandbox Code Playgroud)
执行 rsync 的 bash 脚本:
export RSYNC_PASSWORD=rootpassword
rsync -a --verbose --delete rsync://root@myserver/backupdir mydestination
Run Code Online (Sandbox Code Playgroud)
上面的 bash 脚本mydestination驻留在 Win XP 机器上,myserver是一个 Debian 服务器。
好的,这是一个奇怪的问题——我妻子刚买了一辆 2014 年的 Nissan Altima。所以,我拿了她的 iTunes 库并将 .m4a 文件转换为 .mp3,因为汽车音响系统只支持 .mp3 和 .wma。到现在为止还挺好。然后我将文件复制到 DOS FAT-32 格式的 USB 拇指驱动器,并将驱动器连接到汽车的 USB 端口,却发现所有曲目都乱序了。所有曲目都以两位数字前缀开头,即 01、02、03 等。因此您会认为它们是有序的。所以我打电话给 Nissan Connect 支持,该代表告诉我,以正确的顺序读取文件存在一个已知问题。他说这些文件的读取顺序与写入的顺序相同。所以,我按照预定的顺序手动复制了几张专辑,果然他是对的。
所以我复制了大约6张专辑进行测试,然后切换到顶级目录并进行了“查找.>music.txt”。然后我把这个文件传递给 rsync 像这样:
rsync -av --files-from=music.txt . ../Marys\ Music\ Sequenced/
Run Code Online (Sandbox Code Playgroud)
这些文件看起来是按顺序复制的,但是当我按照修改时间的顺序列出文件时,它们与原始文件的顺序相同:
../Marys Music Sequenced/Air Supply/Air Supply Greatest Hits> ls -1rt
01 Lost In Love.mp3
04 Every Woman In The World.mp3
03 Chances.mp3
02 All Out Of Love.mp3
06 Here I Am (Just When I Thought I Was Over You).mp3
05 The One That You Love.mp3 …Run Code Online (Sandbox Code Playgroud) 我试图找到一种rsync将ext4文件系统的内容作为常规备份的一部分的有效方法,但我认为合适的压缩和最小的所需空间。
我可以只使用普通rsync然后tar/gzip结果目录,但压缩本身会比前面的 rsyncing 慢几个数量级。
我不能使用squashfs它,因为它们是只读的。
我可以为此备份创建一个特殊类型的分区,使用内置压缩,例如btrfs或reiser4但我必须以特定大小创建它并且它不会扩展。
我想知道是否有任何具有内置压缩功能的容器技术,可以根据数据量透明地自动调整其大小,并同步到它?
顺便说一下,我使用 Debian GNU/Linux。
我正在使用 rsync 将文件从 Mac 笔记本电脑备份到 Windows 笔记本电脑上的 USB 驱动器 (exFAT)。USB 驱动器在我的家庭网络中共享,并安装在我的 Mac 上。
当 rsync 重新发送所有文件时,我注意到一个奇怪的问题,即使我没有做任何修改。
当我打开时,--itemize-changes我可以看到它t在每个文件的输出中,表明文件时间戳是重新发送的原因。
>f..t.... netstat.txt
Run Code Online (Sandbox Code Playgroud)
ls -lT (osx) 表示一个秒格式的时间戳,它显示文件之间的一秒差异,源是更新的。
$ ls -lT source/file.txt
-rwxr----- 1 user group 1176 Sep 19 22:32:59 2014 file.txt
$ ls -lT destination/file.txt
-rwx------ 1 user group 1176 Sep 19 22:32:58 2014 file.txt
Run Code Online (Sandbox Code Playgroud)
将-c选项添加到 rsync 忽略了时间戳差异,并跳过了不必要的传输。但是,我想知道为什么我的源文件和目标文件的时间戳差异为 1 秒(就我费心检查而言)。
我的环境是 Ubuntu 15.04,内核为 3.19.0-28-generic 和 Btrfs v3.17。
我有两个相同的外部 USB 硬盘,用于我的备份脚本。其中一个格式为btrfs,另一个格式为ext4. 源文件系统始终是ext4. 该rsync命令如下所示:
rsync --inplace --no-whole-file --link-dest="$previousBackup" "$sourceDir" "$destDir"
Run Code Online (Sandbox Code Playgroud)
我刚刚意识到执行备份btrfs需要非常长的时间:略多于一个小时,相比之下执行相同的复制到ext4.
为了排除磁盘故障,我dd使用 Ubuntu 附带的“磁盘实用程序”进行了一些基准测试,但我在两个磁盘上都获得了相同的性能。缓慢的部分似乎是针对先前备份的硬链接。即使经过碎片整理和清理,以下命令在 上也需要大约 53 分钟btrfs,但在 上仅需要 1 分钟ext4:
cp -arl "$previousBackup" "$destDir"
Run Code Online (Sandbox Code Playgroud)
通过在互联网上的研究,我发现btrfs了硬链接的性能会受到影响的迹象,但我没想到会有如此巨大的差异。我发现这个命令更快,但仍然需要 30 多分钟才能完成:
cp -ar --reflink "$previousBackup" "$destDir"
Run Code Online (Sandbox Code Playgroud)
有没有人有这种行为的经验并且可以确认?有没有简单的方法来纠正它(例如不同的挂载选项),或者我应该尝试删除尽可能多的硬链接并只使用引用链接?
编辑
我刚刚发现即使删除一个目录也btrfs需要一个多小时。同样的操作在“孪生”ext4磁盘上是即时的。这里的元数据显然存在问题。
我有以下情况:
服务器 A 有一个marcouserid 的用户10001
服务器 B 有一个marcouserid 的用户10004
我正在将test.txt由 拥有的文件marco从服务器 A复制到服务器 B,并rsync -avz在服务器 B 上以root.
如果用户 ID 不同,rsync 会保留所有者吗?