Buscar este blog

Aviso

El autor de éste blog no se hace responsable de los posibles daños o perdidas de información, que pudieran ocasionarse en su sistema o su vida por la aplicación de la información aquí contenida.

domingo, 26 de febrero de 2012

Script en bash para remover kernels viejos en Fedora GNU/Linux

Hola a todos, en veces necesitamos eliminar kernels antiguos en nuestro Fedora, pero resulta tedioso hacerlo cada vez que actualizas y lo peor es que siempre son los mismos comandos, para eso existen los scripts que son lineas de código ejecutadas en bash o en dash donde se especifican los comandos y algoritmos que sirven para realizar una tarea en el sistema.

A continuación copiaré el código y vendrá brevemente explicado después del guión:

#!/bin/bash - elegimos el programa interprete de comandos en este caso bash.

echo "Bienvenido, debe ejecutar este script con permisos de Super Usuario o como root." - echo imprime con un espacio de linea el texto o variables que le indiquemos en consola.

echo - escribir "echo" solo imprime un espacio de linea o un enter por así decirlo.

version=`uname -r` - tenemos la variable "version" la cual es un string o una variable con texto en la cual almacenamos el nombre y la versión del kernel que se está usando, "uname -r" es el comando que nos devuelve esto.

echo "kernel actual: kernel-$version" - imprimimos en pantalla la version actual que el usuario tiene instalada.

versiones=`rpm -qa | grep -i kernel | grep -v devel | grep -v loop | grep -v headers | grep -v $version` - obtenemos por medio del programa rpm, los kernel que están instalados en el sistema menos el actual.

if test "$versiones" = ""; then - este if (condicional) nos dice que si no tienes kernels viejos te salgas del programa ejecutando antes lo que viene debajo.

echo "kernels antiguos: Ninguno"; echo; sleep 1 - le decimos al usuario que no tiene kernels antiguos.

echo "Al no tener kernels antiguos no se realizará ninguna acción."

else - si, sí tienes kernels antiguos se ejecutará lo que sigue.

echo "kernels antiguos: $versiones" - informa al usuario los kernel que desinstalara.

echo

echo "comando ejecutado \"sudo yum remove -y $versiones\"" - informa al usuario el comando que ejecuta para desinstalarlos.

echo "Se desinstalaran los kernels antiguos tenga paciencia..."; sleep 1

sudo yum remove -y $versiones - se ejecuta el comando que desinstalará los kernels antiguos.

echo

echo "Se han eliminado los kernels antiguos éxitosamente."
fi
- termina el condicional.

echo; echo "Gracias por usar este script.";echo "Escrito por: Jorge Ulises Useche Cuellar"

Ahora que he terminado de explicarlo les copiaré el código del script que tiene comentado como instalarlo si pensamos hacerlo:

#INSTRUCCIONES DE INSTALACIÓN
#1. Guarda el texto de este archivo en un fichero sin extensión, yo lo llamé rmoldkernels.
#2. Guardalo en la dirección /usr/bin/rmoldkernels, puedes hacerlo con nano u otro editor
#que te permita guardarlo con permisos de root por ejemplo: $ sudo nano /usr/bin/rmoldkernels
#y pegar el código con ctrl + shift + v.
#3. Dale permisos de ejecución con el comando: $ sudo chmod +x /usr/bin/rmoldkernels
#4. Ahora puedes ejecutar el script escribiendo desde una consola: $ sudo rmoldkernels
#
##COMIENZO DEL SCRIPT
#!/bin/bash
echo "Bienvenido, debe ejecutar este script con permisos de Super Usuario o como root."
echo
version=`uname -r`
echo "kernel actual: kernel-$version"
versiones=`rpm -qa | grep -i kernel | grep -v devel | grep -v loop | grep -v headers | grep -v $version`
if test "$versiones" = ""; then
echo "kernels antiguos: Ninguno"; echo; sleep 1
echo "Al no tener kernels antiguos no se realizará ninguna acción."
else
echo "kernels antiguos: $versiones"
echo
echo "comando ejecutado \"sudo yum remove -y $versiones\""
echo "Se desinstalaran los kernels antiguos tenga paciencia..."
sleep 1
sudo yum remove -y $versiones
echo
echo "Se han eliminado los kernels antiguos éxitosamente."
fi
echo; echo "Gracias por usar este script.";echo "Escrito por: Jorge Ulises Useche Cuellar"

Buena suerte.

No hay comentarios:

Publicar un comentario

Más populares

Archivo del blog