Tarbal anonim


11

Tar mengkodekan nama pengguna saya ke tarball. Bisakah saya memaksanya untuk membuat tarball sepenuhnya anonim?

--owner roothanya menggantikan beberapa contoh nama pengguna saya. Menambahkan USER=root: USER=root tar c --owner root datatidak berpengaruh.

Singkatnya, saya berharap untuk:

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

untuk tidak cocok.

Jawaban:


14

Apa yang saya lewatkan adalah --group=roottambahan --owner=root.

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

(mungkin dengan opsional --numeric-owner) sepenuhnya menganonimkan arsip.


6
ekspansi bash brace {a,b}bisa sangat membingungkan. --{owner,group}=root akan diperluas ke--owner=root --group=root
Sanya_Zol

9

Anda dapat menggunakan --numeric-owner, itu hanya akan menempatkan UID Anda (1000 atau yang serupa pada kebanyakan sistem) dalam file. Dari man tar:

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

Terima kasih. Itu melakukan pekerjaan, meskipun hanya sebagian. Sepertinya cpio (yang sepertinya selalu meng-encode secara numerik) dapat menganonimkan arsipnya sepenuhnya melalui --ownersakelar.
PSkocik

1
IIRC - pemilik hanya bekerja pada ekstraksi / pass-through. Jika saya salah, Anda dapat menggunakan -Hopsi cpio untuk secara langsung menulis file tar.
Anthon

Tampaknya bekerja -ojuga. Saya mencoba membuat arsip sederhana dengan dan tanpa --owner root:rootdan kemudian membedakan hexdump masing-masing. Apa yang berubah adalah dua urutan dua byte yang sedikit-endian-diterjemahkan ke 0 dan $UIDmasing - masing.
PSkocik

1
@PSkocik Itu menarik, saya hanya memeriksa man cpiodan cpio --helpdan mereka berdua mengkonfirmasi apa yang saya komentari sebelumnya. Mungkin sumbernya telah diperbarui, tetapi dokumentasinya tidak (GNU cpio 2.11)
Anthon
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.