루트에서 Rsync 제외

루트에서 Rsync 제외

rsync의 제외와 혼동됩니다.

/로 시작하는 모든 항목을 백업하려고 하지만 /media/ /mnt/ /home/files/ 및 /home/backup은 제외합니다.

sudo rsync -a \
       --progress \
       --stats \
       --exclude-from=/home/files/ \
       --exclude-from=/media/ \
       --exclude-from=/mnt/ \
       --exclude-from=/home/backup/ \
   / /home/backup

작동하지 않습니다.

결국 /home/backup/home/backup/에 파일을 복사하게 됩니다... 내 전송 루트를 기준으로 제외 항목을 작성해야 한다는 내용을 읽었지만 /가 내 전송 루트라면 /media/는 다음을 기준으로 해야 합니다. 그렇지?

답변1

man rsync

--exclude=PATTERN       exclude files matching PATTERN
--exclude-from=FILE     read exclude patterns from FILE

제외 대상은 원하지 않는 폴더를 나열하는 파일을 가리키는 데 사용됩니다. --exclude 옵션을 사용해 보세요

답변2

구문이 올바르지 않습니다. 그것이 작동하지 않는 이유입니다.

당신은 말한다:

--exclude-from=/home/backup/

간단히 말해야 할 때

--exclude="/home/backup/*"

또한, 귀하는

--delete-excluded 

디렉터리를 동기화할 수 있는 스위치입니다.

마지막 질문에 관해서 : 예, 귀하의 경우 /rsync의 시작으로 지정하고 있습니다. 따라서 제외하면 "tmp/*"실제로는 상대적이므로 /지정하는 것과 같습니다."/tmp/*"

관련 정보