我将我的音乐收藏同步到以下设备:
- 我的台式机有 RAID10,我用它来翻录 CD 和下载音乐,
- 家庭媒体中心,控制家里的音频播放器
我使用一个非常简单的 rsync 命令来完成此操作:
rsync -av /media/ned/music/ tank:/media/steve/music/
有时我会删除桌面上的某些内容,或重命名。当我再次同步时,Tank 会保留旧副本,这可能会导致重复。
我知道有--delete-{before/after}
选择但我非常担心自动删除。目前还没有第三次备份,所以如果我犯了错误(我以前就犯过)删除rsync
了 Tank 上的“备份”,我就会丢失数据。
传输完成后,有没有办法生成可能删除的列表?理想情况下,rsync
会向我显示列表并给我一个[y/N]
提示,但我很乐意在单独的命令中执行此操作(我只需编写一个syncmusic
脚本)。
答案1
使用该--dry-run
选项。
rsync -av --delete --dry-run /media/ned/music/ tank:/media/steve/music/ | grep deleting
rsync
如果您运行不带该选项的命令,这将打印出将删除的内容的列表--dry-run
。
答案2
您真正要寻找的是:
rsync --dry-run --delete-after -av --info=DEL /media/ned/music/ tank:/media/steve/music/
如果您还想检查进度,那么您可以使用:
rsync --dry-run --delete-after -av --info=DEL,PROGRESS2 /media/ned/music/ tank:/media/steve/music/