Cómo hacer copias de seguridad o clonar particiones de Linux usando el comando 'cat'


Una utilización aproximada del comando cat de Linux sería realizar una copia de seguridad completa del disco o una copia de seguridad de la partición del disco o la clonación de una partición del disco redirigiendo la salida del comando contra la partición de un disco duro, una memoria USB o un archivo de imagen local Salida a un socket de red.

Es absolutamente normal que piense por qué deberíamos usar cat sobre dd cuando este último hace el mismo trabajo fácilmente, lo cual es bastante correcto, sin embargo, recientemente me di cuenta de que cat es mucho más rápido que dd cuando se trata de velocidad y rendimiento.

Estoy de acuerdo en que dd proporciona, incluso más, opciones y también es muy útil para tratar copias de seguridad de gran tamaño, como unidades de cinta (Cómo clonar particiones de Linux mediante el comando 'dd'), mientras que cat incluye opciones menos no es necesariamente un digno reemplazo de dd pero aún así, sigue siendo una opción donde sea aplicable.

Confíe en mí, realiza el trabajo con bastante éxito al copiar el contenido de una partición en una nueva partición sin formato. Los únicos requisitos serían proporcionar una partición de disco duro válida con el tamaño mínimo de los datos existentes y sin ningún sistema de archivos.

En el siguiente ejemplo, la primera partición en el primer disco duro, que corresponde a la partición /boot , es decir, /dev/sda1 , se clona en la primera partición del segundo disco (es decir, /dev/sdb1 ) utilizando el operador de redirección de Linux.

# cat /dev/sda1 > /dev/sdb1

Una vez que finaliza el comando, la partición clonada se monta en /mnt y ambos directorios de puntos de montaje se enumeran para verificar si falta algún archivo.

# mount /dev/sdb1 /mnt
# ls /mnt
# ls /boot

Para extender el sistema de archivos de partición al tamaño máximo, ejecute el siguiente comando con privilegios de root.

$ sudo resize2fs /dev/sdb1

El comando cat es una excelente herramienta para manipular archivos de texto en Linux y algunos archivos multimedia especiales, pero se debe evitar para archivos de datos binarios o para concatenar archivos de shebang. Para todas las demás opciones, no dude en ejecutar man cat desde la consola.

$ man cat

Sorprendentemente, hay otro comando llamado tac, sí, estoy hablando de tac , que es una versión inversa del comando cat (también deletreado al revés ) que muestra cada línea de un archivo en orden inverso, desea saber más sobre tac , lea Cómo usar el comando Tac en Linux.