타르 증분 옵션이 새 파일을 추가하지 않습니다


1

증분 백업에서 tar새 파일을 추가 할 수없는 것 같습니다.

$ tar -cvzf test.tar.gz -g test.snar a.txt
a.txt
$ tar -cvzf test2.tar.gz -g test.snar a.txt b.txt

두 번째 명령은 아무것도 반환하지 않으며 아카이브는 비어 있습니다. 그러나 파일 대신 디렉토리를 지정하면 작동합니다. 내가 여기서 잃어버린 것?

답변:


1

스냅 샷 파일 a.txt은 첫 번째 tar 명령에 포함되어 있습니다 . 두 번째 타르에서 스냅 샷은 알 수 없습니다 b.txt. a.txt증분 아카이브가 비어 있도록 변경되지 않았습니다.

증분 아카이브가 디렉토리 레벨에 있으면 b.txt가 디렉토리 계층 내에 존재하기 때문에 변경 (b.txt)을 감지합니다.

스냅 샷 파일이 존재하는 경우, 파일이 수정 결정합니다.

참조 GNU 타르 참조 증분 백업을

'--listed-incremental'옵션은 tar에 스냅 샷 파일이라는 독립형 파일에 저장된 추가 메타 데이터가있는 증분 아카이브에서 작동하도록 지시합니다. 이 파일의 목적은 마지막 백업 이후에 변경, 추가 또는 삭제 된 파일을 판별하여 다음 증분 백업에 수정 된 파일 만 포함되도록하는 것입니다. 스냅 샷 파일의 이름은 옵션에 대한 인수로 제공됩니다.


따라서 tar증분 백업을 위해 디렉토리에서만 잘 작동합니까?
alex_reader

당신이 그것을 사용하는 방식으로-네. 다른 파일을 추가 할 경우 스냅 샷 파일을 제거 할 수도 있습니다.
suspectus

1

tar에 "-listed-incremental"옵션을 사용하는 것을 보셨습니까? 특정 폴더를 점진적으로 추가 할 수 있으며 --list-incremental 옵션을 사용하여 tar에 마지막으로 추가 된 이후 변경된 파일 만 압축 할 수 있습니다.

보다 일반적인 옵션은 -a 또는 append 옵션을 사용하여 새 파일을 추가하는 것입니다.이 옵션은 파일을 아카이브의 끝에 놓습니다.

이것이 백업 상황 인 경우 rsync를 더 많은 기능이 풍부한 옵션으로 생각하지만 백업 절차로 수행하려는 작업에 따라 달라집니다.


내 버전에서는 -g의 동의어입니다 --listed-incremental. 내 질문은 파일 목록이 아닌 디렉토리에서 작동하는 이유에 대한 자세한 내용입니다.
alex_reader
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.