07 Maret 2013

ARCHIVER dan COMPRESSION di UNIX

Untuk create archiver di UNIX menggunakan perintah tar, untuk aplikasi kompresi menggunakan gzip/gunzip.

1. Misalnya kita akan bikin archive file maka:
  $ tar cvf file.tar .
Note: c=[c]reate, v=[v]erbose, f=[f]ile, titik[.] menunjukan current directory atau direktori aktif sekarang. Jadi jika anda pengen bikin archive dng nama direktori "coba", anda bikin dulu direktori "coba" setelah itu anda masukan file2 yg hendak anda archiving ke direktori itu (coba), selanjutnya anda masuk ke direktori "coba" lalu lakukan perintah diatas. karena defaultnya tar ngebackup (melihat) device (tape) /dev/sa0, padahal kita sebenernya ingin bikin archive di darektori aktif sehingga otomatis proses kita akan gagal dengan itu maka kita perlu pake option [f]ile untuk mengarahkan archive kita. output errornya: tar: can't open /dev/sa0 : Device not configured

2. Setelah terbentuk file.tar maka kita lakukan pengecekan:
  $ tar tf file.tar atau $tar tf file.tar | more
Note: Untuk option [f]ile sama halnya dng kejadian diatas, kalo nggak maka akan nampilin error yg sama persis.

3. Nah sekarang archive kita ingin kita kompres sbg contoh:
  $ gzip -c9v file.tar > file.tar.gz
4. Sebetulnya tar juga sudah membawa untuk "filtering" direct ke bentuk file compression cuma untuk customize kompresi tidak selengkap jika kita pisah dng 2 proses (proses tar dan proses gzip). Misalnya untuk proses tar langsung difilter thd kompresi:
  $ tar zcvf foo.tgz * atau
  $ tar zcvf foo.tar.gz *
Secara otomatis foo.tgz dan foo.tar.gz akan terbentuk, jangan lupa untuk mengecheck kalo2 archivenya rusak. dengan cara mirip dengan langkah diatas:
  $ tar ztvf foo.tgz atau
  $ tar ztvf foo.tar.gz
5. Untuk mengecheck apakah proses yg kita lakukan benar, kita check dng cara:
  $ tar tfzv file.tar.gz atau $tar tfzv file.tar.gz | more
Note: Kita lakukan kompresi dng menggunakan gzip/gunzip. untuk options c=[c]reate, 9=kompresi paling baik, v=[v]erbose, z=untuk nampilin kompresi, untuk f sama keterangannya ama yg diatas.

6. Jika anda menggunakan archiver sekaligus kompresi model *.zip, maka di UNIX telah disediakan toolnya yaitu zip dan unzip untuk sebaliknya. Misalnya kita akan create test.zip di direktori /etc maka:
  $ cd /etc
  $ zip -r -v -9 test.zip *
Jika anda ingin menencrypt isi arsip bisa gunakan -e [encrypt]
  $ zip -r -v -e -9 test.zip *
Note: Opsi -r[ecrusive], -v[erbose], -9 [Best Compression], dan untuk Asterik (*) menunjukan "current directory". Untuk membuka anda bisa gunakan "unzip" misalanya:
  $ cd /tmp
  $ unzip test.zip
Jika anda ingin membuat archive "hanya untuk file tertentu", anda bisa gunakan beberapa options, sebagai contoh:
  $ zip -c -v -9 /hasil/file/foo.zip -j /target/config/source.conf
Dengan perintah diatas maka kita akan meletakan foo.zip di dalam direktori /hasil/file/ dengan mengambil source.conf (file yang mau dizip) di direktori /target/config/, dengan option -j maka "full path dari source.conf direktori tidak akan di zip".

7. Menggunakan compresi bzip/bzip2, Anda bisa menggunakan ekstensi *.tar.bz, *.tar.bz2, *.tbz sebagai contoh.
  $ tar -cvf backup.tar *
  $ bzip -cvf backup.tar > backup.tar.bz atau
  $ bzip2 -cvf backup.tar > backup.tar.bz2
Untuk bzip hasil akhir berekstensi *.bz, sedangkan untuk bzip2 hasil akhir berekstensi *.bz2, nah selain itu ada beberapa contoh dengan fasilitas "filtering" via kompresi misalnya:
  $ tar -ycvf backup.tbz * atau
  $ tar -ycvf backup.tar.bz *
Dan untuk bzip2:
  $ tar -ycvf backup.tar.bz2 *
Untuk pengechekan kita bisa gunakan perintah spt:
  $ tar ytvf backup.tbz
  $ tar ytvf backup.tar.bz
  $ tar ytvf backup.tar.bz2
Untuk pengekstrakan *.tbz, *.bz, *.bz2 lakukan spt:
  $ tar yxvf backup.tbz
  $ tar yxvf backup.tar.bz
  $ tar yxvf backup.tar.bz2
PS: Untuk options dan keterangan lebih lanjut anda bisa baca manual gzip/gunzip, bzip/bzip2, zip, unzip dan tar.