cambiatipo: Script para cambiar el tipo de máquina en el fichero /etc/escuela2.0 | Algo de Linux

viernes, 2 de marzo de 2018

cambiatipo: Script para cambiar el tipo de máquina en el fichero /etc/escuela2.0

Reutilizando el código del script cambiahostname, he escrito otro script cambiatipo que permite cambiar el tipo de máquina en el fichero /etc/escuela2.0:
#!/bin/bash
#
# Esteban M. Navas 
# Fecha creación: 02/03/2018

# Si no hay parámetros, el script se está usando de forma interactiva
if [ -z "$1" ]; then

   DIALOG="dialog"
   tempfile=`tempfile 2>/dev/null` || tempfile=/tmp/test$$
   trap "rm -f $tempfile" 0 1 2 5 15

   $DIALOG --title "Tipo de host" --clear \
           --inputbox "Introduzca el tipo de host que desea asignar a este equipo [siatic, infolab, workstation, notebook]:" 15 51 2> $tempfile

   retval=$?

   case $retval in
     0)
       TIPO=`cat $tempfile`
     ;;
     1) ;;
   esac
else
   TIPO=$1
fi


if [ "$TIPO" ] ; then

   grep -q '^tipo=' /etc/escuela2.0 && sed -i "s/^tipo=.*/tipo=$TIPO/" /etc/escuela2.0 || echo "tipo=$TIPO" >> /etc/escuela2.0

   /usr/sbin/sinc_puppet -f now
#  /usr/local/sbin/pkgsync -pcr

fi
En este caso:
  • Si existe, reemplazamos la definición del tipo de host en el fichero /etc/excuela2.0.
  • Si no existe, simplemente la insertamos.
Al igual que en el script cambiahostname, se puede indicar el nombre del host como parámetro del script. Y, si no se especifica, mostrará un cuadro de diálogo para que lo escribamos.

Tras cambiar el host, se ejecutará sinc_puppet (He dejado la línea que ejecutaría pkgsync comentada).

Publicado por primera vez en http://enavas.blogspot.com.es

No hay comentarios: