Copia de seguridad de un directorio en Linux usando un script de shell

Hay varias opciones para hacer una copia de seguridad de sus datos en Linux. Puede utilizar algunos programas de software de libre acceso, como fwbackups y Sbackup. Sin embargo, existe un método simple para hacer una copia de seguridad de un directorio sin instalar ningún software adicional.

Crearemos un script de shell utilizando variables, el alquitrán comando y el fecha comando para crear un archivo de copia de seguridad con fecha de un directorio, con sus subdirectorios.

Un script de shell es esencialmente un archivo que contiene una lista de comandos que se ejecutan en secuencia. Si tiene una serie de comandos que ejecuta regularmente en orden, es útil crear un script de shell que contenga estos comandos. Entonces, solo tiene que ejecutar el archivo de script para ejecutar los comandos.

Creación del archivo de script de shell

Para este ejemplo, vamos a crear un script de shell para hacer una copia de seguridad de un directorio que contiene archivos para una guía del usuario. Estamos usando el Gnomo medio ambiente en Ubuntu.

Primero, acceda a su directorio personal, seleccionando Carpeta de inicio desde el Lugares menú. los Explorador de archivos se abre a su directorio personal.

Vamos a crear un nuevo archivo vacío en el que ingresaremos los comandos para realizar la copia de seguridad. Haga clic derecho en el panel derecho y seleccione Crear documento | Archivo vacío desde el menú emergente.

Se agrega un archivo a la lista y está listo para ser renombrado. Escriba un nombre para el archivo, dándole al archivo una extensión de .sh.

Para este ejemplo, nombramos nuestro archivo user_guide_backups.sh.

Ahora necesitamos agregar los comandos al archivo. Haga clic derecho en el nombre del archivo y seleccione Abrir con gedit desde el menú emergente.

El archivo se abre en gedit. Introduzca las siguientes líneas en el archivo y haga clic en Salvar. El propósito de cada línea se enumera a continuación.

NOTA: También puedes copiar el siguiente texto y pegarlo en gedit. Asegúrate de cambiar a tu nombre de usuario.

#! / bin / bash SRCDIR = "/ home // Documents / my_work /" DESTDIR = "/ home // Backups /" FILENAME = ug - $ (fecha +% - Y% -m% -d) - $ (fecha +% - T) .tgz tar --create --gzip --file = $ DESTDIR $ FILENAME $ SRCDIR

Descripción línea por línea

La siguiente tabla describe qué es cada línea en el archivo de script de shell.

Línea # Descripción
1 Esta línea debe ser la primera línea en un script de shell bash, que es el tipo predeterminado de script.
2 Esta línea configura una variable llamada SRCDIR y establece su valor en el directorio del cual se realizará la copia de seguridad.
NOTA: Asegúrese de reemplazar con tu nombre de usuario.
3 Esta línea configura una variable llamada DESTDIR y establece su valor en el directorio en el que se escribirá el archivo de copia de seguridad.
NOTA: Asegúrese de reemplazar con tu nombre de usuario.
4 Esta línea configura una variable llamada NOMBRE DEL ARCHIVO y establece el valor utilizando texto y variables que contienen el fecha comando para agregar la fecha y hora actual al nombre de archivo. Por ejemplo, el nombre del archivo podría ser ug-20100212-13: 03: 45.tgz.
NOTA: Cuando use una variable, comience siempre con el signo de dólar ($). Si usa un comando como parte de una variable, encierre el comando y las opciones para el comando entre paréntesis.
5 Esta linea es la alquitrán comando con la siguiente función y opciones añadidas.

-crear Esta función crea un nuevo archivo comprimido (o trunca uno antiguo si el nombre de archivo especificado ya existe) y escribe los archivos nombrados o el directorio en él.
-gzip Esta opción le dice a tar que comprima los archivos en el archivo usando el gzip utilidad.
-expediente Esta opción le da a tar el nombre de archivo a usar. En este caso, ensamblamos el nombre de archivo usando el DESTDIR, NOMBRE DEL ARCHIVOy SRCDIR variables

Edición de los permisos en el archivo de script de shell

Antes de ejecutar su script, debe asegurarse de que el archivo tenga los permisos correctos. Para hacer esto, abre tu Carpeta de inicio de nuevo como se mencionó anteriormente y haga clic derecho en el archivo de script de shell. Seleccionar Propiedades desde el menú emergente.

los Propiedades Aparece el cuadro de diálogo. Asegúrate que Ejecutar casilla de verificación está seleccionada.

Hacer clic Cerrar.

Ejecutando el script de shell

Para ejecutar el script de shell, abra una ventana de terminal seleccionando Accesorios | Terminal desde el Aplicaciones menú.

Cuando el Terminal La ventana se abre, deberías estar en tu Carpeta de inicio por defecto. Mecanografía pwd en la línea de comando y presionando enter confirma este hecho. Cuando se le solicite, escriba ./user_guide_backups.sh y presione Entrar.

Usted debe tener un .tgz archivo en la carpeta de copias de seguridad en su Carpeta de inicio. Si hace clic con el botón derecho en el nombre del archivo, verá varias opciones para abrir el archivo en uno de los programas de archivo disponibles, o extraer los archivos directamente al Copias de seguridad carpeta usando el Extraer aqui mando.

Más información

Los enlaces a continuación proporcionan más información acerca de los scripts de shell, la alquitrán y fecha comandos, y otros comandos de Linux.

Scripting

Una guía rápida para escribir scripts usando el shell bash

Bash Shell Scripting - Guía de 10 segundos | Todo sobre linux

Manual de referencia de Bash

Comandos de Linux

Página de MAN de alquitrán

fecha página MAN

Comandos de bash - Páginas MAN de Linux

Explorar estas páginas te ayudará a construir tus propios scripts de shell bash útiles.