실제로 내 Linux 시스템에는 두 개의 공유 폴더가 마운트되어 있습니다. 나는 그것을 .that 파일 /mnt/Live
과 동기화하는 데 사용 하며 동일해야 합니다./mnt/DR
/mnt/Live
/mnt/DR
이를 달성하기 위해 스크립트를 만들었습니다 rsync
.
rsync -arhtuz -vv --delete --stats --progress /mnt/Live/ /mnt/DR
하지만 여기서 문제는 하위 디렉터리가 너무 많고 파일이 수백만 개 있기 때문에 완료하는 데 최소 4일이 걸린다는 것입니다. 따라서 사용자가 파일을 추가/수정하는 경우 스크립트가 완료된 후에도 동일한 변경이 발생합니다. 그래서 여기에 문제가 있습니다.
해결책이 있나요? 아니면 이전에 이 문제를 해결한 적이 있나요?
저는 Linux를 처음 접했고 좋은 아이디어를 주시면 감사하겠습니다.
rsync 명령이 좋다고 생각하시나요? 복사해야 할 파일이 4TB인데 완료하는 데 4~5일이 걸립니다.
감사해요
답변1
이것lsync 데몬rsync를 백엔드로 사용하지만 inotify를 사용하여 변경된 파일/디렉터리만 동기화합니다(초기 전체 패스 이후). 귀하의 크기에 맞게 확장될지는 잘 모르겠지만 문제가 거의 또는 전혀 없이 1-2TB 영역의 구조를 복제하는 데 사용되었습니다.
답변2
lsyncd를 구성하는 데 문제가 있습니다.
실수로 원격 디렉터리에서 파일을 삭제했지만 원본 디렉터리에는 여전히 존재하므로 삭제된 파일을 원격 디렉터리에서 다시 받지 못한다고 가정해 보겠습니다.
이것은 conf 파일의 sync 명령입니다.
rsync = {
binary = "/usr/bin/rsync",
archive = true,
compress = true
}