oleh aerphanas pada Aug 19, 2023
Bagikan ke: Twitter | Facebook | LinkedIn
Emacs, membuka manual gnu tar dan eshell

Daftar isi

Pendahuluan


tape archive (tar) merupakan sebuah software yang digunakan untuk merangkum banyak file menjadi satu file yang biasanya dinamai tarball, tarball seringkali dijumpai ketika kita mendownload sebuah source file atau ingin membuat backup system, kita juga bisa memilih tipe kompresi yang kita bisa pilih, namun kita perlu menginstall kompresi yang kita inginkan, software tar dalam open source setpengetahuan saya hanya dua yaitu bsd tar dan gnu tar.

Membuat tar archive


untuk membuat tar tanpa kompresi kita bisa menggunakan opsi pendek -c atau opsi --create setelah itu menggunakan opsi pendek -f atau --file untuk menamai output file yang akan kita buat, sebagai contoh saya memiliki beberapa file .org ketika saya ingin membuat tar maka saya akan menggunakan perintah

tar -cf backup.tar file1.org file2.org file3.org

terkadang kita ingin mengetahui proses dari tar, maka kita menggunakan opsi pendek -v atau --verbose untuk mengetahui proses apa yang sedang di lakukan program tar

tar -cvf backup.tar file1.org file2.org file3.org

karena program tar menggunakan filosofi UNIX maka untuk menggunakan kompresi di tar kita harus mengggunakan tool lain, tetapi kita bisa langsung mengggunakanya didalam tar

pada gnu tar kita bisa menggunakan kompresi :

  • bzip2
  • xz
  • gzip
  • zstd
  • lzma
  • lzop
  • compress
  • lzip

sedangkan (free)bsd tar kita bisa mengunakan kompresi :

  • bzip2
  • xz
  • gzip
  • zstd
  • lzma
  • lzop
  • compress
  • lrzip
  • lz4

bisa dilihat bsd tar dan gnu tar memiliki support terhadap kompresi yang berbeda.

Menggunakan kompresi

untuk menggunakan kompresi kita memerlukan program yang diperlukan, sebagai contoh saya akan menginstall program di linux distro Arch Linux,

untuk menginstall bzip2, xz, lzip, lzma, lzop, gzip, compress, zstd

sudo pacman -S bzip2 xz lzip lzop gzip ncompress zstd

untuk lzma otomatis dapat digunakan saat menginstall package xz, untuk bsd tar ketika kita menggunakan sistem operasi BSD seperti FreeBSD program untuk kompresi sudah otomatis terinstal

cara membuat kompresi tar mirip dengan membuat tar tanpa compresi namun kita akan menambahkan beberapa opsi

kompresi gnu tar bsd tar output
bzip2 -j, –bzip2 -j, –bzip .tar.bz2
xz -J, –xz -J, –xz .tar.xz
gzip -z, –gzip -z, –gzip .tar.gz
zstd –zstd –zstd .tar.zst
lzma –lzma –lzma .tar.lzma
lzop –lzop –lzop .tar.lzo
compress -Z -Z .tar.Z
lzip –lzip tidak di support .tar.lz
lrzip tidak di support –lrzip .tar.lrz
lz4 tidak di support –lz4 .tar.lz4

diluar dari kompresi yang di dukung kita juga bisa mengggunakan program lain mengunakan opsi -I hanya untuk gnu tar dan --use-compress-program=cmd untuk bsd dan gnu tar.

sebagai contoh saya akan membuat kompresi menggunakan gzip, menggunakan perintah berikut untuk gnu tar

tar -cvzf backup.tar.gz file1.org file2.org file3.org

khusus gnu bsd untuk menggunakan level compression di gnu tar kita menggunakan environment variable.

kompresi environment variable
xz XZ_OPT
gzip GZIP
lzma XZ_OPT
lzop LZOP
zstd ZSTD_CLEVEL

beberapa kompresi tidak mencantumkan environment variale, namun kita bisa tetap menggunakan level kompresi dengan menggunakan opsi --use-compress-program=cmd, contohnya seperti ini

tar --use-compress-program='gzip -9' -cvf backup.tar.gz file1.org file2.org file3.org

untuk menggunakan kompresi kita perlu membuka manual dari program kompresi lalu melihat opsi apa untuk meningkatkan level kompresi, sebagai contoh saya akan menggunakan gzip dengan level kompresi 9

GZIP=-9 tar -cvzf backup.tar.gz file1.org file2.org file3.org

untuk bsd tar memiliki opsi khusus untuk melakukan kompresi dengan level, did bsd tar kita menggunakan opsi options sebagai contoh saya akan menggunakan kompresi gzip dengan kompresi level 9

tar -cvzf --options gzip:compression-level=9 xbackup.tar.gz file1.org file2.org file3.org

Membuka tar archive


untuk membuka atau mengekstrak tarball caranya sangatlah mudah, kita hanya perlu menambahkan opsi -x dan --extract untuk bsd dan gnu tar lalu --get untuk gnu tar, sebagai contoh disini saya akan mengekstrak sebuah tar file yang terkompresi dengan gzip maka saya bisa menggunakan perintah

tar -xvzf backup.tar.gz

terkadang sebelum membuka atau mengekstrak file terkompresi kita ingin mengetahui isi dari tarball, caranya kita perlu menggunakan opsi -t atau --list

tar -tf backup.tar.gz

selain menggunakan opsi -t kita juga bisa menggunakan program lain seperti vim dan less.

Daftar Pustaka