Bash Scripting en Linux (VI). Ejemplo: Setup Post Instalacion en Ubuntu

Muy buenas. Ahí va otro post de la serie de Linux Scripting. Ahora que ya conoces el entorno de Bash, la sintaxis básica del lenguaje, los pasos a seguir para crear y ejecutar tu primer script de forma manual, e incluso las formas que tienes para programar la ejecución de tu script en el arranque del sistema, es hora de ir a por la parte de ejemplos prácticos.

En este post empezaré con un ejemplo sumamente sencillo, centrado en automatizar una serie de tareas post-instalación del sistema, para evitar tener que realizarlas manualmente una a una. Este script, al final, si lo adaptas convenientemente y lo guardas en un medio de almacenamiento externo, te puede servir para ahorrarte todo el proceso de puesta a punto post-instalación en futuras instalaciones.

Tabla de contenidos:

  1. Descripción y propósito del script
  2. Condiciones de funcionamiento
  3. Creación del script
  4. Código fuente
  5. Ejecución del script
  6. Continuación

Descripción y Próposito del Script

Como primer ejemplo he puesto un script sumamente sencillo de hacer y de implementar, pero que en cambio te puede ahorrar bastante tiempo a la hora de realizar todas las tareas tipicas de puesta a punto inicial en una instalación tipica de Ubuntu. El script muestra una propuesta de setup que te puede servir de referencia, pero que luego puedes adaptar a tus necesidades particulares.

El proposito del script es ejecutar de forma secuencial una serie de acciones tipicas de puesta a punto tras una instalación de Ubuntu. Las acciones se centran en tareas tales como comprobar y aplicar actualizaciones de paquetes, instalar herramientas y aplicaciones que puedas necesitar, habilitar el cortafuegos, así otros ajustes menores, que verás mas en detalle en la parte del código del script.

El script está pensado para que lo puedas ejecutar de forma manual justo después de finalizar el proceso de instalación, y que lo puedas dejar ejecutándose hasta el final, sin necesidad de tener que realizar ninguna acción de confirmación por tu parte.

Condiciones de Ejecución

El script esta pensando para funcionar en Ubuntu 22.04 LTS o versiones posteriores. Aunque muchas de las acciones serían igualmente validas para otras distribuciones basadas en Debian, y que utilizen APT como gestor de paquetes, lo he destinado a Ubuntu porque contempla el hecho diferencial de que, justamente en Ubuntu y a partir de su versión 22.04 LTS, varias de las aplicaciones están únicamente disponibles en forma de Snaps.

Pese a este detalle, si tienes en cuenta el hecho de las aplicacines que están como Snaps en Ubuntu, puedes adaptar fácilmente el script para que pueda funcionar en otras distribuciones basadas en Debian, como el mismo Debian o Linux Mint, entre otros muchos.

Creación del Script

A continuación te dejo los pasos que debes seguir para crear y ejecutar el script, y en el siguiente apartado te dejo el código del mismo, que luego tu mismo podrás adaptar segun tus preferencias.

  1. Abrir un nuevo fichero de texto con tu editor de texto favorito. Puedes utilizar un editor gráfico como Gedit en GNOME, o un editor por consola como Vim.
  2. Copiar el código del script que tienes a continuación, y adaptarl a tus preferencias particulares en caso de que lo desees.
  3. Guardar el archivo en la ubicación que desees dentro de tu Home. El fichero puede tener el nombre que desees, peor debe terminar con la extensión .sh.

Código Fuente

A continuación tienes el código que debes copiar en el fichero recién creado.

#!/bin/bash

# Comprueba actualizaciones disponibles
sudo apt update

# Instala paquetes que pueden ser actualizados
# El parámetro -y sirve para saltarte el aviso de confirmación
sudo apt -y upgrade

# Eliminar paquetes no necesarios y limpiar ficheros
sudo apt -y autoremove
sudo apt autoclean

# Instalar aplicaciones tipicas a través de APT
sudo apt -y install vlc gimp clamav chkrootkit lynis

# Instalar aplicaciones típicas como Snaps
sudo snap install chromium brave

# Habilitar el cortafuegos del kernel a través de ufw
sudo ufw enable

# Habilitar la preferencia de minimizar al hacer click en el Dock
gsettings set org.gnome.shell.extensions.dash-to-dock click-action 'minimize'

El fichero lo puedes guardar en el directorio que desees dentro de tu Home, y le puedes dar el nombre que quieras, pero debe acabar con la extensión sh.

Ejecución del Script

Una vez creado y guardado el script, es hora de ejecutarlo. Para ello, tan solo debes abrir una ventana de terminal, situarte en el directorio en el que lo tienes almacenado, y teclear el siguiente comando:

bash nombre-script.sh

Con esto, ya solo queda esperar a que se termine de ejecutar, y ya tendrás todas las tareas de puesta a punto realizadas. Esto te habrá ahorrado el ir tecleando uno a uno todos los comandos que has incluido en el código de script.

Como se trata de un script de puesta a punto post-instalacion, ya no hace falta ni que lo guardes en el disco. Lo puedes traspasar a un medio de almacenamiento externo, para utilizarlo en futuras instalaciones (teniendo en cuenta, eso si, que dependiendo de la distribución y versión, puede ser necesario realizar algunos ajustes.

Continuación

Antes de finalizar, te dejo a continuación con todos los posts publicados dentro de esta serie sobre Linux scripting, para que puedas consultarlos si necesitas profundizar en cualquiera de los aspectos teóricos explicados.

  1. Linux scripting. Descubre el enorme poder de automatizar tareas
  2. Linux scripting con Bash. Introducción a Bash
  3. Linux scripting con Bash. Sintaxis del lenguaje
  4. Linux scripting con Bash. Crear y ejecutar tu primer script
  5. Linux scripting con Bash. Ejecutar script en el inicio del sistema
  6. Linux scripting con Bash. Ejemplo 1. Setup post-instalación para Ubuntu
  7. Linux scripting con Bash. Ejemplo 2. Analisis semanal con ClamAV, Chkrootkit y Rkhunter

Un saludo y hasta la próxima!

Categorías LinuxEtiquetas

1 comentario en “Bash Scripting en Linux (VI). Ejemplo: Setup Post Instalacion en Ubuntu

Deja una respuesta

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Salir /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Salir /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Salir /  Cambiar )

Conectando a %s

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

A %d blogueros les gusta esto:
search previous next tag category expand menu location phone mail time cart zoom edit close