tar
menyimpan jalur relatif secara default . GNU tar bahkan mengatakan demikian jika Anda mencoba untuk menyimpan jalur absolut:
tar -cf foo.tar /home/foo
tar: Removing leading `/' from member names
Jika Anda perlu mengekstrak folder tertentu, lihat apa yang ada di file tar:
tar -tvf foo.tar
Dan perhatikan nama file yang tepat. Dalam hal foo.tar
file saya , saya dapat mengekstraksi /home/foo/bar
dengan mengatakan:
tar -xvf foo.tar home/foo/bar # Note: no leading slash
Jadi tidak, cara Anda memposting bukanlah (harus) cara yang benar untuk melakukannya. Anda harus meninggalkan garis miring utama. Jika Anda ingin mensimulasikan jalur absolut, lakukan cd /
terlebih dahulu dan pastikan Anda superuser. Juga, ini melakukan hal yang sama:
tar -C / -xvf foo.tar home/foo/bar # -C is the ‘change directory’ option
Ada alasan yang sangat jelas dan bagus mengapa tar
mengubah jalur ke jalur relatif. Salah satunya adalah kemampuan untuk mengembalikan arsip di tempat selain sumber aslinya. Yang lainnya adalah keamanan. Anda dapat mengekstrak arsip, mengharapkan file-nya muncul di direktori kerja Anda saat ini, dan alih-alih menimpa file sistem (atau pekerjaan Anda sendiri) di tempat lain karena kesalahan.
Catatan: jika Anda menggunakan -P
opsi, tar
akan mengarsipkan jalur absolut. Jadi selalu membayar untuk memeriksa isi arsip besar sebelum diekstraksi.