sudo tar mengubah kepemilikan file yang diekstrak ke pengguna yang tidak dikenal

10

Saya menjalankan perintah ini:

$ sudo tar xvzf nexus-latest-bundle.tar.gz

File yang diekstraksi adalah milik pengguna yang tidak dikenal (1001):

drwxr-xr-x 8     1001     1001      4096 Dec 16 18:37 nexus-2.12.0-01
drwxr-xr-x 3     1001     1001      4096 Dec 16 18:47 sonatype-work

Bukankah seharusnya menjadi root pemilik di bawah konfigurasi normal?

Saya sedang mengerjakan instalasi linux yang direplikasi dari AWS AMI.

raspacorp
sumber

Jawaban:

15

Saat mengekstrak file sebagai root, tar akan menggunakan kepemilikan asli. Anda dapat menimpanya menggunakan --no-same-owneropsi (sebagai alternatif, -o).

File tar Anda merujuk ke pengguna / grup yang tidak ada di sistem tempat Anda mengekstraknya.

Jika Anda mengekstrak file sebagai diri Anda sendiri (pengguna yang tidak memiliki hak istimewa), Anda hanya dapat membuat file yang Anda miliki sendiri.

Manual tar GNU mengatakan:

--same-owner
Saat mengekstrak arsip, tar akan berusaha untuk melestarikan pemilik yang ditentukan dalam arsip tar dengan hadiah ini. Ini adalah perilaku default untuk superuser; opsi ini hanya berpengaruh bagi pengguna biasa. Lihat bagian Menangani Atribut File .

Thomas Dickey
sumber
1
Ok jadi ini terjadi hanya ketika menjadi root, karena jika saya menjalankan perintah tanpa sudo: 'tar xzvf nexus-latest-bundle.tar.gz' maka kepemilikan diatur ke pengguna saya saat ini, apakah itu perilaku yang diharapkan?
raspacorp
2
@raspacorp: Sebagai pengguna non-root, Anda tidak memiliki wewenang untuk membuat file dengan kepemilikan apa pun selain milik Anda. Jadi karena kebutuhan, file dibuat dengan Anda sebagai pemiliknya.
Nate Eldredge
1

Orang yang membuat file tar memiliki ID pengguna dan ID grup yang efektif (UID: GID) dari 1001: 1001. Karena tar, secara default, mempertahankan kepemilikan dan izin, saat Anda mengembangkannya, Anda mewarisi nilai-nilai ini. Jika Anda memiliki pengguna dengan UID: GID 1001: 1001 di sistem Anda, file-file ini akan dimiliki oleh pengguna itu.

MelBurslan
sumber