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 disponibles gratuitamente, como fwbackups y Sbackup . Sin embargo, existe un método sencillo para hacer una copia de seguridad de un directorio sin instalar ningún software adicional.
Crearemos un script de shell usando variables, el comando tar y el comando date para crear un archivo de copia de seguridad fechado 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. Luego, 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 entorno Gnome en Ubuntu .
Primero, acceda a su directorio de inicio seleccionando Carpeta(Home Folder) de inicio en el menú Lugares . (Places)El Explorador(File Browser) de archivos se abre en su directorio de inicio.
Vamos a crear un nuevo archivo vacío en el que introduciremos los comandos para realizar la copia de seguridad. Haga clic(Right-click) derecho en el panel derecho y seleccione Create Document | Empty File en el menú emergente.
Un archivo se agrega a la lista y está listo para ser renombrado. Escriba(Type) un nombre para el archivo, dándole al archivo una extensión de .sh .
Para este ejemplo, llamamos a nuestro archivo user_guide_backups.sh .
Ahora necesitamos agregar los comandos al archivo. Haga clic con el botón derecho en el nombre del archivo y seleccione Abrir con gedit(Open with gedit) en el menú emergente.
El archivo se abre en gedit . Ingrese las siguientes líneas en el archivo y haga clic en Guardar(Save) . El propósito de cada línea se enumera a continuación.
NOTA:(NOTE:) También puede copiar el siguiente texto y pegarlo en gedit . Asegúrese de cambiar <username> a su nombre de usuario.
#!/bin/bash SRCDIR="/home/<username>/Documents/my_work/" DESTDIR="/home/<username>/Backups/" FILENAME=ug-$(date +%-Y%-m%-d)-$(date +%-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.
Line # | Description | ||||||
1 | This line must be the first line in a bash shell script, which is the default type of script. | ||||||
2 | This line sets up a variable called SRCDIR and sets the value of it to the directory to be backed up. NOTE: Be sure to replace <username> with your username. |
||||||
3 | This line sets up a variable called DESTDIR and sets the value of it to the directory into which the backup file will be written. NOTE: Be sure to replace <username> with your username. |
||||||
4 | This line sets up a variable called FILENAME and sets the value using text and variables containing the date command to add the current date and time to the filename. For example, the filename might be ug-20100212-13:03:45.tgz. NOTE: When using a variable, always start it with the dollar sign ($). If you use a command as part of a variable, enclose the command and the options for the command in parentheses. |
||||||
5 | This line is the tar command with the following function and options added.
|
Edición de los permisos(Permissions) en el archivo de script de Shell(Shell Script File)
Antes de ejecutar su secuencia de comandos, debe asegurarse de que el archivo tenga los permisos correctos. Para hacer esto, abra su Carpeta(Home Folder) de inicio nuevamente como se mencionó anteriormente y haga clic con el botón derecho en el archivo de script de shell. Seleccione Propiedades(Properties) en el menú emergente.
Aparecerá el cuadro de diálogo Propiedades . (Properties)Asegúrese(Make) de que la casilla de verificación Ejecutar(Execute) esté seleccionada.
Haga clic en Cerrar(Close) .
Ejecutar el script de Shell
Para ejecutar el script de shell, abra una ventana de terminal seleccionando Accessories | Terminal desde el menú Aplicaciones .(Applications)
Cuando se abra la ventana de Terminal , debería estar en su Carpeta(Home Folder) de inicio de forma predeterminada. Escribir pwd en la línea de comando y presionar enter confirma este hecho. Cuando se le solicite, escriba ./user_guide_backups.sh y presione Entrar(Enter) .
Debe tener un archivo .tgz en la carpeta Copias de (.tgz)seguridad(Backups) en su Carpeta(Home Folder) 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 a la carpeta Copias de seguridad(Backups) mediante el comando Extraer aquí .(Extract Here )
Más información
Los enlaces a continuación brindan más información sobre los scripts de shell, los comandos tar y date , y otros comandos de Linux .
secuencias de comandos
Una guía rápida para escribir scripts usando el shell bash(A quick guide to writing scripts using the bash shell)
Bash Shell Scripting – 10 Seconds Guide | All about Linux
bash manual de referencia(Bash Reference Manual)
Comandos Linux
Página de hombre de alquitrán(tar MAN Page)
Fecha HOMBRE Página(date MAN Page)
Comandos bash – Páginas MAN de Linux(bash commands – Linux MAN Pages)
Explorar estas páginas lo ayudará a construir sus propios scripts útiles de bash shell.
Related posts
Cómo navegar y usar la estructura de directorios de Linux
Comando FIND de Linux con ejemplos
5 grandes razones para deshacerse de Windows por Linux
HDG explica: ¿Qué es UNIX?
Las 9 mejores distribuciones de Linux para hackear
Una guía de Ubuntu Linux para principiantes
Cómo actualizar a la última versión de Ubuntu
Los 10 principales comandos de Raspberry Pi Linux que debe conocer
Permisos de archivo de Linux: qué es Chmod 777 y cómo usarlo
Cree una distribución Live Linux personalizada con Linux Live Kit
La forma más fácil de conectarse de forma remota a Linux Mint desde cualquier sistema operativo
Crear y editar archivos zip en Linux usando la terminal
Los 7 mejores programas antivirus gratuitos para Linux
6 maneras fáciles de acelerar su instalación de Ubuntu
Configurar Ubuntu para no atenuar o apagar una pantalla inactiva
Convierta imágenes entre formatos a través de la línea de comandos en Ubuntu
Los 5 mejores juegos de Linux
Cómo instalar casi cualquier impresora en Ubuntu
Instalar Adobe Digital Editions en Ubuntu Linux
Cómo crear una partición de disco de Linux