sábado, 28 de julio de 2018

Fedora 28. Problemas asociados a sudo (o no?) y otras menudencias

Como ya habíamos mencionado en la entrada anterior, Fedora 28 Workstation Live instala un Linux sin usuario administrador. Eso solo me ha pasado con uno de mis ordenadores, al que cambié el SSD del sistema por necesidades de espacio —esta es otra historia que si tenemos tiempo contaremos algún día— y lo instalé de nuevo desde un Fedora 28 Live. Lo primero que hice tras la sorpresa fue crear un usuario root desde sudo. Sin embargo, esta situación genera un problema; todo lo que realizábamos como root ahora tiene que hacerse desde sudo (configurar cortafuegos, llamar a aplicaciones de sistema...). Pero además me encontré con dos problemas nuevos:
1. Amule tomaba el control de sistema hasta su congelación completa. Este problema se soluciona poniendo emule por wine (véase aquí), pero solo fue necesario una semana, por que era un "bug" de amule que ya ha sido controlado en su última actualización. Pero este era el menor de los problemas...
2. Este segundo problema era doble. Si lanzaba nautilus (ahora denominado "Gnome Files" o Gnome Archivos) tardaba horas en aparecer de forma gráfica, lo que me obligó a instalar Thunar para poder trabajar de forma gráfica. Curiosamente, si lo lanzaba desde root aparecía inmediatamente, pero no debemos trabajar como administrador con nautilus. Pero aún hay más; tanto con nautilus (al día siguiente de haberlo lanzado) o con thunar, al copiar cualquier bloque mayor de 1 GB, cuando llevaba unos segundos copiando, se congelaba el sistema de manera completa, sin respuesta a Alt+F2, Ctrl+Alt+Fx ni a las teclas mágicas REISUB, lo que obligaba a reiniciarlo por las "malas" (y la pérdida de ficheros de los discos duros que se estaban copiando en ese momento). Este segundo problema me ha tenido preocupado hasta esta semana, por que en pleno fin de curso el trabajo aprieta y no podemos arriesgarnos a que una instalación no salga a la primera. Esta situación se ha encontrado en muy pocas ocasiones con diferentes causas:
- Tarjetas Nvidia. No es el caso, por que este ordenador lleva un i7 3770 con HD4000 integrada y nunca he tenido problemas gráficos.
- Errores asociados a Nautilus (véase bug 1208993 o bug 1133477). Parece que nautilus llena la memoria del sistema antes de enviarlo a la copia física al dispositivo destino y el sistema se congela. En algunos de estos casos recomiendan controlar el máximo de memoria que puede ocupar estas "dirty pages" en /etc/sysctl.d/90-override.conf (o el fichero de configuración inicial que use cada uno) mediante
vm.dirty_background_ratio = 5 # Memoria total que se puede llenar hasta copiar en el dispositivo destino
vm.dirty_ratio = 10 # Memoria total que se puede llenar con las "páginas sucias"
En mi caso he intentado superar el problema dando diferentes valores (5-10, 10-20, 20-40... a esta configuración sin resultado (si se quiere mirar algo más sobre esto, mirar aquí).
Ahora que he podido reinstalar el sistema de nuevo, en este caso desde el formato netinst, con root como siempre y sin abrir sudo a nadie, todo funciona correctamente.

Como todo lo demás es igual, ¿quién era el culpable? Así que no nos interesa sudo. Si fuera así instalaríamos Ubuntu, y no es el caso.



viernes, 27 de julio de 2018

Y aquí tenemos a sudo, sin haberlo pedido

Así es; en Fedora 28 Workstation tenemos sudo sí o sí. En Fedora magazine tenemos la noticia. La cosa queda más o menos en "In the end they opted for just always skipping the user and root configuration screens in Anaconda and just configuring a user with sudo rights in Gnome Initial Setup."
Es decir, cuando instalamos de manera limpia la version Fedora 28 Workstation Live no aparece la indicación de palabra de administrador; además, el usuario se configura después. En resumen, vivimos en el mundo de sudo, ni blanco ni negro, gris. Desde mi punto de vista:
1. ¿Para que quiero sudo si puedo ejecutar como administrador lo que necesito?
2. ¿Desde cuando un usuario puede pensar que puede hacerlo todo? De ahí a acabar como Windows diciendo Sí a cualquier tontería falta un paso muy pequeño.
3. ¿Y si sudo trae errores de seguridad en su código? Otro posible agujero de seguridad.
Y lo peor de todo es que si lo instalamos así no existe administrador. Después de años de ejecutar bajo el paraguas del administrador toda modificación del sistema, ahora lo tiene que hacer todo el usuario. Ejemplo, de repente me veo configurando el cortafuegos como usuario; me entró una angustia existencial...
No, no me gusta; lo evitaré todo lo que pueda.


Estoy seguro que con sudo el sandwich es de brocoli.

Mientras tanto, instalación desde formato netinst, con administrador incluido. Además, en mi caso sudo es el principal sospechoso de problemas mucho más importantes. Lo veremos en una próxima entrada.

viernes, 20 de julio de 2018

Linux, ¿amule o emule en WINE?

Sí, si hacemos intercambio de pares, ¿qué instalamos, amule o emule? Ciertamente lo más sencillo es instalar amule; simplemente:

su -c 'dnf install amule'

y listo, siempre que hayamos activado el repositorio RPM Fusion Free. Sin embargo los últimos días del mes de junio a a principios de julio la versión disponible de amule generaba un consumo de memoria y CPU que acababa colapsando el sistema, al menos en Fedora, que era mi caso (la actualización ya disponible ha corregido ese problema). Ademas, amule, al menos en mi caso, tiene otros problemas; en general si tiene actividad de descarga se cuelga en cualquier momento y hay que reiniciarla. Esto requiere para un funcionamiento adecuado que lancemos amule desde un script que se ocupe de detectar la caída de amule y lo vuelva a llamar (véase aquí). Por estas razones decidí probar el funcionamiento de emule. Por supuesto necesitamos tener instalado WINE y podemos directamente a través de él instalar la versión exe de emule (descarga aquí). No se necesita nada más y los ficheros de configuración y almacén son compatibles entre amule y emule (simplemente moverlos entre directorios). En el caso de que no estéis muy a gusto con uno, se puede usar el otro sin problemas.
Y como muestra un botón: