Follow me on App.net

sábado, febrero 19

Empaquetadores y compresores: diferencias

Los ficheros tar no son ficheros comprimidos,sino empaquetados. Tar es un empaquetador, es decir, es algo parecido a un compresor como arj o zip, pero sin compresión. Se dedica a incluir todos los ficheros juntos en el mismo archivo, preservando las estructuras de directorios y permisos de los mismos. Como veremos, lo podremos comprimir gracias al programa GZip.
Hay 2 operaciones básicas con tar: empaquetado y desempaquetado. Si estamos en un directorio y queremos empaquetar todos los ficheros de este directorio y los que cuelgan de él, basta con ejecutar la orden:
tar -cvf fichero.tar *
  c = compress (más bien, empaquetar)
  v = verbose  (para que nos diga lo que hace)
  f = file     (empaquetar en un fichero)
  *  (empaquetar todos los ficheros, podría haber sido *.doc, etc.)
Si disponemos de un fichero .tar y queremos desempaquetarlo:
tar -xvf fichero.tar
  x = eXtract   (desempaquetar).
También es posible listar los contenidos de un fichero .tar antes de desempaquetarlo, mediante la orden
tar -tvf fichero.tar .Por otra parte, el ficheros con extensión gz son ficheros comprimidos.
A diferencia de arj o zip, el contenido de un fichero GZ es un solo fichero, es decir, cuando comprimimos fichero.txt con este compresor (llamado gzip) obtenemos un fichero.txt.gz de tamaño mucho menor.
Con GZ no es posible empaquetar ficheros, es decir, la compresión se realiza a un sólo fichero.
Para comprimir un fichero con gz, se utiliza el comando:
gzip fichero
Para descomprimirlo:
gunzip fichero.gz
La combinación de tar y gz es lo que permite el tener multiples ficheros comprimidos en un sólo archivo. Es decir, si empaquetamos un directorio con tar y luego comprimimos ese archivo tar con gz, obtenemos un tar.gz comprimido con múltiples ficheros.La compresión y descompresión es posible hacerla en 2 pasos (primero tar y luego usar gz) o bien usar el flag -z de tar para ello:
Compresión:
tar -cvzf fichero.tar.gz *
Descompresion:
tar -xvzf fichero.tar.gz
Otro formato que se ha puesto de moda es bzip2, con el mismo sistema de funcionamiento que Gzip, y cuyos nombres de ejecutable son bzip2 (comprimir) y bunzip2 (descomprimir).
Este compresor obtiene mejor compresión que Gzip y su funcionamiento es igual de sencillo, aunque tarda mas en comprimir y utiliza mas recursos.Estos compresores/descompresores/empaquetadores son una gran y libre alternativa a formatos comerciales como zip, arj y rar, también disponibles para Linux (comandos zip, unzip, rar y unarj).
Para descomprimir ficheros arj mediante unarj, simplemente hace falta ejecutar el comando unarj x fichero.arj. El compresor es shareware y se debe obtener en la Web de sus programadores.
Zip es el programa destinado a hacer Linux capaz de leer y escribir los ficheros en formato .zip (generados por pkzip o winzip): Para ello tenemos los comandos zip e unzip, que nos permitiran comprimir y descomprimir ficheros sueltos, directorios completos, directorios con recursividad, etc:
Para comprimir todos los ficheros de un directorio en un zip:
zip fichero.zip *
Para comprimir este directorio y todos los que cuelguen del mismo:
zip -r fichero.zip *
La descompresión se realiza mediante unzip:
unzip fichero.zip
El programa rar también es un buen compresor que podemos encontrar en diferentes formatos (rpm, deb, tar.gz) en Internet. Su uso es identico a la versión MSDOS:Comprimir:
rar a fichero.rar *
Descomprimir:
rar x fichero
Para más información sobre cualquiera de los des/compresores basta con consultar la página man del mismo, mediante “man comando“.

Mas sobre Tar en Wikipedia

Ir arriba Ir abajo