¿Cómo usaría tar para realizar una copia de seguridad completa y restaurar con el sistema en SSD y el hogar en HDD?


14

¿Cómo usaría tar para realizar una copia de seguridad completa y restaurar con el sistema en SSD y el hogar en HDD?

Las respuestas existentes de copia de seguridad y restauración no parecen cubrir el caso en que la raíz y el hogar están en dispositivos separados


Bienvenido a AU! ¿Está buscando algo único o una solución continua / periódica? ¿El destino de la copia de seguridad es local o remoto? tarrealmente no le importan los dispositivos y los puntos de montaje. Por favor, editar tu post para incluir la información adicional.
— David Foerster

"Las respuestas existentes de copia de seguridad y restauración no parecen cubrir el caso en el que la raíz y el hogar están en dispositivos separados" la razón: es una mala idea y hacer 2 archivos de copia de seguridad no solo es más inteligente sino también más eficiente.
— Rinzwind

Respuestas:


17

Se recomienda hacer DOS copias de seguridad. 1 para / y 1 para / home si están en una partición diferente. Si desea uno, tendrá que agregar muchas excepciones a ese comando. Ejemplo:

sudo su
cd /
tar -cvpzf backup.tar.gz --exclude=/backup.tar.gz --one-file-system / 
tar -cvpzf backuphome.tar.gz --one-file-system /home/

hará una copia de seguridad de su raíz y excluirá TODAS las particiones montadas, como / media (no desea hacer una copia de seguridad de dispositivos externos (realmente no lo hace)) y NO desea hacer una copia de seguridad de algo como / dev o / proc. Y / home va a otra copia de seguridad.

En el método anterior, la copia de seguridad se almacena en /. Será mejor almacenarlo en un medio externo; A continuación, puede colocar un directorio delante de backup.tar.gz y soltarlo --exclude=...desde el primer comando.

  • backup.tar.gz es el respaldo.
  • Esto --excludeevitará que la copia de seguridad real sea respaldada.
  • cvpzf: crear, detallar, preservar permisos, comprimir, usar un archivo.

  • --one-file-system : no incluya archivos en un sistema de archivos diferente. Si desea que se realicen copias de seguridad de otros sistemas de archivos, como una partición / home o medios externos montados en / medios, debe hacer una copia de seguridad por separado u omitir este indicador. Si omite este indicador, deberá agregar varios más --exclude = argumentos para evitar los sistemas de archivos que no desea. Estos serían los directorios / proc, / sys, / mnt, / media, / run y / dev en la raíz./ proc y / sys son sistemas de archivos virtuales que proporcionan ventanas en variables del núcleo en ejecución, por lo que no desea intentar hacer una copia de seguridad o restaurarlas. / dev es un tmpfs cuyo contenido es creado y eliminado dinámicamente por udev, por lo que tampoco desea hacer una copia de seguridad o restaurarlo. Del mismo modo, / run es un tmpfs que contiene variables sobre el sistema en ejecución que no necesitan copia de seguridad ( Fuente ).


Entonces ... si realmente todavía quieres un "one-liner", podría verse así:

cd /
tar -cvpzf backup.tar.gz --exclude=/backup.tar.gz --exclude=/proc 
--exclude=/tmp --exclude=/mnt --exclude=/dev --exclude=/sys / 

(Espero tener todo lo que necesita ser excluido)


Restaurar sería

sudo su
cd /
tar xvzf backup.tar.gz

No utilicé sudodelante del comando tar ya que recibirás mensajes de error con respecto a los permisos (debido a los archivos propiedad de root).


Su sugerencia de dos líneas funcionó muy bien, excepto que cuando hice una copia de seguridad del sistema recibí un mensaje. "/lib64/ld-linux86-64.so2 tar: /: el archivo cambió mientras lo leíamos". ¿Es esto normal durante una copia de seguridad?
— Buildit

Si. tar le informará de los cambios en el archivo durante la acción de copia de seguridad de ese archivo (verifica el estado del archivo antes y después de hacer una copia de seguridad). En general, estos mensajes son inofensivos. Si tiene su propio software / datos y lo obtiene en uno de esos archivos, volvería a crear la copia de seguridad.
— Rinzwind

El tar estándar no se comprime, simplemente une todo a un archivo (TAR = Tape ARchive). Prueba gtar en su lugar.
— Alan Campbell

1
Si el comando no respaldará ciertos directorios, ¿debo volver a crearlos cuando restaure el sistema? Además, ¿qué ventajas tiene este método para usar simplemente Deja-Dup?
— user4493605
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.