Rsync --exclude-from= Ubuntu 18.04에 대한 쿼리

Rsync --exclude-from= Ubuntu 18.04에 대한 쿼리

다음 명령을 사용하여 홈 폴더를 외부 드라이브에 백업하려고 합니다.

rsync -acu --delete --exclude-from='/home/chh1/rsync_exclude.txt' /home/ /media/chh1/f86f92f7-bcb4-4b8e-8a64-8a210606d422/home_backup/

--exclude-from= 파일

/home/chh1/rsync_exclude.txt

다음 항목이 포함되어 있습니다.

.cache
crewdb.bak.sql

루트 권한이 필요한 파일과 /home/chh1/.cache에 포함된 불필요한 .cache 데이터를 제외하고 싶기 때문에 .cache뿐만 아니라 그 안에 포함된 .dconf도 제외하고 싶습니다.

내가 달릴 때

find ~ -name ".cache"

다음과 같은 결과가 나타납니다.

/home/chh1/snap/pdfmixtool/common/.cache
/home/chh1/snap/gnome-system-monitor/common/.cache
/home/chh1/snap/okular/63/.cache
/home/chh1/snap/freemind/common/.cache
/home/chh1/.cache
find: ‘/home/chh1/.cache/dconf’: Permission denied

정말 제외하고 싶어요

/home/chh1/.cache

dconf 및 일반 .cache 정크도 처리합니다. 그러나 find 명령을 실행할 때 발견된 다른 .cache 디렉토리를 제외하고 싶지 않습니다.

--exclude-from=은 제외 파일에 있는 것과만 패턴을 일치시키므로, 패턴이 아닌 경로를 지정하고 제외 파일 내에서 어떻게 경로를 지정할 수 있습니까? 방법이 있나요?

도와주셔서 정말 감사드립니다!

답변1

/home/귀하의 경우 제외 목록에는 시작 디렉터리 아래에 일치하는 절대 이름도 있을 수 있습니다 . 라인을 이용하세요

/chh1/.cache

.cache단지 제외하는 대신 /home/ /chh1/.cache, 즉/home/chh1/.cache

관련 정보