tar & Archive Compression — Terminal

tar (tape archive) menggabungkan banyak file ke satu arsip. Biasa dikombinasi dengan kompresi gzip/bzip2/xz. Perintah paling umum (wajib hafal): # CREATE —…

tar membungkus satu folder (atau banyak file) jadi satu file arsip, dan bisa sekalian memadatkannya supaya kecil. Mirip pindahan kos: semua barang dimasukkan ke satu kardus (itu kerja tar), lalu kardusnya di-vacuum biar ringkas (itu kerja gzip, bzip2, atau xz). File backup.tar.gz artinya kardus .tar yang sudah dipadatkan dengan gzip (.gz).

🧪 Tebakan cepat: kamu menjalankan tar -czf backup.tar.gz proyek/, lalu terminal langsung kembali ke prompt tanpa menulis apa pun. Berhasil atau gagal? Tebak dulu, jawabannya ada di bagian "Bikin arsip: -c".

Satu perintah, huruf-huruf yang disusun

Semua kerja tar lewat satu perintah. Yang membedakan adalah huruf flag di belakang tanda minus. Huruf-huruf itu boleh digabung: -czf sama dengan -c -z -f.

Huruf Artinya Kelompok
c create, bikin arsip baru pilih satu operasi
t list, tampilkan isi arsip pilih satu operasi
x extract, bongkar arsip pilih satu operasi
z gzip kompresi, opsional
j bzip2 (huruf j kecil) kompresi, opsional
J xz (huruf J besar) kompresi, opsional
v verbose, tulis tiap nama file yang diproses opsional
f file, nama arsipnya ditulis tepat sesudahnya hampir selalu dipakai

Huruf besar-kecil itu beda: j kecil itu bzip2, J besar itu xz. Cara gampang mengingat -czf: create, gzip, file. Dan -xzf: extract, gzip, file.

Bikin arsip: -c

Contohnya folder proyek/ berisi empat file, total 480 KB:

$ ls proyek/
app.js  gambar  index.html  style.css
$ tar -czf backup.tar.gz proyek/
$ ls
backup.tar.gz  proyek

Terminal gak menulis apa pun, dan itu artinya berhasil. tar diam kalau semuanya lancar, dan pasti menulis pesan berawalan tar: kalau ada yang gagal. Itu jawaban tebakannya. Mau lihat apa saja yang masuk? Tambahkan v:

$ tar -czvf backup.tar.gz proyek/
proyek/
proyek/app.js
proyek/gambar/
proyek/gambar/logo.png
proyek/index.html
proyek/style.css

Folder 480 KB tadi jadi backup.tar.gz sekitar 126 KB. Kode teksnya mengecil banyak, gambar PNG hampir gak berubah karena sudah terkompresi dari sananya.

Lihat isi dan bongkar: -t, -x, -C

$ tar -tzf backup.tar.gz
proyek/
proyek/app.js
proyek/gambar/
proyek/gambar/logo.png
proyek/index.html
proyek/style.css
$ mkdir -p restore
$ tar -xzf backup.tar.gz -C restore/
$ ls restore/
proyek

Pilih kompresinya: gzip, bzip2, xz

Ukuran di bawah adalah perkiraan untuk folder proyek/ tadi. Angka pastinya tergantung isi file.

Huruf Kompresi Ekstensi Hasil dari 480 KB Kecepatan
(tanpa) gak dipadatkan .tar 490 KB paling cepat
z gzip .tar.gz (atau .tgz) 126 KB cepat
j bzip2 .tar.bz2 108 KB sedang
J xz .tar.xz 96 KB paling lambat

.tar tanpa kompresi malah sedikit lebih besar dari aslinya, karena tiap file dapat catatan nama, ukuran, dan izinnya. Aturan praktisnya: gzip untuk backup harian (cepat, dan semua orang bisa membukanya). xz kalau ukuran lebih penting dari kecepatan, misalnya file rilis yang dibuat sekali tapi diunduh ribuan kali, atau arsip yang disimpan lama. Untuk dikirim ke teman yang pakai Windows tanpa aplikasi tambahan, zip -r proyek.zip proyek/ lebih aman.

Nama ekstensinya bukan hiasan: dari situ orang (dan kamu nanti) tahu cara membukanya. Jadi pasangkan dengan benar: gzip jadi tar.gz, bzip2 jadi tar.bz2, xz jadi tar.xz, tanpa kompresi cukup tar.

⚠️ Jebakan yang sering ketemu

TL;DR: tar membungkus banyak file jadi satu arsip. Pilih satu operasi: c bikin, t lihat isi, x bongkar. Tambah kompresi kalau mau: z gzip (.tar.gz), j bzip2 (.tar.bz2), J xz (.tar.xz), tanpa huruf kompresi hasilnya .tar. v menulis tiap nama file, f diikuti nama arsip dan ditaruh paling akhir. Bikin: tar -czf backup.tar.gz proyek/. Lihat isi: tar -tzf backup.tar.gz. Bongkar ke folder lain: mkdir -p restore lalu tar -xzf backup.tar.gz -C restore/. Diam berarti berhasil. gzip untuk harian, xz kalau ukuran paling penting.

Yang akan kamu pelajari