Selasa, 07 Agustus 2007

Tutorial Compress File di Linux

Bahasa keren dari judul di atas adalah "Using Archives in Linux". Jadi jika Anda ingin menggali lebih jauh tentang tema ini silakan gunakan keyword di atas, namun ingat pasti hasil search berbahasa "linggis" semua :).

Kembali ke topik, pada dasarnya banyak sekali jenis kompresi yang ada di muka bumi ini, dua diantara yang paling terkenal adalah .zip dan .rar. Kenapa yang terkenal hanya dua itu? Karena sebagian besar penduduk di muka bumi ini masih memakai Windows, dan jenis kompresi yang paling sering "dieksploitasi" ya 2 itu. Padahal Windows sendiri sebenarnya juga mengenal jenis kompresi lain, seperti tar, gzip, bzip2 dan lain sebagainya.

Apa manfaat yang akan didapat kalau melakukan kompresi terhadap file/direktori kita? Yang jelas, menurut hemat penulis, file yang terkompress akan: (1) Tidak memakan space di harddisk; (2) Mudah dalam organisir; (3) Kalau sering bekerja dengan mail attachment tentu akan jauh lebih memudahkan daripada harus attach satu persatu.

Untuk tutorial kali ini, tutorial akan "dibatasi" pada perintah command line saja, biar tulisan ini tidak terlalu panjang dan lebar, kasihan yang baca. Untuk tampilan GUI, silakan melakukan searching di Google dengan keyword yang sudah disebutkan di atas. Kenapa "command line"? It's a Linux anyway.. Ya nggak? Justru disini asyiknya Linux, cukup bekerja dari console untuk menyelesaikan pekerjaan sehari-hari kita.
Ringan, Cepat, dan Keren :)

Utility yang akan digunakan kali ini adalah Gzip, Tar, Bzip2, Zip dan Rar.

1. Gzip (GNU Zip)

Gzip hanya dapat digunakan untuk compress satu file saja, tidak untuk compress folder atau direktori. Ekstensi dari Gzip adalah .gz. Semisal Anda ingin compress file yang bernama filename.ext, maka perintahnya adalah sebagai berikut:

gzip filename.ext


Perintah ini akan menciptakan file baru dengan nama filename.gz dan akan mengganti file asli (filename.ext) menjadi filename.ext.gz. Semua atribut dari file tidak akan berubah, sama seperti aslinya. Level kompresi dapat diubah sesuai dengan keinginan kita, antara 1 (proses kompresi cepat tapi perbedaan ukuran tidak terlalu signifikan) sampai 9 (agak lambat namun ukuran bisa ditekan seminimal mungkin).
Secara default Gzip akan melakukan kompresi pada level 6. Perintahnya adalah sebagai berikut:

gzip -1 filename.ext


kompresi level 1

gzip -9 filename.ext


Kompresi level 9

gzip filename.ext


kompresi level 6 (default)

Untuk kinerja, seperti kebanyakan utiliti kompresi lain, Gzip akan bisa bekerja optimal untuk file dengan ekstensi txt, doc, bmp namun kurang bagus untuk kompresi jpg, png, mp3 dimana file-file tersebut memang sudah dalam bentuk kompresi.

Untuk dekompresi, lakukan perintah

gzip -d atau gunzip


Secara default ekstensi memang .gz namun sebenarnya Anda dapat menciptakan ekstensi sendiri, dengan menambahkan opsi -S misalnya:

gzip -S .x filename.ext akan menciptakan archive dengan nama filename.ext.x

2. tar ( Tape archiver )

Tar ini sebenarnya bukan utiliti file compression, namun hanya berfungsi sebagai "combiner" atau penggabung dari beberapa file atau direktori, nantinya bisa dikompress dengan menggunakan utiliti gzip atau bzip2 atau lainnya. Contoh perintahnya adalah:

tar -cvf file.tar file1 file2 file3 file4


Perintah ini akan menggabungkan file1 file2 file3 dan file4 kedalam satu file bernama file.tar, opsi -f berarti opsi pertama digunakan sebagai nama file, opsi -c berarti memberi perintah "tar" untuk membuat archive dan opsi -v berarti memberi perintah "tar" untuk menampilkan proses ke monitor kita.

tar -cvf file.tar file1.tar file/


Perintah ini akan menciptakan archive baru dengan nama file.tar dengan file1.tar dan subdirektori "file/" sebagai isinya.

tar -cvzf file.tar.gz file1 file2 file3 file/


Perintah ini sudah bersifat gabungan antara "joining" file dengan "compressing" file, arti dari perintah di atas adalah gabungkan file1 file2 file3 dan subdirektori file/ menjadi file.tar dan kompress hasil dari proses penggabungan tersebut menjadi file.tar.gz

tar -cvjf file.tar.bz2 file1 file2 file3 file/


Perintah ini sama artinya dengan perintah di atas namun utiliti yang digunakan untuk kompresi adalah bzip2 sehingga nama file file.tar.bz2

tar -xvf file.tar


Kebalikannya, perintah di atas adalah untuk proses ekstraksi dari file yang sudah di kompress, dalam hal ini file.tar.

tar -xvjf file.tar.bz2


Perintah di atas akan meng-ekstrak semua file yang ada didalam file.tar.bz2.

tar -xvzf file.tar.gz


Perintah di atas akan meng-ekstrak semua file yang ada di file.tar.gz

Jika Anda sudah membuat file.tar dan ingin menambahkan file atau folder ke dalamnya, gunakan perintah berikut ini:

tar -rf file.tar file(s)


3. Bzip2

Bzip2 pada dasarnya mirip dengan utiliti gzip namun dalam hal kualitas kompresi lebih unggul. Ekstensi default adalah .bz2, untuk cara penggunaannya sama dengan gzip namun ada beberapa fasilitas tambahan yang tidak akan ditemukan di gzip, diantaranya:

bzip2 -k filename.ext


Perintah ini akan membuat archive filname.txt dan juga membuat copy dari file aslinya, tidak seperti gzip yang me-replace file aslinya. Level kompresi antara 1 sampai 9 (maksimum).

Untuk ekstrak gunakan perintah bzip2 -d atau gunakan utiliti bunzip2.

4. RAR

RAR adalah termasuk jenis kompresi yang sudah banyak dikenal orang saat ini, terutama jika Anda pelanggan rapidshare, hampir semua file ber-ekstensi-kan rar. Utiliti ini tersedia untuk Linux dan Windows dapat di-download dari http://www.rarsoft.com/, salah satu faktor yang membuat terkenal adalah kemampuannya
dalam kompresi cukup tinggi dibanding utiliti lain. Jika ingin menggunakan utiliti ini Anda harus install sendiri karena tidak disertakan secara default di hampir semua distribusi Linux (masalah open source dan lisensi).

Berikut ini contoh-contoh penggunaan utiliti rar:

Untuk ekstrak sebuah file (misal xxx.rar) gunakan perintah berikut

rar e xxx.rar


Jika ingin ekstrak file tertentu saja, ketikkan perintah dibawah ini:

rar e filename.rar file-to-be-extracted


Di mana filename.rar adalah file yang akan di-ekstrak dan file-to-be-extracted adalah file yang ada di dalam filename.rar yang ingin Anda ekstrak.

Untuk kompresi menggunakan utiliti rar, gunakan perintah berikut:

rar a file


dimana file adalah nama archive yang ingin diciptakan.

Jika nama file sudah ada, maka file baru tersebut akan ditambahkan ke dalam archive yang sudah ada dan isi dari archive sebelumnya tidak akan hilang, hanya akan bertambah. Dan jika nama file yang ditambahkan sudah ada (sama) maka file lama yang di archive akan di-replace/over-written.

Untuk kompress file dan direktori tertentu, ketikkan perintah berikut:

rar a file /path-to-directory-you-want-to-archive


Untuk melihat file yang terdapat dalam sebuah archive, ketikkan perintah berikut:

rar l archive.rar or rar v archive.rar


Jika RAR tidak dapat meng-ekstrak sebuah file dengan benar, Anda dapat me-repair file archive dengan perintah berikut:

rar r archive.rar


5. zip

Zip merupakan format kompresi yang paling terkenal, banyak sekali aplikasi/software yang berfungsi untuk handling kompresi jenis ini, mulai dari winzip (untuk windows) sampai Zip zip lainnya.

Untuk melakukan kompresi, ketikkan perintah berikut:

zip a archive file-to-be-archived


Untuk kompres sebuah direktori beserta seluruh isinya, ketikka perintah berikut

zip -R archive


Untuk kompres sebuah direktori beserta subdirektori yang ada didalamnya gunakan perintah berikut:

zip -r archive directory


Untuk melakukan ekstraksi isi "archive", ke lokasi directory-location, gunakan perintah berikut:

unzip archive -d directory-location


Perintah ini digunakan untuk tes integrity dari file zip yang kita punya.

zip -t archive


Anda dapat mengunduh utiliti zip ini dari link berikut ini:
PKZip: http://www.pkzip.org/shareware/pkzip_unix.html

Sumber Tulisan:LinuxOnDesktop

0 komentar:

Search this Site

Google