tar es una formato de compresión sin perdida, realmente potente, que permite comprimir a ratios superiores a otros compresores como zip, arj, gzip, arc
Voy a utilizar el propio kernel de linux (versión 2.5.3), para comparar el tamaño del mismo según el formato utilizado para comprirlo:
$ l linux-2.5.3.*
carlos users 24161394 10 23:05 linux-2.5.3.tar.bz2
carlos users 29912791 10 23:06 linux-2.5.3.tar.gz
carlos users 35394067 10 23:10 linux-2.5.5.zip
Donde podemos ver que la versión comprimida con el popular pero realmente flojo zip, ocupa 35.4 Megas, el gzip ocupa 29.9 Megas y exactamente todo igual con bzip2, tan solo ocupa 24.1 Megas.
Creo que no tengo que explicar absolutamente nada más sobre este formato y su potencia ;-)
Para descomprimir un archivo con este formato, podemos usar el comando tar o el bunzip2, de la siguiente forma:
tar Ixvf archivo.tar.bz2
tar jxvf archivo.tar.bz2
bunzip2 archivo.tar.bz2; tar xvf archivo.tar
bunzip2 archivo.bz2
Para comprimir usaremos el tar o el bzip2, de forma analoga a la anterior:
tar Icvf archivo.tar.bz2 directorio_o_fichero
tar jcvf archivo.tar.bz2 directorio_o_fichero
bzip2 fichero.tar
Comentar también la existencia de la librería libbzip2, que nos permite incorporar de a nuestros programas este formato de compresión.