나는 몇 년 동안 rsync를 통해 원격 컴퓨터의 백업을 수행해 왔습니다. 지난 2개월 동안 rsync는 백업 중인 머신에서 새 파일과 디렉터리 검색을 중단했습니다. 스크립트의 출력은 파일과 디렉토리가 원격 시스템의 어떤 버전에도 존재하지 않을 만큼 새롭더라도 최신 상태임을 나타냅니다!
#!/bin/sh
#
# MAKE SURE HAVE CORRECT REMOTE/AT-HOME LOGIN SETUP AND THAT TARGET IS TOTEMDOC and source is Documents
#
rsync -azvv -e "ssh -o CheckHostIP=no -i /home/stefan/.ssh/id_rsa" /home/stefan/Documents remoteUser@MouseHouse:/totembackup/totemdoc
산출:
opening connection using: ssh -o CheckHostIP=no -i /home/stefan/.ssh/id_rsa -l totem MouseHouse rsync --server -vvlogDtprze.iLsfxC . /totembackup/totemdoc (13 args)
sending incremental file list
delta-transmission enabled
그런 다음 각 파일이 최신 상태인 목록과 결론은 다음과 같습니다.
total: matches=0 hash_hits=0 false_alarms=0 data=0
sent 407,686 bytes received 794,633 bytes 801,546.00 bytes/sec
무엇이 잘못되었나요? rsync가 파일이나 새로 생성된 파일의 변경 사항을 감지할 수 없는 이유는 무엇입니까?
답변1
내 스크립트에 관련 없는 어리석은 오류가 있는 것으로 나타났습니다. 파일은 항상 최신 상태였지만 스크립트는 내가 생각한 위치에 파일을 복사하지 않았습니다.
스크립트를 수정하는 동안 어느 시점에서 소스 경로의 후행 슬래시를 실수로 제거한 것 같습니다. 이는 스크립트의 동작이 복사에서 /totembackup/totemdoc
복사로 변경됨을 의미합니다 /totembackup/totemdoc/Documents
. 백업이 제대로 작동하는지 확인하기 위해 Documents
검색하는 동안 이 새 디렉터리를 발견하지 못했습니다./totembackup/totemdoc
소스 경로를 복원하면 /home/stefan/Documents/
(후행 슬래시 참고) 스크립트의 동작이 예상했던 대로 돌아왔습니다.