Explicación del comando tar de Linux
El linux el comando Tar es la navaja suiza del administrador de Linux cuando se trata de archivar o distribuir archivos. Los archivos de Gnu Tar pueden contener múltiples archivos y directorios, los permisos de los archivos se pueden conservar y admiten múltiples formatos de compresión. El nombre tar significa «Tmono Arkansaschiver», el formato es un estándar POSIX oficial.
formatos de archivo tar
Una breve introducción a los niveles de compresión de alquitrán.
- Sin compresión Los archivos sin comprimir tienen la terminación de archivo .tar.
- Compresión Gzip El formato Gzip es el formato de compresión más utilizado para tar, es rápido para crear y extraer archivos. Los archivos con compresión gz normalmente tienen la terminación de archivo .tar.gz o .tgz. A continuación encontrará algunos ejemplos sobre cómo crear y extraer un archivo tar.gz.
- Compresión Bzip2 El formato Bzip2 ofrece una mejor compresión que el formato Gzip. La creación de archivos es más lenta, la terminación del archivo suele ser .tar.bz2.
- Compresión Lzip (LZMA) La compresión Lzip combina la velocidad de Gzip con un nivel de compresión similar a Bzip2 (o incluso mejor). Independientemente de estos buenos atributos, este formato no es muy utilizado.
- Compresión Lzop Esta opción de compresión es probablemente el formato de compresión más rápido para tar, tiene un nivel de compresión similar a gzip y no se usa mucho.
Los formatos comunes son tar.gz y tar.bz2. Si su objetivo es una compresión rápida, utilice gzip. Cuando el tamaño del archivo comprimido sea crítico, utilice tar.bz2.
¿Para qué se usa el comando tar?
Aquí algunos casos de uso comunes del comando tar.
- Backup de Servidores y Escritorios.
- Archivo de documentos.
- Distribución de software.
Instalación de alquitrán
El comando está instalado en la mayoría de los sistemas Linux de forma predeterminada. Aquí están las instrucciones para instalar tar en caso de que falte el comando.
CentOS
Ejecute el siguiente comando como usuario root en el shell para instalar tar en CentOS.
yum install tar
ubuntu
Este comando instalará tar en Ubuntu. El comando «sudo» asegura que el comando apt se ejecute con privilegios de root.
sudo apt-get install tar
Debian
El siguiente comando apt instala tar en Debian.
apt-get install tar
ventanas
El comando tar también está disponible para Windows, puede descargarlo desde el proyecto Gunwin. http://gnuwin32.sourceforge.net/packages/gtar.htm
Crear archivos tar.gz
Aquí está el comando tar que debe ejecutarse en el shell. Explicaré las opciones de la línea de comandos a continuación.
tar pczf myarchive.tar.gz /home/till/mydocuments
Este comando crea el archivo myarchive.tar.gz que contiene los archivos y carpetas de la ruta /home/till/mydocuments. Las opciones de la línea de comandos explicadas:
- [p] Esta opción significa «preservar», le indica a tar que almacene detalles sobre el propietario del archivo y los permisos del archivo en el archivo.
- [c] Soportes para crear. Esta opción es obligatoria cuando se crea un archivo.
- [z] La opción z habilita la compresión gzip.
- [f] La opción de archivo le dice a tar que cree un archivo de almacenamiento. Tar enviará la salida a stdout si se omite esta opción.
Ejemplos de comandos tar
Ejemplo 1: copia de seguridad del directorio /etc Cree una copia de seguridad del directorio de configuración /etc. La copia de seguridad se almacena en la carpeta raíz.
tar pczvf /root/etc.tar.gz /etc
El comando debe ejecutarse como root para asegurarse de que todos los archivos en /etc estén incluidos en la copia de seguridad. Esta vez, he añadido el [v] opción en el comando. Esta opción significa detallado, le dice a tar que muestre todos los nombres de archivo que se agregan al archivo. Ejemplo 2: copia de seguridad de su directorio /home Cree una copia de seguridad de su directorio de inicio. La copia de seguridad se almacenará en un directorio /backup.
tar czf /backup/myuser.tar.gz /home/myuser
Reemplace myuser con su nombre de usuario. En este comando, he omitido el [p] switch, por lo que los permisos no se conservan. Ejemplo 3: una copia de seguridad basada en archivos de bases de datos MySQL Las bases de datos MySQL se almacenan en /var/lib/mysql en la mayoría de las distribuciones de Linux. Puedes verificar eso con el comando:
ls /var/lib/mysql
Detenga el servidor de la base de datos para obtener una copia de seguridad de archivos MySQL coherente con tar. La copia de seguridad se escribirá en la carpeta /backup. 1) Crear la carpeta de respaldo
mkdir /backup chmod 600 /backup
2) Detenga MySQL, ejecute la copia de seguridad con tar y vuelva a iniciar el servidor de la base de datos.
service mysql stop tar pczf /backup/mysql.tar.gz /var/lib/mysql service mysql start ls -lah /backup
Extraer archivos tar.gz
El comando para extraer archivos tar.gz es:
tar xzf myarchive.tar.gz
Explicación de las opciones del comando tar
- [x] La x significa extracto, es obligatorio cuando se extrae un archivo tar.
- [z] La opción z le dice a tar que el archivo que se desempaquetará está en formato gzip.
- [f] Esta opción le indica a tar que lea el contenido del archivo desde un archivo, en este caso el archivo myarchive.tar.gz.
El comando tar anterior extraerá silenciosamente ese archivo tar.gz, solo mostrará mensajes de error. Si desea ver qué archivos se extraen, agregue la opción «v».
tar xzvf myarchive.tar.gz
los [v] La opción significa detallado, mostrará los nombres de los archivos mientras se desempaquetan.