Cómo hacer una copia de seguridad de su sistema Linux

No se arriesgue a perder datos. Haga una copia de seguridad de sus valiosos datos desde la línea de comandos de Linux. Usaremos el comando rsync para esto, e incluso hemos encontrado algunas interfaces gráficas opcionales agradables para ello.

Hay muchas formas de realizar una copia de seguridad de sus archivos. Queríamos mostrarle una forma sólida, flexible y confiable de proteger sus datos. Elegimos rsync por su algoritmos muy respetados que calculan las diferencias entre los archivos en el directorio de origen y el directorio de destino. Solo se transfieren las diferencias entre dos versiones de un archivo, no todo el archivo si se puede evitar.

Cuando esta eficiencia se combina con su sólida trayectoria en la realización de copias de archivos y sincronizaciones de directorios desde mediados de la década de 1990, rsync es un candidato perfecto para crear copias de seguridad desde la línea de comandos de Linux.

Además, existen programas de software independientes que actúan como una interfaz para rsync. Proporcionan interfaces gráficas de usuario (GUI) para rsync que algunas personas pueden encontrar más fáciles de usar.

Cuanto más simple y rápido sea hacer una copia de seguridad, más probabilidades hay de que lo haga.

Usar rsync con un disco duro externo

Para hacer una copia de seguridad de sus datos en un disco duro externo, el disco duro debe estar montado y ser accesible para usted. Si puede escribir en él, rsync también puede hacerlo. En este ejemplo, un disco duro USB externo llamado SILVERXHD (para “Silver eXternal Hard Drive”) está conectado a la computadora Linux. Ha sido montado automáticamente por el sistema operativo.

Necesitará conocer la ruta a la unidad. En GNOME, abra el explorador de archivos Nautilus y busque el nombre de la unidad en la barra lateral.

Pase el puntero del mouse sobre el nombre de la unidad externa y una información sobre herramientas le mostrará la ruta a la unidad.

información sobre herramientas para una unidad externa

En este ejemplo, la información sobre herramientas nos informa que el punto de montaje para el sistema de archivos en la unidad externa es «/ media / dave / SILVERXHD».

Si su explorador de archivos no hace esto, busque la unidad externa y abra una ventana de terminal en esa ubicación. Utilice el comando pwd para imprimir la ruta a la ventana del terminal.

Copiar el contenido del directorio de origen

Para usar rsync para copiar el contenido de un directorio a su destino de respaldo, use el siguiente comando.

  Cómo instalar y configurar Plex Media Server en Linux

La opción -r (recursiva) hace que rsync copie todos los subdirectorios anidados y su contenido. Tenga en cuenta que hay una barra inclinada «/» al final de la palabra «SILVERXHD», pero ha pasado a la siguiente línea en la captura de pantalla.

rsync -r /home/dave/Documents/ /media/dave/SILVERXHD/

rsync -r / home / dave / Documents / / media / dave / SILVERXHD / en una ventana de terminal

Se realiza la copia del archivo y vuelve a la línea de comandos.

Si miramos la unidad USB externa, vemos que los directorios que están en el directorio de Documentos se han copiado a la raíz de la unidad externa.

ls

está en una ventana de terminal

Copia del directorio de origen y su contenido

Si deseaba copiar el directorio de Documentos y su contenido en la unidad externa, elimine la “/” del final de “/ home / dave / Documents” en la línea de comando, así:

rsync -r /home/dave/Documents /media/dave/SILVERXHD/

rsync -r / home / dave / Documents / media / dave / SILVERXHD / en una ventana de terminal

Para evitar confusiones, eliminé los dos directorios copiados previamente de la unidad externa antes de que se ejecutara este segundo comando.

Si dejamos que se complete la segunda copia y echamos otro vistazo a la unidad externa, vemos que se ha copiado el directorio de documentos. Su contenido está dentro de ese directorio. No están en la raíz del disco externo.

está en una ventana de terminal

Copiar a un directorio de destino específico

Para copiar a un directorio específico en el disco duro de destino, agregue el nombre del directorio a la ruta de destino. Supongamos que queremos copiar el contenido del directorio “/ home / dave / Documents” a un directorio llamado “backups” en la unidad externa.

Haríamos esto con el siguiente comando.

rsync -r /home/dave/Documents/ /media/dave/SILVERXHD/backups/

rsync -r / home / dave / Documents / / media / dave / SILVERXHD / backups / na ventana de terminal

Verificando en la unidad externa podemos ver que se ha creado el directorio de copias de seguridad, y dentro de ese directorio están los contenidos del directorio “/ home / dave / Documents”.

ls
ls backups

Salida de ls en una ventana de terminal

Conservación de la propiedad y los permisos de los archivos

Utilice la opción -a (archivo) para conservar los atributos del archivo, como fechas de modificación, propiedad del archivo, permisos de acceso y más, para archivos copiados, enlaces simbólicos y archivos de bloques especiales.

rsync -ra /home/dave/Documents/ /media/dave/SILVERXHD/backups/

rsync -ra / home / dave / Documents / / media / dave / SILVERXHD / backups / en una ventana de terminal

Uso del modo detallado

La opción -v (detallado) obliga a rsync a listar los archivos a medida que se copian.

rsync -rav /home/dave/Documents/ /media/dave/SILVERXHD/backups/

rsync -rav / home / dave / Documents / / media / dave / SILVERXHD / backups / en una ventana de terminal

Se presenta un resumen de la copia de seguridad cuando se completa la copia.

salida detallada de rsync en una ventana de terminal

Enviado: los bytes transferidos al destino.
Recibidos: los bytes recibidos en el host.
Bytes / seg: es la tasa de transferencia efectiva.
Tamaño total: representa el tamaño de los datos que se habrían enviado si no estuviera usando rsync. En ejecuciones posteriores de rsync, solo transferirá las diferencias de archivo. Esta cifra representará los datos que no tuvieron que ser transferidos.
Aceleración: es la relación entre la cantidad de datos que se tuvieron que enviar y la cantidad total de datos que hay. Si rsync necesita copiar todos los archivos en su totalidad (la primera vez que se ejecuta, por ejemplo), la aceleración será 1.0. La próxima vez que se utilice rsync, optimizará las transferencias. Solo enviará las diferencias entre los archivos, no los archivos completos. Se ignorarán los archivos sin cambios. La cifra de aceleración representará la relación entre la pequeña cantidad de datos que se requirió transferir frente al tamaño total de los archivos.

  Cómo instalar Plex Media Player en Linux

Usar la opción de progreso

La opción -P (progreso) hace que rsync genere un pequeño informe de progreso después de copiar cada archivo.

rsync -raP /home/dave/Documents/ /media/dave/SILVERXHD/backups/

rsync -raP / home / dave / Documents / / media / dave / SILVERXHD / backups / en una ventana de terminal

La información proporcionada se puede ver entre cada archivo copiado.

salida rsync con progreso en una ventana de terminal

La información proporcionada es:

Tamaño de byte: datos transferidos para este archivo.
Porcentaje: porcentaje del archivo transferido.
B / s: Tasa de transferencia de datos.
Tiempo restante: tiempo restante estimado para transferir este archivo.
xfr #: el número de archivos transferidos hasta el momento.
to-chk: el número de archivos que quedan por comprobar y verificar mediante los algoritmos de optimización.

Añadiendo más velocidad

Para acelerar las transferencias, use la opción -z (compresión). Esto comprime el archivo en transferencia, pero el archivo se almacena sin comprimir en el directorio de destino.

La opción de compresión no producirá beneficios significativos para transferencias que involucren muchos archivos pequeños. Para colecciones de archivos más grandes, puede reducir el tiempo de transferencia de manera significativa.

También usamos la opción –partial aquí. rsync eliminará los archivos transferidos parcialmente causados ​​por fallas en la red u otras interrupciones. La opción –partial obliga a rsync a dejar los archivos transferidos parcialmente en el destino. El tiempo neto de ejecución de rsync no tendrá que volver a transferir las partes de los archivos transferidos parcialmente.

Tenga en cuenta que es posible que no desee utilizar esta opción si existe el riesgo de que alguien confunda los archivos transferidos parcialmente con archivos transferidos por completo.

rsync -ravz  --partial /home/dave/Documents/ /media/dave/SILVERXHD/backups/

rsync -ravz --partial / home / dave / Documents / / media / dave / SILVERXHD / backups / en una ventana de terminal

En nuestro ejemplo, los beneficios son marginales.

Salida rsync en una ventana de terminal

La relación de aceleración ha mejorado, ¡pero en dos centésimas de porcentaje! En un escenario del mundo real, sus mejoras de velocidad serán más impresionantes.

Usar rsync en una red

Hasta ahora hemos estado apuntando a una unidad USB externa. Para usar una ubicación de red como destino para la copia de seguridad, use la ruta a esa ubicación en la línea de comando. Hay un dispositivo de almacenamiento conectado a la red (NAS) en la red en la que se investigó este artículo.

Podemos usar el mismo truco que usamos anteriormente para identificar la ruta al NAS, pasando el mouse sobre la conexión a ese dispositivo en Nautilus.

No hay opciones especiales para realizar copias de seguridad en una red; estas son todas las opciones que ya hemos utilizado.

rsync -ravz  --partial /home/dave/Documents/ /media/dave/NAS/dave/backups/

rsync -ravz --partial / home / dave / Documents / / media / dave / NAS / dave / Backups / en una ventana de terminal

No hay diferencia en el formato de salida.

Salida rsync en una ventana de terminal

No es sorprendente que haya una mejora significativa en la cifra de Bytes / seg.

Si ejecutamos rsync una vez más, podemos ver que no hay archivos para transferir porque no ha habido cambios, pero todavía hay algunos bytes transferidos de un lado a otro. Esta es la cantidad de datos que deben transferirse para comparar la lista de archivos en el destino con la lista de archivos en el origen.

  4 mejores SSD externos para que los usuarios de Linux elijan en 2021

salida fromrsync sin archivos para transferir en una ventana de terminal

La relación de aceleración es un orden de magnitud mejor en este caso. En la práctica, sus índices de rendimiento estarán en algún lugar entre nuestras dos lecturas pseudo-artificiales.

Usando rsync sobre SSH

rsync admite la realización de copias de seguridad a través de una conexión SSH. Necesitamos proporcionar el nombre de la cuenta de usuario y la ubicación SSH en la línea de comando. Estamos usando un nombre de red aquí, pero también puede usar una dirección IP.

Tenga en cuenta el «:» entre los detalles de la conexión SSH y el inicio de la ruta de red en el destino remoto.

rsync -ravz  --partial /home/dave/Documents/ [email protected]:/home/dave/Backups/

rsync -ravz --partial / home / dave / Documents / dave@sulaco.local: / home / dave / Backups / en una ventana de terminal

Se le pedirá la contraseña de la cuenta de usuario en la máquina remota. Esta no es su contraseña en la máquina de origen.

rsync a través de una conexión ssh en una ventana de terminal

La copia de seguridad se completará como de costumbre. El rendimiento no es tan rápido como una conexión de red normal, debido al cifrado y descifrado que tiene lugar en la conexión de shell segura.

Automatizar sus copias de seguridad

Podemos crear fácilmente copias de seguridad automatizadas agregando entradas a su archivo crontab.

crontab -e

crontab -e en una ventana de terminal

Configuraremos una copia de seguridad automática para que se ejecute todos los días a las 04:30 (si la computadora está encendida a esa hora, por supuesto). La sintaxis del comando rsync no cambia en absoluto.

crontab abierto en nano en una ventana de terminal

Ctrl + O escribirá sus cambios en el archivo y Ctrl + X cerrará el editor nano.

Poner una cara amistosa en Rsync

Las personas que se sienten menos cómodas con la línea de comandos pueden utilizar uno de los programas que ponen una interfaz gráfica de usuario (GUI) en rsync. Dos buenos ejemplos son suerte y Grsync. Ambos programas permiten seleccionar muchas de las opciones de rsync a través de la interfaz de usuario.

El programa Grsync se concentra en ser un contenedor visual para rync. Proporciona un fácil acceso a las opciones de rsync y agrega solo un conjunto limitado de nuevas funciones.

Uno de los cuadros de diálogo de configuración de Grsync,Uno de los cuadros de diálogo de configuración de Grsync,

El programa luckyBackup es mucho más que un simple contenedor para rsync. Es un programa de respaldo que usa rsync entre bastidores. Por ejemplo, luckyBackup puede realizar varias «instantáneas» de su copia de seguridad. A continuación, puede «retroceder» a las versiones de los archivos en cualquiera de las instantáneas.

Uno de los cuadros de diálogo de configuración de LuckyBackupUno de los cuadros de diálogo de configuración de LuckyBackup.

Para instalar Grsync

Para instalar Grsync en Ubuntu, use este comando:

sudo apt-get install grsync

sudo apt-get install grsync en una ventana de terminal

Para instalar Grsync en Fedora, use este comando:

sudo dnf install grsync

sudo dnf instalar grsync

Para instalar Grsync en Manaro use este comando:

sudo pacman -Syu grsync

sudo pacman -Syu grsync en una ventana de terminal

Para instalar luckyBackup

Para instalar luckyBackup en Ubuntu, use el siguiente comando:

sudo apt-get install luckybackup

sudo apt-get install luckybackup en una ventana de terminal

Para instalar luckyBackup en Fedora use el siguiente comando:

sudo dnf install luckybackup

sudo dnf instala luckyback en una ventana de terminal

En Manjaro debes instalar luckyBackup desde el Repositorio de usuarios de Arch (AUR). Puede hacer esto con el administrador de paquetes pamac.

el administrador de paquetes pamac

No se arriesgue, haga copias de seguridad de sus datos con frecuencia

Las copias de seguridad son absolutamente vitales. Realice copias de seguridad con frecuencia, copias de seguridad en muchas ubicaciones y copias de seguridad en diferentes medios. Una vez configurado, rsync puede hacer todo eso por usted.