clobbering없이 'tar'추출하는 방법이 있습니까


12

tar클로버 링없이 추출 할 수 있는 방법이 있습니까?

12.04를 설치하고 10.10에서 데이터를 복원하려고합니다. 내가 유지하고 싶은 12.04 특정 항목, 즉 tar'd 10.10 버전을 추출 하고 싶지 않습니다 . 일반 복원을 수행하면 .bashrc와 같은 파일이 클로버됩니다. 이것을 피할 수있는 방법이 있습니까?

편집 : 부팅 된 12.04 ISO 디스크 이미지는 10.10 (또는 무엇이든)에서 업그레이드 할 수 있으며 오래된 데이터를 유지하도록 제공합니다. 나는 이것을 시도했지만 업그레이드 후에 일부 응용 프로그램이 깨져있을 수 있다고 불평했다. 방금 재부팅하고 새로 설치하기로 결정했습니다.

답변:


14

나는 당신이 원하는 것을 이해하는 데 어려움이 있지만 전체 시스템의 tar 파일을 만들면 tar 파일을 완전히 복원하지 않으면 실제 목적이 아닌 매우 큰 tar 파일을 만들었습니다. 자신의 문서를 저장하려면 해당 문서를 백업해야합니다.

타르에는 몇 가지 멋진 옵션이 있다고 말한 후 ...

--keep-old-files

기존 파일을 덮어 쓰지 않습니다.

--keep-newer-files 

이렇게하면 최신 타임 스탬프가있는 모든 파일이 그대로 유지됩니다.

--no-overwrite-dir

기존 디렉토리의 메타 데이터는 그대로 유지됩니다.

tar 설명서는 여기에서 찾을 수 있습니다 .

그러나 다른 매체에서 tar 파일을 추출하고 해당 파일을 수동으로 복원하는 것이 좋습니다. 가장 안전한 방법입니다.


3
--keep-newer-files 및 --no-overwrite-dir을 사용하더라도 기존의 전체 시스템 백업을 새 시스템으로 추출하면 시스템이 없어야하는 많은 파일이 추출되므로 시스템이 구겨진 상태가됩니다. gui에서 파일 롤러로 아카이브를 열고 홈 디렉토리에 원하는 특정 파일을 추출해야합니다.
psusi

나는 내 대답의 마지막 줄에 동의합니다 :)
Rinzwind

2
@Rinzwind, 당신 말이 맞아요, 내 아카이브에는 잘못된 디자인이 있습니다. 많은 배제와 여전히 배제가 충분하지 않기 때문에 Maverick이 Precise에 덮어 쓰기 때문에 복구가 혼란스럽고 위험합니다. 다음 아카이브는 엄격하게 포함됩니다. 수동 복원에 대한 귀하의 제안은 좋은 것입니다.
H2ONaCl

8

에서 타르 (1) :

 -k, --keep-old-files
       don't replace existing files when extracting

나에게 분명한 것 같습니다. tarball의 파일이 이전 homedir에 상대적으로 저장된 경우 :

tar xvkf backup.tar.gz -C ~

압축하는 동안에도 작동합니다.
nyxee

@nyxee 압축 된 아카이브 (예 :)를 추출 할 때도 작동합니다 tar xvkzf backup.tar.gz -C ~. tar czf foo.tar.gz foo/당신이 그것에 대해 묻는다면 새로운 아치 ( ) 를 만들려고 할 때 그것이 인식되지 않는다고 생각합니다 .
Lekensteyn
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.