익명의 타르볼


11

Tar은 내 사용자 이름을 tarball로 인코딩합니다. 완전히 익명의 타르볼을 만들 수 있습니까?

--owner root내 사용자 이름의 일부만 대체합니다. 추가 USER=root: USER=root tar c --owner root data효과가 없습니다.

요컨대, 나는 다음을 원한다.

echo hello world > data; tar c --owner root data | grep "$USER"

에를 하지 일치합니다.

답변:


14

내가 빠진 것은 --group=root에 추가되었습니다 --owner=root.

tar -c --{owner,group}=root

(선택 사항 가능 --numeric-owner)은 아카이브를 완전히 익명화합니다.


6
bash 괄호 확장 {a,b}은 상당히 혼란 스러울 수 있습니다. --{owner,group}=root --owner=root --group=root
Sanya_Zol

9

를 사용 --numeric-owner하면 UID (대부분의 시스템에서 1000 또는 유사한 것)를 파일에 넣을 수 있습니다. 보낸 사람 man tar:

 --numeric-owner
       always use numbers for user/group names

감사. 부분적으로 만 작동합니다. cpio (항상 숫자로 uid를 숫자로 인코딩하는 것처럼 보이는)는 --owner스위치 를 통해 아카이브를 완전히 익명화 할 수있는 것처럼 보입니다 .
PSkocik

1
IIRC-소유자는 추출 / 통과에서만 작동합니다. 내가 틀렸다면 cpio의 -H옵션을 사용 하여 tar 파일을 직접 쓸 수 있습니다.
Anthon

그것은 또한 작동하는 것처럼 보입니다 -o. 나는 간단한 아카이브를 만들거나 쓰지 않고 --owner root:root각각의 16 진수 덤프를 파헤 쳤다. 변경된 것은 2 엔 바이트 시퀀스로 리틀 엔디안은 $UID각각 0과 my로 디코딩되었습니다 .
PSkocik

1
재미 @PSkocik, 방금 확인 man cpio하고 cpio --help그들은 모두 확인은 내가 전에 주석 무엇. 아마도 소스가 업데이트되었지만 문서는 업데이트되지 않았습니다 (GNU cpio 2.11)
Anthon
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.