tar가 선행 슬래시를 제거하는 것을 방지하는 방법은 무엇입니까? [복사]

tar가 선행 슬래시를 제거하는 것을 방지하는 방법은 무엇입니까? [복사]

명령을 사용할 때

tar -czf /var/backups/completa.tgz -g /var/backups/backup.info /home

...그럼 tar말해봐

tar: Removing leading `/' from member names

tar리드 제거를 방지하는 방법은 무엇입니까 /?

답변1

GNU tar매뉴얼에서:

-P, --absolute-names
아카이브를 생성할 때 파일 이름에서 선행 슬래시를 제거하지 마십시오.

예를 들어 다음과 같이 말할 수 있어야 합니다.

tar -c -Pz -f /var/backups/completa.tgz -g /var/backups/backup.info /home

tar이는 절대 경로 이름을 포함하는 아카이브를 생성하므로 --strip-components별도의 주의 없이(예: GNU 및 해당 옵션 사용) 아카이브 파일을 하위 디렉터리로 추출하는 것은 불가능합니다.

당신이지원, 그렇다면 최선이다아니요사용 -P. 백업에서 파일을 복원하려는 경우 아카이브에서 관련 파일을 하위 디렉터리로 추출한 다음 수동으로 해당 위치로 옮기는 것이 좋습니다. 아카이브에 저장된 절대 위치에 파일을 직접 추출하고 싶지 않을 가능성이 높습니다. 이렇게 하면 복구하고 싶지 않은 파일을 덮어쓸 수 있기 때문입니다.

답변2

아카이브 이름을 도입하는 것은 /위험합니다. 디렉터리 아래에 있고 해당 디렉터리가 삭제되지 않은 경우 실수로 기존 파일을 덮어쓸 가능성이 있기 때문입니다. 따라서 사용자를 보호하기 위해 제거되었습니다. 전체 경로가 정말로 필요하고 수행 중인 작업을 알고 있는 경우 해당 /디렉터리로 변경하고 거기에서 추출을 실행하십시오. 하지만 프로필에서 삭제하지 마세요.

관련 정보