나는 주변을 둘러보았지만 원격 파일 시스템 백업에서만 제외할 디렉터리를 지정하는 방법에 대한 명확한 답을 찾지 못했습니다.
데스크톱(서버)과 노트북이라는 두 대의 컴퓨터가 있다고 가정해 보겠습니다. 각각의 홈 디렉터리는 /home/tom
이고 해당 구성 파일은 rsnapshot
바탕 화면( )에 있습니다. 따라서 명령은 다음과 같습니다 localhost
.backup
backup /home/tom/ localhost/
backup tom@laptop:/home/tom/ laptop/
모두 괜찮습니다. 하지만 제가 이미 /home/tom/music
노트북을 사용하고 있다고 가정해 보겠습니다 . 데스크탑에서 복사한 것인데 엄청납니다. 하지만 /home/tom/music/
백업에서 제외 하면 다음과 같습니다 tom@laptop
.
exclude tom@laptop:/home/tom/music/
하지만 배제되기는커녕 music/
헤르페스 발작을 일으켰습니다.
이 방법:
exclude /home/tom/music/
물론 music/
백업에서 제외되고 localhost
내 laptop
PID가 폭발하게 됩니다.
내 현재 솔루션은 rsnapshot
각 호스트에 대해 별도의 구성 파일을 갖고 rsnapshot
각 호스트에 대해 한 번만 수행하는 것입니다. 그러나 이것은 필요하지 않습니다.
그렇다면 원격(노트북) 백업에서만 디렉터리를 제외하려면 어떻게 해야 합니까?
답변1
backup
이 행에는 이러한 유형의 작업에 사용할 수 있는 네 번째 필드도 있습니다 . 따라서 라인은 아래와 같아야 합니다.
backup tom@laptop:/home/tom/ laptop/ exclude=/home/tom/music
backup
쉼표로 구분하여 더 많은 옵션을 추가할 수 있습니다. 자세한 내용은 man
페이지를 참조하세요 rsnapshot
.
답변2
이것이 내 Google 검색의 최고 결과였으므로 다음 내용이 다른 사람들에게도 도움이 될 것이라고 생각했습니다.
토마스의 명령작동하지만 전역적으로 정의된 모든 항목을 제거합니다.들어오지 못하게 하다/etc/rsnapshot.conf의 지시어
~을 위한유지하다기존의들어오지 못하게 하다다음을 사용할 수 있습니다.
backup tom@laptop:/home/tom/ laptop/ +rsync_long_args=--exclude=/home/tom/music
답변3
등호에 주목하세요토마스의 예. 놓치시면 rsnapshot configtest
오류로 실패하니 탭 이용을 추천드려요!
exclude=
또한 다른 Q&A에서 제안하는 것처럼 앞에 더하기 기호를 넣을 필요가 없습니다 . 그렇게 하면 rsnapshot configtest
"연결 또는 문자열의 초기화되지 않은 값"으로 인해 실패하게 됩니다.
다음은 여러 제외가 포함된 예입니다.
[..]
exclude /foo1
exclude /foo2
[..]
backup /from /to exclude=/bar,exclude=/baz
또한 슬래시로 시작하는 항목은 포함되지 않습니다.백업 루트 디렉터리 기준(즉, $snapshot_root/from을 기준으로 함) 서버 루트를 기준으로 하지 않습니다. 이것은 많은 포스터를 놀라게했습니다!