Rsync
使用 rsync 保留在目錄/文件夾上修改的日期
我正在嘗試備份發生故障的硬碟驅動器,rsync 將是理想的,因為它具有進度指示器和停止和恢復能力等功能。我遇到的一個問題是,雖然保留了文件日期修改屬性,但目錄卻獲得了新的日期屬性。這會導致問題,因為我按日期對許多文件進行排序,所以我知道最近添加了什麼。是否可以使用 rsync 保留目錄日期修改屬性:
sudo rsync -avhX --progress --info=progress2 /mnt/failing/ /mnt/new/
-t(包含在 -a 中)選項保留文件屬性但不提及目錄。/mnt/new 分區的所有權/權限是否有任何特殊要求才能成功保留某些屬性?
目錄的最後修改時間由 保存
-a
,但只有在 rsync 完成時才能看到。它不會嘗試在不斷更新新文件的目錄上設置時間。你可以自己測試一下。創建一個目錄並將其上的日期設置為昨天,然後使用 rsync 複製它:
$ mkdir d1 d2 $ ls -ld d1 drwxr-xr-x 2 40 Nov 4 14:41 d1 $ touch -d 'yesterday' d1 $ ls -ld d1 drwxr-xr-x 2 40 Nov 3 14:41 d1 $ rsync -i -avR d1 d2 $ ls -ld d1 d2/d1/ drwxr-xr-x 2 40 Nov 3 14:41 d1 drwxr-xr-x 2 40 Nov 3 14:41 d2/d1/
d2/d1 目錄有昨天的日期。我們可以覆蓋它並查看 rsync 是否修復了問題:
$ touch d2/d1 $ ls -ld d1 d2/d1/ drwxr-xr-x 2 40 Nov 3 14:41 d1 drwxr-xr-x 2 40 Nov 4 14:42 d2/d1/ $ rsync -i -avR d1 d2 .d..t...... d1/ $ ls -ld d1 d2/d1/ drwxr-xr-x 2 40 Nov 3 14:41 d1 drwxr-xr-x 2 40 Nov 3 14:41 d2/d1/
rsync -i
顯示 d2/d1 上的時間戳錯誤並修復它。