6. creacion script
TRANSCRIPT
7/27/2019 6. Creacion Script
http://slidepdf.com/reader/full/6-creacion-script 1/14
Anaitis Cabrera García 2009-3383 S0-3 José Doñe CENTOS
Creación de Script
Shell que significa en Castellano “concha” es el intérprete de comandos del
sistema. Es una interfaz de texto de altas prestaciones, que sirve
fundamentalmente para tres cosas: administrar el sistema operativo, lanzar
aplicaciones (e interactuar con ellas) y como entorno de programación. Gnu/Linux
se administra editando ficheros configuración. La Shell los interpreta linea a linea.
Se les suele conocer como Shells Scripts y pueden ser desde sencillas órdenes hasta
complejas series de instrucciones para el arranque del propio sistema operativo. En
general, tienen una sintaxis bastante clara y suponen un buen punto de partida
para dar los primeros pasos en el mundo de la programación.
Un Script es un archivo de texto, que contiene una serie de comandos para shell,
que el sistema ejecuta ordenadamente, de arriba abajo. Para editarlos, tan solo hace
falta un editor de textos, como Emacs, o Vi. Se guardan con extensión: .sh y se
ejecutan desde la Shell mediante el comando: sh nombre de script.sh. Los scripts,
se comportan de igual manera que los comandos de la shell.
Script funcional para crear usuarios
Para la creación del script utilizaremos el comando useradd o adduser. El primerpaso es abrir la terminal. Luego abrimos un archivo en un editor de texto. En este
caso utilizaremos nano, y el nombre del archivo se llamara user.
7/27/2019 6. Creacion Script
http://slidepdf.com/reader/full/6-creacion-script 2/14
Anaitis Cabrera García 2009-3383 S0-3 José Doñe CENTOS
Para crear el script escribimos:
#!/bin/bash: este es el bash que estamos utilizando.
Script Funcional: es la etiqueta de nuestro script.
Escribe el nombre de usuario: que es un mandarto.
Var 1: es una variable.
Echo: nos dara print de mensaje que pongamos en tre comillas.
Read: que leera los datos que introdusca el usuario y los guardara en las
variables.
Con el comando which bash nos damos cuenta del bash que utiliza nuestro kernel.
Con el editor nano, vamos a modificar el archivo userscript.sh. A continuacion se
presentan las lineas que contiene el script:
Luego que guardamos los cambios, procedemos a dar los permisos necesarios para
la ejecución del script.
7/27/2019 6. Creacion Script
http://slidepdf.com/reader/full/6-creacion-script 3/14
Anaitis Cabrera García 2009-3383 S0-3 José Doñe CENTOS
Utilizamos el comando source para ejecutar el script, escribiendo source seguido
del nombre del archivo que contiene el script.
Como podemos ver hemos creado el usuario, y hemos asignado una contraseña
para poder iniciar sección con este user.
Para comprobar que nuestro usuario ha sido creado nos dirigimos al siguiente
archivo: /etc/passwd.
7/27/2019 6. Creacion Script
http://slidepdf.com/reader/full/6-creacion-script 4/14
Anaitis Cabrera García 2009-3383 S0-3 José Doñe CENTOS
Script funcional para crear grupos
Los pasos para crear un script son similiares a el anterior. En primer lugar nos
ubicamos en el directorio que queremos crear el script y editamos el archivo del
script, en este caso utilizaremos nano, y el script se llamara groupscript.sh.
Utilizaremos el comando gruopadd para crear los grupos, y usermode paraagregar usuarios al grupo creado.
Añadimos los permisos necesarios al script:
7/27/2019 6. Creacion Script
http://slidepdf.com/reader/full/6-creacion-script 5/14
Anaitis Cabrera García 2009-3383 S0-3 José Doñe CENTOS
Luego utilizamos el comando source para ejecutar el script y ver su funcionalidad.
Nos dirigiremos al archivo /etc/group, para verificar que el grupo ha sido creado.
7/27/2019 6. Creacion Script
http://slidepdf.com/reader/full/6-creacion-script 6/14
Anaitis Cabrera García 2009-3383 S0-3 José Doñe CENTOS
Script funcional para hacer backup de datos
El primer paso es crear un directorio con un fichero dentro, el cual será el lugardonde se realizara el backup, y otro directorio en donde se realizara la copia del
mismo.
7/27/2019 6. Creacion Script
http://slidepdf.com/reader/full/6-creacion-script 7/14
Anaitis Cabrera García 2009-3383 S0-3 José Doñe CENTOS
Añadimos los permisos necesarios a los directorios creados.
Vamos a crear un archivo txt en el directorio backup, y este archivo será el que
actuara como dato para hacer el backup.
7/27/2019 6. Creacion Script
http://slidepdf.com/reader/full/6-creacion-script 8/14
Anaitis Cabrera García 2009-3383 S0-3 José Doñe CENTOS
Procedemos a la creación del script. El script es semejante a los anteriores, solo
varían los comandos que se utilizaran.
El script nos pedirá el directorio donde se encuentran los datos a copiar, y también
nos pedirá el directorio destino donde serán copiados. Los datos que vamos a
copiar en esta práctica pertenecen al siguiente path: /root/Desktop/backup/datos.
Y el path donde se copiaran esos datos es: /root/Desktop/copiabackup/.
7/27/2019 6. Creacion Script
http://slidepdf.com/reader/full/6-creacion-script 9/14
Anaitis Cabrera García 2009-3383 S0-3 José Doñe CENTOS
Ahora nos dirigimos al directorio que elegimos para hacer el backup, y vemos los
datos copiados y guardados en este directorio.
Script funcional para transferir datos entre PC
Para crear un script funcional para transferir un directorio a otra PC lo primero que
tenemos que hacer es crear un directorio que será el compartido entre las dos PCs
dándole en primer lugar los permisos necesarios al directorio que se va a transferir.
7/27/2019 6. Creacion Script
http://slidepdf.com/reader/full/6-creacion-script 10/14
Anaitis Cabrera García 2009-3383 S0-3 José Doñe CENTOS
Luego nos ubicamos en el directorio, y creamos el script.
Utilizaremos los siguientes parámetros al momento de crear el script:
SOURCEDIR: para establecer el origen de nuestro directorio a transferir
DESTDIR: para establecer el destino de nuestro directorio de nuestra otra pc.
rsync: para sincronizar las carpetas.
--progress: para enseñar el progreso de la transferencia-avze: opciones del comando rsync.
Le damos al script los permisos necesarios:
7/27/2019 6. Creacion Script
http://slidepdf.com/reader/full/6-creacion-script 11/14
Anaitis Cabrera García 2009-3383 S0-3 José Doñe CENTOS
La siguiente imagen muestra los archivos que se van a transferir:
Ejecutamos el script con el comando source:
Vamos a escribir el directorio donde están los archivos que vamos a transferir el
cual es: /root/Desktop/Compartir.
También escribiremos el directorio a donde se copiaran esos archivos. Para esto
debemos saber la dirección Ip de la maquina donde se van a transferir los datos. En
este caso esa dirección Ip es 10.0.0.7, y el directorio se escribirá de la siguiente
manera: 10.0.0.7:/root/Desktop/Compartir.
7/27/2019 6. Creacion Script
http://slidepdf.com/reader/full/6-creacion-script 12/14
Anaitis Cabrera García 2009-3383 S0-3 José Doñe CENTOS
Vemos como se copian los archivos. Podemos ver también que se nos pidió la
contraseña de la maquina a la cual se copiaron los archivos. Esto lo hace por
seguridad y métodos de autentificación.
Nos dirigimos a la maquina a la cual se copiaron los archivos y podremos ver los
datos:
7/27/2019 6. Creacion Script
http://slidepdf.com/reader/full/6-creacion-script 13/14
Anaitis Cabrera García 2009-3383 S0-3 José Doñe CENTOS
Utilizar cron para programar la ejecución automática de script
Cron se define como un administrador regular de procesos en segundo plano
(demonio) que ejecuta procesos (por ejemplo, cada minuto, día, semana o mes).
Los procesos que deben ejecutarse y la hora en la que deben hacerlo se especifican
en el fichero crontab. Cron es como el programador de tareas en Windows y nos
ayuda bastante a ahorrar tiempo cuando tenemos mucho trabajo.
La forma más fácil para poder ejecutar un script periódicamente con un usuario es
usando el comando crontab –e. Para esto tenemos que estar logeados con el
usuario que queremos que ejecute el script:
Luego de esto nos aparecerá un fichero donde tendremos que introducir cada
cuanto queremos que se ejecute el script y la ruta al script, en el siguiente formato:
7/27/2019 6. Creacion Script
http://slidepdf.com/reader/full/6-creacion-script 14/14
Anaitis Cabrera García 2009-3383 S0-3 José Doñe CENTOS
El símbolo asterisco (*) significa que se abarcará todos los días, horas, etc, según el
campo que se especifique en el fichero. Nota: como comando pondré la ruta de un
fichero de backup que ya había creado previamente.
Cron.daily, cron.hourly, cron.weekly, cron.monthly: Estas carpetas se encuentran
en /etc/, y si ubicamos cualquier script en ellas se ejecutara una vez al día (daily), a
la hora (hourly), a la semana (weekly) o al mes (monthly). Algo sencillo y sin
complicaciones para el usuario.
Por ejemplo: deseamos que el script backup.sh que creamos más arriba se ejecute
los viernes a las 5:30 pm, introducimos la siguiente línea en crontab:
30 17 * * 5 /root/Desktop/Scripts/backupscript.sh
Luego de esto guardamos el fichero y el script de backup se ejecutara en el tiempo
especificado en contrab.