Algo de Linux

viernes, 25 de mayo de 2018

Instalar OpenBoard en Ubuntu Trusty

Por lo que he podido comprobar, han subido una nueva versión de OpenBoard (1.3.7-b.0) al repositorio linex.educarex.es. El problema es que esta versión requiere Qt 5.5, que no se encuentra en los repositorios de Trusty.

De acuerdo con las instrucciones de OpenBoard-Org, para instalar dichas dependencias, lo único que tenéis que hacer es añadir el ppa beineri:
ppa:beineri/opt-qt551-trusty
Podéis añadirlo con el comando add-apt-repository.
En mi caso, utilizo el módulo puppet apt para añadir repositorios a las máquinas. Es más cómodo y sencillo.
Publicado por primera vez en http://enavas.blogspot.com.es

Paquete pkgsync 1.52: Añadido wrapper al script pkgsync para inhibir apagado si se encuentra instalado systemd

En la versión 1.45 del paquete, modifiqué pkgsync para que se inhibiera el apagado del equipo cuando se ejecutara pkgsync de forma desatendida mediante la tarea cron nightly-pkgsync, siempre y cuando se encontrara instalado systemd en el sistema.

He realizado una nueva revisión del paquete pkgsync (versión 1.52) a la que he añadido un wrapper (/usr/sbin/pkgsync) que permite inhibir el apagado del equipo cuando se ejecuta de forma manual /usr/sbin/pkgsync (siempre que se encuentre instalado systemd).

Aquí podéis ver el código completo de pkgsync:


Si queréis descargar el paquete que instala esta versión, podéis hacerlo desde el siguiente link:
https://drive.google.com/open?id=19C_3i9EnM0D4dIqryL0djVD2Qak77dRd
Publicado por primera vez en http://enavas.blogspot.com.es

jueves, 24 de mayo de 2018

Paquete pkgsync 1.51: Añadido argumento r a la opción -t, --test-files para eliminar ficheros que no se encuentran en los repositorios de las listas de pkgsync

He actualizado el paquete pkgsync a la versión 1.51 con una versión modificada del script /usr/local/sbin/pkgsync.

La modificación añade un argumento opcional "r"  a la opción -t, --test-files que nos permitirá eliminar ficheros que no se encuentran en los repositorios de las listas de pkgsync.

Es IMPORTANTE destacar que, si gestionáis los ficheros de listas de paquetes de pkgsync mediante puppet, tendréis que reemplazar las versiones del servidor puppet con las locales que habéis limpiado tras realizar un:
# pkgsync -tr
Aquí podéis ver el código completo de pkgsync:


Si queréis descargar el paquete que instala esta versión, podéis hacerlo desde el siguiente link:
https://drive.google.com/open?id=1YFiZG98Ksc_7TvGaENBe1JURN13CHJRv
Publicado por primera vez en http://enavas.blogspot.com.es

miércoles, 23 de mayo de 2018

El shell de linux: Mostrar el valor absoluto de una variable

En ocasiones, cuando realizamos cálculos, como por ejemplo, una diferencia entre dos fechas, nos interesa obtener el valor absoluto de una variable. 

Como obtener el valor absoluto de una variable, al fin y al cabo es quitarle el signo, la forma más sencilla de hacer ésto en el shell es manipulando strings:
${variable#-}
De esta manera, estaremos quitando el signo - si la variable lo tiene.

Ejemplos:
$ diferencia='-24'
$ echo ${diferencia#-}
$ 24
$
$ diferencia='24'
$ echo ${diferencia#-}
$ 24
Así de sencillo.
Publicado por primera vez en http://enavas.blogspot.com.es

Paquete linex-ubuntu-puppet 2.24: Modificada la presentación de mensajes en sinc_puppet

He modificado el script sinc_puppet en el paquete linex-ubuntu-puppet_2.24 para mostrar el tiempo entre sincronizaciones de puppet en minutos cuando el tiempo transcurrido entre una sincronización y otra es inferior a una hora.

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

Paquete pkgsync 1.50: Resuelto bug para vaciar el fichero musthave.orphan cuando no hay paquetes huérfanos

He publicado una nueva versión del paquete pkgsync actualizándolo a la versión 1.50 para resolver un bug: No se vaciaba el fichero /etc/pkgsync/musthave.orphan cuando no existían ficheros huérfanos.

Aquí podéis ver el código completo de pkgsync:


Si queréis descargar el paquete que instala esta versión, podéis hacerlo desde el siguiente link:
https://drive.google.com/open?id=1HBWoATwtsQCG2fttvtJE-ge4XAd1-eJs
Publicado por primera vez en http://enavas.blogspot.com.es

Paquete linex-ubuntu-puppet 2.21: Modificado el procedimiento de bloqueo de sinc_puppet para evitar la ejecución simultánea de múltiples instancias

He modificado el procedimiento de bloqueo del script sinc_puppet en el paquete linex-ubuntu-puppet_2.21 que evita la ejecución simultánea de múltiples instancias.

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

Paquete pkgsync 1.49: Modificado pkgsync para evitar la ejecución simultánea de múltiples instancias

He realizado una nueva actualización en el paquete pkgsync actualizándolo a la versión 1.49 con una versión modificada del script /usr/local/sbin/pkgsync.

La modificación evita la ejecución simultánea de múltiples instancias de pkgsync.

Aquí podéis ver el código completo de pkgsync:


Si queréis descargar el paquete que instala esta versión, podéis hacerlo desde el siguiente link:
https://drive.google.com/open?id=10LxaT2VG1G_2S26In314ikaE4ukRARKY
Publicado por primera vez en http://enavas.blogspot.com.es

martes, 22 de mayo de 2018

Paquete pkgsync 1.48: Añadido argumento w a la opción -R, --reboot para iniciar windows al reiniciar el equipo

He actualizado el paquete pkgsync a la versión 1.48 con una versión modificada del script /usr/local/sbin/pkgsync.

La modificación añade un argumento opcional "w"  a la opción -R, --reboot que nos permitirá reiniciar directamente en Windows al realizar terminar pkgsync. Este argumento es válido para equipos con EFI como los HP Prodesk de Infolab y SIATIC.

Aquí podéis ver el código completo de pkgsync:


Si queréis descargar el paquete que instala esta versión, podéis hacerlo desde el siguiente link:
https://drive.google.com/open?id=1nNzsbZUgxsNNiMn2dq61pQc6r0cXQkeF
Publicado por primera vez en http://enavas.blogspot.com.es

lunes, 21 de mayo de 2018

refindbooting: Script para establecer rEFInd como gestor de arranque por defecto

Como ya he comentado en otras ocasiones, tanto en equipos SIATIC como INFOLAB, mantengo un sistema de arranque dual implementado mediante rEFInd

En un post anterior, os mostré un script para establecer un arranque temporal de Windows para el próximo inicio. En este post, os voy a enseñar otro que utilizo para establecer rEFInd como gestor de arranque por defecto haciendo uso de efibootmgr:
#!/bin/bash
#
# refindbooting - Establece un arranque temporal de Windows para el próximo inicio
# 2018 Esteban M. Navas Martín .
#

# Disco que contiene EFI
disk=/dev/sda

# Creamos una entrada específica para rEFInd, si no está creada
efibootmgr | grep "rEFInd Boot Manager" 2>&1 > /dev/null || efibootmgr -c -d $disk -p $(gdisk -l $disk | grep "EFI system partition" | awk '{print $1}') -L "rEFInd Boot Manager" -l "\EFI\refind\refind_x64.efi"

# Establecemos un arranque temporal de rEFInd
efibootmgr -n $(efibootmgr | grep "rEFInd Boot Manager" | sed -ne 's/[^0-9A-F]*\(\([0-9A-F]\)\{4\}\).*/\1/p')

# Obtenemos el orden de arranque actual
bootorder=$(efibootmgr | sed -n 's|^BootOrder: \(.*\)|\1|p')

# Restauramos el bootorder
efibootmgr -o $bootorder
Básicamente, lo que hace es:
  1. Crear una entrada específica para iniciar rEFInd, si no se encontraba creada aún. Asumimos que ya se encuentra instalado.
  2. Establecemos un arranque temporal de rEFInd.
  3. Como la opción establecida para el Next Boot será rEFInd, guardamos el bootorder.
  4. Establecemos el boot order actual en el que se ha colocado rEFInd como primera opción de arranque.
De este modo, cuando ejecutemos el script refindbooting desde Ubuntu, se realizarán los cambios para establecer rEFInd como primera opción de arranque.

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