Asignatura Datos del alumno Fecha
Sistemas Operativos Apellidos: Davila Mata
09/11/2023
Avanzados Nombre: Miguel Ángel
Programación de Scripts en Linux (Miguel Ángel Davila Mata)
Universidad de la Rioja (UNIR)
Universidad en internet (Licenciatura en sistemas computacionales, Administración de sistemas
operativos)
Dr. Carlos Ramiro Soria Cano (Profesor)
Guadalajara, Jalisco (México)
30 de septiembre de 2023 (13/11/2023)
Asignatura Datos del alumno Fecha
Sistemas Operativos Apellidos: Davila Mata
09/11/2023
Avanzados Nombre: Miguel Ángel
Introducción.
El sistema operativo Linux es una base muy importante en diferentes plataformas de sistemas
operativos y programas y gracias a ser un producto de código abierto, ha evolucionado de
manera importante, hasta llegar a lo que es hoy un sistema muy similar a los sistemas más
populares como lo son el MacOS y Windows.
Además, por su tipo de diseño lo hacen un sistema rápido y confiable por estas mismas
características muchas empresas lo utilizan como base para sus servidores y servicios.
Por eso en este documento vamos a ver una de las herramientas con las que cuenta el sistema
linux.Los Scripts son documentos programables para el shell de linux con extensión .sh, con
ellos podemos ejecutar tareas en nuestro sistema operativo de manera automática, ya sea
automática (de un solo uso o programada) o manual, que nos ayude a ciertas funciones de
manera eficiente con algunas líneas de comandos con estos podremos cuidar de nuestro
sistema y con algunas otra tareas que pueden hacerse con el shell.
Objetivos.
Vamos a crear un Script que nos muestre cada cierto tiempo un menú que nos permite realizar
las siguientes acciones:
● Obtener el espacio libre del disco.
● Obtener el espacio utilizado por un cierto Directorio y mostrar su contenido.
● Obtener el uso del procesador.
● Obtener los usuarios conectados.
● Obtener usuarios conectados desde la última vez.
Asignatura Datos del alumno Fecha
Sistemas Operativos Apellidos: Davila Mata
09/11/2023
Avanzados Nombre: Miguel Ángel
Proceso.
Para hacer este trabajo instalaremos una utilidad para el shell de linux llamado “vim” con el
siguiente comando en nuestra terminal de Linux(en este caso Ubuntu) “sudo apt-get install
vim”.
Y con esta herramienta vamos a crear nuestro archivo con extensión .sh de la siguiente manera:
Con esto nos dejará editar este documento en la aplicación vim dentro de la terminal de
nuestro Linux y nos abrirá lo siguiente:
Asignatura Datos del alumno Fecha
Sistemas Operativos Apellidos: Davila Mata
09/11/2023
Avanzados Nombre: Miguel Ángel
Para iniciar nuestro Script tenemos que iniciar nuestro documento con un “#!/bin/bash”
con esta línea le indicamos a nuestro sistema que esto que estamos creando será un Script.
Ahora crearemos una variable llamada “opcion” que nos ayudará a guardar un valor numérico para nuestro
menú.
La iniciamos con un valor de cero para evitar errores.
vamos a utilizar dos estructuras dentro de nuestro Script muy importantes, una es el while para que nuestro
menú no se cierre hasta que cumpla cierta condición que en este caso será el número de opción que nos de
“salir”. Dentro de nuestro while pondremos la segunda estructura que es el “case” para elegir nuestras
opciones del menú.
nuestro menú quedará de la siguiente manera:
1.Obtener espacio libre del disco
2.Obtener tamaño de directorio
3.Obtener uso de procesador
4.Obtener usuarios conectados
5.Obtener usuarios conectados desde la última vez
6.Salir
En nuestra primera opción vamos a utilizar el comando “df” para ver el espacio en disco
Asignatura Datos del alumno Fecha
Sistemas Operativos Apellidos: Davila Mata
09/11/2023
Avanzados Nombre: Miguel Ángel
En la segunda opción vamos a usar el comando ls-h
en la tercera opción usamos el comando top el cual en algunos sistemas tendremos que instalar
y el resultado es el siguiente:
Asignatura Datos del alumno Fecha
Sistemas Operativos Apellidos: Davila Mata
09/11/2023
Avanzados Nombre: Miguel Ángel
En la opción 5 podemos ver todos los usuarios que se han logueado en el sistema:
y en la última opción podremos salir del programa
Asignatura Datos del alumno Fecha
Sistemas Operativos Apellidos: Davila Mata
09/11/2023
Avanzados Nombre: Miguel Ángel
Como en los objetivos que se dieron tenemos que hacer que el Script se ejecute cada cierto
tiempo para esto podemos usar las herramientas con y contra, los cuales nos permiten
automatizar algunas tareas por minuto, hora, día o cada cierto tiempo.
Para comenzar a utilizar cron tendremos que ver si esta inicializado con el siguiente comando:
“/etc/init.d/cron status”
Si queremos automatizar nuestro sistema operativo por medio de Scripts tendremos que tener
activo el cron que es un DAEMON en Linux o servicio en windows.
Una vez activado nuestro servicio cron vamos a editar su contenido para agregar nuestro Script
que queremos ejecutar cada cierto tiempo
tenemos que darle permisos de super usuario y por eso utilizamos el comando sudo
Una vez dentro el propio sistema nos da ejemplos para utilizar el crontab:
Para ejecutar nuestro script cada cierto tiempo y como ejemplo vamos a configurar nuestro
menú para que se ejecute cada 5 minutos con la siguiente línea:
“05 * * * * /home/angel/menu1.sh”
Asignatura Datos del alumno Fecha
Sistemas Operativos Apellidos: Davila Mata
09/11/2023
Avanzados Nombre: Miguel Ángel
Esto solo es un ejemplo de lo que puedes hacer con cron y crontab, podrías programar respaldos
del sistema periódicamente sin necesidad de hacerlo manualmente y otras actividades más.
A continuación, pondremos las líneas de código utilizadas en este documento:
#!/bin/bash
#declarar variable para leer
opc=0
#repetir el menu hasta que el numero ingresado sea 6
while [ $opc -ne 6 ];do
clear
echo 1.Obtener espacio libre del disco
echo 2.Otener tamaño de directorio
echo 3.Obtener uso de procesador
echo 4.Obtener usuarios conecados
echo 5.Obtener usuarios conectados desde la ultima vez
echo 6.Salir
echo selecciona la opcion deseada
read opc
case $opc in
1)
clear
#usamos df -h para obtener el espacio en disco
df -h
sleep 5
Asignatura Datos del alumno Fecha
Sistemas Operativos Apellidos: Davila Mata
09/11/2023
Avanzados Nombre: Miguel Ángel
;;
2)
clear
# mostrar el espacio y ficheros de un directorio
echo estos son los diectorios y ficheros que contiene este equipo:
echo -e
ls -h
sleep 5
;;
3)
clear
# Mostrar uso de cpu
echo Se mostrara el uso de cpu
echo para salir presione las teclas ctrl +c y espere 5 segundos
sleep 5
clear
top
sleep 5
;;
4)
# mostrar los usuarios conectados
clear
Asignatura Datos del alumno Fecha
Sistemas Operativos Apellidos: Davila Mata
09/11/2023
Avanzados Nombre: Miguel Ángel
who
sleep 5
;;
5)
clear
last
sleep 5
;;
6)
clear
echo usted esta saliendo...
sleep 5
clear
;;
*)
clear
echo numero equivocado
;;
esac
done
Asignatura Datos del alumno Fecha
Sistemas Operativos Apellidos: Davila Mata
09/11/2023
Avanzados Nombre: Miguel Ángel
Conclusión.
Por este tipo de herramientas muchos administradores de sistemas prefieren utilizar Linux para
la gestión de sus servidores y gestiones de usuarios, añadiendo a esto que el sistema Linux es
de código libre (gratuito), es un sistema rápido y eficaz debido a su sencillo uso, robustez, entre
otras cosas.
En conclusión, tenemos muchas herramientas para la gestión de redes de computadoras,
gracias al avance tecnológico y los sistemas operativos, cada día tenemos más opción para
llevar a cabo el trabajo de gestión de redes y usuarios, aun así, vemos que el sistema Linux tiene
herramientas muy llamativas para llevar a cabo los trabajos.
Bibliografía.
ProfeSantiago. (2020, July 10). CRONTAB LINUX - como AUTOMATIZAR TAREAS - curso
Linux [Video]. YouTube. https://www.youtube.com/watch?v=mSGhSqsLBMM
De Luz, S. (2023, August 3). Utiliza Cron y Crontab para programar tareas en tu servidor.
RedesZone. https://www.redeszone.net/tutoriales/servidores/cron-crontab-linux-
programar-tareas/