"Después del juego es antes del juego"
Sepp Herberger

miércoles, 21 de octubre de 2020

Cuelgues en el arranque de Google Chrome

Por algún motivo desconocido nos sucede que el Google Chrome se queda a veces colgado en el arranque sin abrirse y aunque matemos todos los procesos "chrome" y empecemos de nuevo, vuelve a suceder una y otra vez.

Las sospechas se dirigen a un cierre abrupto de la sesión con Chrome abierto que ha dejado algo corrupto en su configuración o archivos temporales. También podría tener que ver que nuestros usuarios muchas veces inician sesión en distintas máquinas con un mismo home (ya que este reside en el servidor NFS) y eso provoca que compartan la configuración varias versiones de Chrome. Esta sospecha está sostenida en este problema se da más en unos usuarios que en otros.

Sabemos que hay algo mal en el perfil del usuario, pero no hemos encontrado que es. No nos queda otra que tirar de brocha gorda y borrar toda la configuración, haciendo antes backup de los marcadores pero eliminando todo lo demás. El script base es cortesía de mi compañero Julio, que es el que se ha currado el trabajo:
# cat cleanChrome.sh
#!/bin/bash
killall -9 chrome
cp  $HOME/.config/google-chrome/Default/Bookmarks /tmp/Bookmarks
rm -Rf $HOME/.cache/google-chrome
rm -Rf $HOME/.config/google-chrome
mkdir -p $HOME/.config/google-chrome/Default
cp -f /tmp/Bookmarks $HOME/.config/google-chrome/Default/Bookmarks
zenity --width 350 --info --text "Finalizado. Borrada configuración del google-chrome. Ahora puedes abrirlo."
exit 0
Con poner este script en todas las máquinas y un fichero .desktop que lo lance en el escritorio de los usuarios, tendremos una vía de salida para cuando el problema se presente, al menos mientras no encontremos una solución mas quirúrgica para eliminar aquello que provoca el cuelgue.


Hace unas horas la mision OSIRIS-REx le ha dado un piquito al asteroide Bennu y pronto estará de vuelta con las muestras: No es la primera vez que pasa esto, pero cualquier aterrizaje en un cuerpo alienígina es una proeza a tener en cuenta. Esperemos que entre las muestras no venga protomolécula.

viernes, 16 de octubre de 2020

De donde no hay no se puede sacar.

Un problema recurrente que tenemos es que algunos usuarios siguen intentado que hagamos funcionar equipos muy obsoletos con la web moderna. Por hacer una prueba real y escribir este post he cogido un portátil MSI L1350D de los que nos llegaron en 2010. Le he metido un Windows XP Home, que es un sistema operativo de 2001 que me garantiza que por si solo no va a asfixiar el ordenador. He actualizado además el XP y todos su drivers a la última versión.

Es decir vamos usar un sistema operativo de hace 19 años en un hardware de hace 10 años (que por tanto puede moverlo de sobra) para visitar la web que se usa actualmente en los centros educativos. A ver que pasa.
El ordenador tiene una CPU Intel Atom N455 (un único núcleo) con 2GB de RAM. Como vemos con el sistema recién cargado todo es bastante ligerito. Abrimos el navegador Firefox 52.9.0 ESR (el último que se publicó para Windows XP 32bits, en 2017). He probado con otros navegadores y todos dan problemas de uno u otro tipo.
Vemos que la carga de CPU está también contenida y hay memoria de sobra. Vamos a abrir el gmail, que es una de las herramientas mas usadas. Vemos que la cosa se desmadra:
Ćomo se ve, lo que sufre es la CPU. La memoria se mantiene bastante libre. Si abrimos Google Docs de nuevo se ven los picos de CPU:
Resumiendo: cualquier operación sobre aplicaciones Google (Correo, Docs, Classroom,... vamos, lo mas usado a día de hoy en los centros) con el navegador lleva la CPU por encima del 90% (con Meet no he probado porque ni siquiera es compatible con navegadores tan antiguos). El sistema no parece necesitar mas memoria para esto y no creo que el disco duro tampoco haga de cuello de botella. Es el procesador de hace 10 años el que no puede con Firefox en una web actual. Es curioso comprobar que teniendo la CPU al 90%, si ejecutamos Paint este se abre a toda velocidad mientras el navegador se asfixia. Evidentemente, no hay posibilidad de aumentar la potencia de esa CPU ni añadir núcleos.

Todo esto está probado con el navegador Firefox 52. Por ver si con un navegador más antiguo pudiera funcionar, he probado con el Firefox 30 (año 2014), pero Gmail directamente me dice que no es compatible. Con el Firefox 40 (año 2015) se abre Gmail pero en modo Vista Básica HTML, avisando de que actualice el navegador. Con este Firefox 40 podemos entrar en Google Drive, pero el uso de CPU está siempre entre 50% y 100%.

Conclusión: no hay manera humana de corregir eso. Cualquier móvil de gama baja tiene mas núcleos y velocidad de CPU que nuestro Atom. No tiene sentido que nos pidan una y otra vez cada año acelerar estas máquinas. Y aún asi las muy puñeteras siguen funcionando sin fallo, dando la impresión de que siguen operativas para un uso normal, desde luego han salido buenas.


Ayer un usuario de Reddit publicó una linda foto de la ISS en tránsito con la Luna en cuarto creciente:
Me acordé de esta otra, de un tránsito con Marte al fondo:
Y esta otra del 2009, con el transbordador Discovery acoplado a ella:
Podemos decir que están borrosas, pero es que están tomadas desde la Tierra, con ópticas modestas y por aficionados con un pulso de cirujano en un breve tiempo, ya que la IIS cruza el cielo de Este a Oeste en unos 5 minutos. Vamos, que no es un objeto precisamente estático. De ahi la proeza y la belleza de las imágenes.

jueves, 15 de octubre de 2020

Subir el volumen de archivos de vídeo

De vez en cuando me vienen con que una película tiene un volumen muy bajo y aunque se pongan todos los controles y mandos de volumen al máximo siguen sin oirse bien. El VLC tiene una funcionalidad escondida para aumentar el volumen más de lo normal, pero no confío mucho en que los usuarios lo apliquen.

La solución ideal es procesar la pelicula con ffmpeg para aumentar el volumen. El comando sería el siguiente:
#  ffmpeg -i Pelicula.mkv -af volume=4.000000 -vcodec copy Pelicula-Volumen-Alto.mkv
Lo que hacemos es aplicar un filtro que multiplique por 4 el volumen de archivo de vídeo. Luego borramos el archivo original y renombramos el recien creado. x4 es un buen valor, pero podemos subir más si no es suficiente, aunque nunca debemos perder de vista la posibilidad de que el audio se distorsione con tanta subida.

miércoles, 14 de octubre de 2020

Apagado de las redes wifi en puntos DLink con DD-WRT

Con la nueva red "educarex" de escuelas conectadas ya no necesitamos los antiguos puntos wifi DLink DIR-860L. Si los dejamos encendidos saturan el espacio radioeléctrico y ralentizan previsiblemente nuestra red.

Para evitar esto es conveniente apagar sus dos tarjetas de red, la de la red normal de 2.4Ghz y la de la red 5Ghz (no confundir con el 5G del coronavirus y el chís que nos quieren meter con la vacuna). Desde el interface web podemos apagarlas, pero no sé por que motivo a veces se encienden de nuevo y me encuentro que están emitiendo. Así que lo mejor es apagarlas por comandos, entrando por ssh al punto wifi y tecleando:
# nvram set rc_startup="ifconfig ra0 down; ifconfig ba0 down"
# nvram set cron_enable=1
# nvram set cron_jobs="00 * * * *    root   ifconfig ba0 down
00 * * * *    root   ifconfig ra0 down"
# nvram commit
Lo que hacemos es:
  • Apagar ra0 y ba0 (las 2 tarjetas de red) en cada reinicio del sistema.
  • Apagar ra0 y ba0 a cada hora en punto usando un crontab.
Creo que de esta manera lo tenemos todo apagado y si se levanta...caerá en una hora. Habrá que hacer algo útil con todos estos puntos Dlink sin uso cuando los retiremos definitivamente. Lo primero meter un OpenWRT.
El pasado septiembre la Starship SN6 hizo su segundo salto, esta vez de 150 metros de altura:



Que tiempos aquellos en que los inconscientes se reian de ese deposito de agua cilíndrico que explotaba en las pruebas de estrés de presión. Esa maravilla ha ascendido y bajado con un único motor Raptor desviado del eje de simetría de la nave (vamos, "torcido"). El software que controla ese motor para mantener el cohete en equilibrio debe ser bestial.

Configuración de red wifi educarex en sistemas Windows

Bueno, bueno, que paradón. Esta pandemia nos tiene paralizados con tanto trabajo..

Con el programa Escuelas Conectadas nos han instalado una red wifi decente en los centros educativos. Existe un SSID común llamado "educarex" al que se conectan los dispositivos. Los equipos propiedad de los centros que funcionan con Linux se configuran de forma automática mediante una tarea puppet que crea la conexión en el NetworkManager.

Para los equipos con Windows hay que crear la conexión a mano según el manual que nos han distribuido, lo que incluye instalar además un el plugin para PEAP-GTC, que es el sistema de autenticación que usa la red wifi. En Linux, Android y OSX viene de serie, pero en sistemas operativos primitivos como Windows hay que instalarlo.

Aprovecharemos también para instalar un cliente OCS-NG-Windows-Agent-Setup.exe, ya que llevamos un tiempo poniendo OCS Inventory en todas las máquinas del centro para tener un inventario actualizado.

Bueno, pues al hacer la conexión a educarex según el manual facilitado vemos que son un montón de tediosos pasos y decimos...¿todo esto voy a tener que repetirlo para cada Windows? Pues no. De eso va esta entrada del blog. Una vez hemos creado y comprobado que la conexión funciona en una máquina con Windows podemos exportarla a un fichero XML que luego restauraremos en los demás Windows desde un script. Rápido y a prueba de fallos.

El fichero XML se crea desde la consola de Windows con siguiente comando que lo coloca en la carpeta "mia":
netsh WLAN export profile name="educarex" key=clear folder="mia"
Luego ponemos en un pendrive el fichero anterior (renombrado a educarex.xml) junto con EAP-GTC-x64.msi y OCS-NG-Windows-Agent-Setup.exe, descargados de Internet. Creamos el script configura-educarex-windows.bat (mirar al final del artículo varios comentarios que hago sobre el script):
@echo off
echo Instalando software....
echo "Cambiando dominio a vguadalupe"
powershell Add-Computer -WorkGroupName "vguadalupe"
echo "OCS Inventory"
OCS-NG-Windows-Agent-Setup.exe /server="http://puppet3.educarex.es/ocsinventory" /nosoftware /tag="Windows" /now /ssl=0 /S /NOW
rem "C:\Program Files\OCS Inventory Agent>OCSInventory.exe" /force
echo "Driver Wifi"
EAP-GTC-x64.msi /quiet /norestart
echo Creando conexion "educarex"...
Netsh WLAN add profile filename="educarex.xml"
echo Terminado. Ya puede conectarse a "educarex" con las credenciales que desee.
pause
Todo junto en el pendrive queda:
configura-educarex-windows.bat
EAP-GTC-x64.msi
educarex.xml
OCS-NG-Windows-Agent-Setup.exe
Y ya está: al ejecutarlo se siguen todos los pasos y al final tenemos OCS Inventory instalado y sincronizado y, por otro lado, la conexión "educarex" lista para solo meter las credenciales (usuario/contraseña) de configuración.

Comentarios:
  • El comando powershell Add-Computer -WorkGroupName "dominio" es para poner el dominio de nuestro centro de forma adecuada en el Windows, ya que si no OCS Inventory no clasificará correctamente los datos de nuestro centro. Que cada cual ponga el suyo para no interferir con otros centros.
  • El /server="http://puppet3.educarex.es/ocsinventory" es el servidor de OCS Inventory de la red educativa. Lo especificamos como parámetro para que la instalación sea sin preguntar nada.
  • El comando EAP-GTC-x64.msi /quiet /norestart instala el plugin EAP-GTC de forma silenciosa y sin reiniciar.
  • El comando Netsh WLAN add profile filename="educarex.xml" importa la configuración sin que tengamos que hacer nosotros los pasos uno a uno. En las pruebas que he realizado los ficheros XML no parecen compatibles entre versiones de Windows (es decir, el XML de un Windows 7 n se puede importar en un 10).

Una vez acabado ya solo falta pinchar para conectarse a la red wifi educarex. Nos pedirá las credenciales y estas quedarán guardadas de forma permanente en el perfil del usuario de Windows que haya realizado la conexión.
Pedazo selfie:
La sonda china Tianwen 1 rumbo a Marte y en el camino se ha hecho un retrato con su gran angular. Afortunadamente, sigue habiendo países que apuestan por la ciencia.