디렉토리를 tar-gzip으로 압축하고 결과를 그 자체에 넣으려면 어떻게 해야 합니까?

디렉토리를 tar-gzip으로 압축하고 결과를 그 자체에 넣으려면 어떻게 해야 합니까?

Linux에서 전체 홈 디렉토리를 백업하고 싶습니다. 이 디렉토리가 내가 쓰기 권한을 갖고 있는 유일한 디렉토리라고 가정해 보겠습니다.

이 디렉토리를 tar-gzip으로 압축하고 결과를 자체에 넣으려면 어떻게 해야 합니까?

답변1

tar zcf home-backup.tar.gz --exclude ./home-backup.tar.gz.

답변2

이미 제안됨

tar zcf home-backup.tar.gz --exclude home-backup.tar.gz .

예, 하지만 저는 단 하나의 디렉토리가 아닌 많은 파일을 포함하는 tar를 별로 좋아하지 않습니다. 동일한 작업을 디렉토리로 수행하려면 다음을 수행하십시오.

cd /home
tar -czf yourhome/yourhome.tgz --exclude yourhome.tgz yourhome/

두 경우 모두 다음과 같은 오류 메시지가 표시됩니다.

tar: yourhome: file changed as we read it

스크립트에서 백업하고 종료 코드를 확인하려는 경우 문제가 될 수 있습니다. 어쨌든 이를 무시하면 다른 문제가 숨겨질 수 있습니다. 백업을 시작하기 전에 빈 tgz를 생성하면 이러한 상황을 제거할 수 있습니다.

touch yourhome.tgz

답변3

유효한 최신 tar 구현을 사용하는 경우 기본적으로 원하는 방식으로 작동합니다.

star -cz . > archive.tar.gz

경고가 인쇄됩니다:

star: 'archive.tar.gz' is the archive. Not dumped.

관련 정보